Skip to main content
2 of 2
added 188 characters in body
Philipp
  • 123.2k
  • 28
  • 264
  • 345

Don't have the damage reduction be additive, have it multiplicative.

Damage = Damage * (1.0 - helmetReduction) * (1.0 - gloveReduction) * (1.0 - trousersReduction) * (1.0 - upperArmorReduction) 

Each layer of armor reduces not the complete damage, but the damage remaining from the previous layer. As long as no single layer reaches 1.0, you will always have a bit of rest damage. You can also scale this system upwards and add additional armor slots later without breaking anything.

Philipp
  • 123.2k
  • 28
  • 264
  • 345