How Does An Upgrading System Work

I recently just made a shop system similar to Ninja Legends. I now want to try to make an upgrading system. The player can use a currency to upgrade so they have a coin multiplier and that multiplier increases when the player upgrades. I’m having a hard time understanding how this would work. Could someone please help break it down so I can understand.

3 Likes

Just increase a number value located inside the tool or something, then save it

Not sure how your player stats are stored but having money multiplier stored along with it would help.

I’d imagine you’d want to have the multiplier called whenever you increase stat like:

money = money + moneyGained * multiplier

You can treat the multiplier like any other player stat

You could save the coin multiplier as an IntValue in datastore.

And just make it so whenever they go save make it so

Money = Money + MoneyGained * Player.Stats.IntValue (The multiplier) one

I understand that but I’m having a hard time understanding how the buying process would work. Do you recommend making it like the upgrade shop in Ninja Legends or after every time the player upgrades I just still use the same gui but the text changes.

How about the buying process, how should I do that? Should I make it like ninja legends where you can see all the upgrades or so you can see only the upgrade you can get.

Every time a user purchases an upgrade, an IntValue inside the player would increase. For example, assuming that you’ve already created this IntValue inside the player you would just take that IntValue and multiply it by the money gained.

Example:

--  Player purchases coin multiplier so you would just increase the player's multiplier by however many you want
-- If a player doesn't own any upgrades for multipliers the value of the IntValue would be 1

Multiplier.Value = Multiplier.Value + 1 -- This number is whatever you want the multiplier to be increased by.

-- if the player gets a coin you would take the player's current money plus the coins received times the multiplier
-- The Players money would also be an IntValue too
-- Lets also pretend the value of the coin is 10

local Coin = 10

PlayersMoney.Value = PlayersMoney.Value + Coin * Multiplier -- All we did was take the integer of the current player's money and then add it with the amount received multiplied by the multiplier.  This would happen every time a player received coins. 

When would I increase the Multiplier?

You do this whenever the player purchases either a Multiplier Game Pass A one time purchase or a Multiplier Developer Product Purchasable multiple times.

If you’d wanna make it a Game Pass, here is some useful information:

If you’d wanna make a Developer Product her is some useful information:

I hope this helped you @Play_MazeOfHeck and I think your Shop system will do well.

2 Likes