The Mathematics of Damage
Understand why standard MMOs and MOBAs strictly separate multiplicative damage algorithms from asymptotic armor curves.
The DPS Multipliers
If you build a combat game, your core loop usually revolves around (Damage × Speed). However, if you allow players to arbitrarily raise both variables endlessly, your game will suffer exponential power-creep.
To combat this, games introduce Critical Hits. A Critical Hit acts as a separate multiplicative axis. In most engines (like World of Warcraft or League of Legends), the Expected DPS formula is:
Expected DPS = (Base Damage × Attack Speed) × [1 + (Crit Chance × (Crit Multiplier - 1))]
The Asymptotic Armor Curve
Why can't Armor be a flat percentage?
If a Shield gives `10% Damage Reduction`, and a player equips 10 of them, they reach 100% Damage Reduction and become literally invincible, breaking the game engine. To solve this, Warcraft/League use Asymptotic Scaling. The formula is: Constant / (Constant + Armor).
How the Asymptotic Curve works
If the constant is 100:
- 100 Armor = 100 / 200 = 50% Damage taken (50% Mitigation).
- 200 Armor = 100 / 300 = 33% Damage taken (66% Mitigation).
- 500 Armor = 100 / 600 = 16% Damage taken (84% Mitigation).
Armor suffers from deliberate Diminishing Returns. You can stack 10,000 armor, but you will never mathematically reach 100% invincibility, because the curve asymptotically approaches zero.