Combat Calculator
Damage output, skill damage & damage mitigation
Damage Output
= AtkSpd × AvgHit
= Atk × (1+Ele%) × (1+Type%)
= Atk × (1+SkillEle%) × (1+Type%) × Mult
Damage = BaseAtk × (1 + AtkBonus%) × (1 + ElementDmg%) × (1 + DeliveryType%)
Whichever side has a lower current % is more efficient to stack. Runes give 60% Atk Bonus at max, so prioritize Element/Delivery% early.
Formula details
Attack = BaseAtk × (1 + AtkBonus%)
Auto Hit = Attack × (1 + Element%) × (1 + DeliveryType%)
DPS = AtkSpeed × AutoHit × (1 + CritChance × (CritDmg − 1))
Auto attack only uses its own element (e.g. Sorcerer auto = Fire only).
Skills can use different elements (e.g. Ice Orb uses Cold%).
Delivery type (Melee/Projectile/AoE) is a separate multiplicative layer.
Damage Mitigation
Physical — Armor
Armor provides diminishing physical damage reduction that scales with stage level. Higher incoming damage partially penetrates armor. Capped at 75%.
Reduction = Armor² / (Armor² + (14×Stage+12) × (Armor + 0.4×Dmg))
Armor Diminishing Returns
Elemental — Resistance
Elemental resistance is linear: 1 point = 1% less damage. Negative resistance increases damage taken. Only capped by "Max Element Resistance" attributes. Does not affect physical damage.
Elemental Damage Taken
Taken = Damage × (1 − (ElementRes + AllEleRes) / 100)
Negative resist → damage amplified
Damage Mitigation Order (full pipeline)
- Dodge & Elemental Dodge — chance to take 0 damage entirely
- Block & Elemental Block — on success, damage is halved
- Resistance — reduces elemental damage by resist%. Negative resist amplifies
- Armor — diminishing physical reduction, scales with stage level
- Damage Reduction — multiplies by (1 − value), separate from armor
- Damage Absorption — flat subtraction after all %
- Floor — minimum 1 damage per hit
Armor Threshold by Stage
Armor needed for 50% physical reduction at each stage. Beyond this threshold, returns diminish sharply — prioritize other defenses.
| Stage | 50% Armor | ~75% Cap | Efficiency |
|---|