Defensive statistic mechanics

There are many systems where attack statistics are opposed by defense statistics:

• Strict: HP -= (damage - defense)
• Threshold: HP -= (damage>defense? damage : 0)
• Reciprocal: HP -= (damage / defense)

Just to name a few, and there are variations on those as well:

• Reciprocal threshold: HP -= damage>defense ? (damage/defense) : 0

Note that this is by no means an exhaustive list, since many games use multiple stats to arrive at a final "defensive" result (agility, current speed, movement relative to attacker, flanking) that's applied to any potential damage.

What drives the selection of one relationship over another?

• Actually, I dont think ANY of those are widely used. The most common formula is HP -= damage * defense[%]. That is most straight forward and easily understandable. (it give you much more room in mapping defense->defense[%] as you can implement diminishing-returns to prevent unnatural overstacking) – wondra Jul 23 '14 at 21:58
• That's the reciprocal system. damage*(N/100) == damage*(1/defense) == damage/defense – jzx Jul 23 '14 at 22:01
• Yes, with added function mapping defence[points] to defence[%] it gives additional depth as mentioned above. Can Prevent overstacking of one stat and thus breaking the game. (Imagine character with all points in armor, taking 0 damage - or 0,0000001 in reciprocal ) – wondra Jul 23 '14 at 22:16
• I'm pretty sure all of those variations are widely used. At least in the realm of RPGs. Knights of the Old Republic used both of the first two options. Fallout 1, 2, Tactics, and New Vegas used the latter two options, while Fallout 3 only used "reciprocal" – Attackfarm Jul 24 '14 at 0:05

Strict has the advantage of being easy to understand, every player can easy calculate how much damage his attack will do. Be warned through that this creates a situation in where the higher someone's defense the more they gain from a higher defense level (if you have 0 defense the other attack with 100 and you have 1000 hit points it takes 10 hits to take you down, if you have 50 defense it will take 20 hits and if you have 100 def it takes infinte hits).

A minimal damage threshold will avert the "death of a thousend cuts" where many small attack slowly wither kill of a very powerfull entity, this thus prevents zerg rush like strategies.

Reciprocal will ensure that more defense will always make you stronger, if only because you are dividing by a larger number. It also ensures more or less linair scaling in your defense and it's payoff.

There is also a percentage based system where each point of defense is fed into a formula of the type 1-C^[defense] which will give you a number between 0 and 1 that can be used for damage reduction in percentage after which the damage is simply the multiplication of attack and that percentage hp-=(damage*(1-C^defense)) where C is a value between 0 and 1, which gives some really smooth damage reduction formula's but can be very hard to understand for players. This formula has slight dimishing returns for higher defense levels.

So what you need to do is decide whatever you are OK with complex formula's that most players will not understand or not. Then you need to decide whatever your sytem favours single strong players or a group, and whatever you want diminishing returns, linair returns or actual exponential returns.

• Just to elaborate on this, think that different defense systems make for different strategies. In strict, usually is better to use high damage attacks, while in reciprocal is may be better to have faster, although weaker attacks. Ultimately the decision of what works best is up to the game genre. For RPGs, I would favor a complex system with a combination of these, as it would allow implementing more varied game mechanics. – angarg12 Jul 24 '14 at 5:46

Rather then simply considering the mathematical differences among these formulae, I believe the genre of the game itself plays an important role concerning this issue.

Here is something that pops up in my mind: