In the previous post, we described the new stacking system and the problem it solves. Unfortunately, this solution does not eliminate the values that break the balance in the special case of resistance.

Vis Arcana has two types of resistance – physical armor and magic resistance of that type. Armor is subtracted from damage taken, so its value from individual items can be added together, e.g. chainmail with 10 armor and pants with 3, give a total damage reduction of 13. It is quite simple and intuitive system that does not cause any problems. What’s more – armor is not stackable (unless it comes from magic bonuses).

Magic works differently – resistances are percentages, e.g. armor that gives 3% resistance to fire magic will always reduce damage by 3%, regardless of the specific value. This makes the resilience not additive – we could go over 100%, or drop below 0% for a debuff. For this reason, magic resistances are internally represented as sensitivities which are multiplied. Example for 10% chainmail and 3% pants (excluding stacking, for readability):

sensitivity=1-(resistance/100\%)\\ chainmail\ sensitivity=1-(10\%/100\%)=0.9\\ pants\ sensitivity=1-(3\%/100\%)=0.97\\ total\ sensitivity=0.9\cdot0.97=0.873\\ resulting\ damage=damage \cdot 0.873

As you can see, thanks to a simple change, you can easily combine additional resistance bonuses. From a player’s point of view, nothing will change – one will still see resistances in percent, but the game, internally, will act on sensitivities. This system also seems to be quite intuitive – the chainmmail first reduces the damage by 10%, and then the pants by another 3%.

As always – share your opinion on this topic! Do you see any potential problems? Are resistances clearer now?

Leave a Reply