How to add modifier that will change status value by multiplication.
For example I have a move speed = 100. I add 2 modifiers -50%. I want the result to be 25 = 100 * (1-0.5) * (1- 0.5). But currently if I add 2 percent bonuses -50% the value becomes 0 = 100 * ( 1 + - 0.5 + -0.5).
All percent modifiers are combined before they're applied, so the result you're seeing is the way the system (currently) works.
Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found. If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
I need modifiers that will be combined multiplicatively (with each other and with other modifiers) (they need to be applied as last group).
Example one: Player has debuff (slow) -50% speed; And player is in mud (also -50% speed); A would like player to still be able to move with 25% speed (achieavable with multiplicative modifiers). But with current system player will stuck at place (speed = 0). (this is not desirable).
Eaxample two: Player has 50 base max health; Player has 10 items equiped. Which all adds +100% max health.
current max health = 500 = 50 * (100 + 100 +100 +100 +100 +100 + 100 +100 +100 +100) /100
I need a buff that increases a max health by exactly +50% (independently from already added +X% modifiers)
buffed max health = 500 * 1.5 = 750;
but currently if I add +50% modifier it will give me only a small increase (5% instead of intended 50%).
new base health = 525 = 50 * 1050/100; (worse of all the real increase is not known it depends on already added modifiers)
I do not know how to solve this problems without multiplicative modifiers.
@gamingislove Could you add multiplicative modifiers? (Or how can I solve this problems otherwise?)
One way to solve this is mark desired stat as combined and calculate it by formula. You than can create some several stats called multipliers. And in formula u just multiply stat value by whose multipliers.
But this will need to be dome for each stat you need multiplicative change. And if you need many separate multipliers you will need to create new stat and implement it in formula.
It is still a working solution. But multiplicative modifiers would be easier to use.
Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found. If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
Combined Value is always a good idea I think. For most of my stats I have
Final Stat (Combined Value) = ((BaseStat + StatBonus)*StatMultiplier)/StatPenalty)*GlobalStatMutltiplier
Optionally some stats are also given level bonus + (Level*StatLvlMultiplier)
I also created a custom formula node that lets me easily turn percent multipliers into 0-1 value multipliers so I don't have to divide by 100 all the time.
GlobalStatMutltiplier is also very useful if you want to bump up all the damage, all tone down all the health, etc.
Next update will add a Multiply setting to percent status value bonuses to support this.
Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found. If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
(they need to be applied as last group).
Example one:
Player has debuff (slow) -50% speed;
And player is in mud (also -50% speed);
A would like player to still be able to move with 25% speed (achieavable with multiplicative modifiers).
But with current system player will stuck at place (speed = 0). (this is not desirable).
Eaxample two:
Player has 50 base max health;
Player has 10 items equiped.
Which all adds +100% max health.
current max health = 500 = 50 * (100 + 100 +100 +100 +100 +100 + 100 +100 +100 +100) /100
I need a buff that increases a max health by exactly +50% (independently from already added +X% modifiers)
buffed max health = 500 * 1.5 = 750;
but currently if I add +50% modifier it will give me only a small increase (5% instead of intended 50%).
new base health = 525 = 50 * 1050/100;
(worse of all the real increase is not known it depends on already added modifiers)
I do not know how to solve this problems without multiplicative modifiers.
@gamingislove Could you add multiplicative modifiers?
(Or how can I solve this problems otherwise?)
You than can create some several stats called multipliers.
And in formula u just multiply stat value by whose multipliers.
But this will need to be dome for each stat you need multiplicative change. And if you need many separate multipliers you will need to create new stat and implement it in formula.
It is still a working solution.
But multiplicative modifiers would be easier to use.
If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
For most of my stats I have
Final Stat (Combined Value) = ((BaseStat + StatBonus)*StatMultiplier)/StatPenalty)*GlobalStatMutltiplier
Optionally some stats are also given level bonus + (Level*StatLvlMultiplier)
I also created a custom formula node that lets me easily turn percent multipliers into 0-1 value multipliers so I don't have to divide by 100 all the time.
GlobalStatMutltiplier is also very useful if you want to bump up all the damage, all tone down all the health, etc.
If you're enjoying my products, updates and support, please consider supporting me on patreon.com!