Suppose I have two states applied to an actor and both states were applied on the same turn, but one was applied before the other. The first state lowers the actor's magic parameter by 10% (Makes it 90%) and the second state lowers the actor's magic parameter by 40% (Makes it 60%). The actor's parameter would only be lowered by 40% right? It wouldn't lower 40% of 90% of the original value or something weird like that right? Thank you for any responses.
Some context: My current project uses "artificial magic". The idea is that artificial magic comes in the form of "spheres" which contain preconfigured "instructions" for generating a spell and requires an input of the user's MP in order to do so. Story-wise, traditional magic is different from artificial magic in the sense that traditional magic involves skillfully shaping and altering the properties of one's own aether/MP in real time, while artificial magic augments the entire process and preforms the aether conversion with a machine. Artificial magic can be bought extremely early and can be inherently used by every party member of the game, and when you equip a sphere you will have access not only to the spell the sphere contains, but the artificial magic skill type as well. This magic is very convenient, as it would make sense given the story premise of artificial magic. To balance this without straight-up making artificial spells inherently weaker than traditional spells, artificial spells will have a higher MP cost as well as an effect which cuts either the user's magic parameter or max MP parameter by a small percentage with each use of artificial magic. The story explanation would be that there is evidence that sphere-use strains (and possible damages) the bodily nodes that aether flows from, causing them to seal up over the course of a battle. As much as I would love to use a simple stackable states script to do this, the battle system script(s) I am running are not compatible with them. I've found a solution in the form of a Himeworks script that adds states when another one is already applied. The only downside is that there is no apparent means to remove states with this script, so I am trying to figure out how accumulated debuffs are calculated.