Cataclysm-dda: [CR]Armor balancing formula

Created on 13 Mar 2017  路  9Comments  路  Source: CleverRaven/Cataclysm-DDA

https://github.com/CleverRaven/Cataclysm-DDA/wiki/Armor-balance

  • Is the coverage scaling good enough? Are there edge cases?
  • Is average of bash/cut good enough? Should it be weighted more towards bashing or be more complex than just average?

Some of the items do not fit anything. For example, leather chaps are bad by numbers, but they use the OVER slot, which can only be covered by duster (and dusters are rather bad for other slots).

Regardless of small number tweaks, it is pretty clear that there are many outliers:

  • MBR with anything but superalloy is generally worse than empty MBR. It's better to stack 2 empty MBRs than to fill one with non-alloy plates
  • SWAT "armor" is not even mediocre, it is outclassed by stacked sweaters (sweaters are pretty good armor, though)
  • Paper and wooden limb guards are in the same tier as clown suit
  • RM13 and power armor are both easy mode. Not "costly but effective", just easy mode.
  • Some trenchcoats have different values from dusters. A reason to use "copy-from" where possible.
<Suggestion / Discussion> Balance

Most helpful comment

"modern armorers couldn't come up with something better than plate?"

Not really, swat armor irl would be pretty crummy at protecting you from blades. Its main goal is protection from firearms.

All 9 comments

(sweaters are pretty good armor, though)

This is particularly strange.

I suspect that, as when I attempted to devise a formula in an earlier pull request, edge cases are unavoidable with any calculation that takes encumbrance into account.

The closest to an edge-case-proof formula possible will only consider protection and coverage, but that still only gives slightly more information than protection alone gives us.

(sweaters are pretty good armor, though)

This is particularly strange.

It is rather hard to chew wool.

Glad to see this is being worked. Found a manor with suits of plate armor and I was amazed by how that armor was better than just about anything. A bit later in my adventures, I found a SWAT truck with SWAT armor and my thought was "modern armorers couldn't come up with something better than plate?"

"modern armorers couldn't come up with something better than plate?"

Not really, swat armor irl would be pretty crummy at protecting you from blades. Its main goal is protection from firearms.

Even then it has rather inferior protection against firearms in-game, if I recall. At least compared to the MBR vests with SAPI plates installed.

Which is realistic, a proper plate carrier is a lot tougher overall than riot gear (which can be soft ballistic protection, but is more often meant to protection against blunt trauma). They are also a lot better against blades, assuming someone hit the plates instead of stabbing into just the kevlar. A sword is already going to have a difficult time stabbing through plate armor, steel trauma plates are considerably thicker.

Throwing my (potentially late) two cents in here:

  • It seems like the protection value should be (log(bash) + log(cut)) / 2 or some other sub-linear formula - the difference between 5 and 10 protection is much more than the difference between 50 and 55, simply because threats that can get through 50 armor can probably also get through 55 armor and are rare in any case.
  • Similarly, I'd be tempted to make encumbrance scaling super-linear. An armor with 30 fitted encumbrance, especially over the torso and/or limbs, seems much less useful than it's protection values might suggest (see: The heavy power armor when inactive)

Along those lines, I'd be tempted to establish certain pieces of reference armor and tweak the formulas until the reference armors fell into the desired ranges - That wouldn't give you anything on 'how good are the armors' but it would give you a solid basis for comparison and future modifications.

It seems like the protection value should be (log(bash) + log(cut)) / 2 or some other sub-linear formula

The problem is the exact formula.
The curve should not start flattening until ~10 armor and then should still reward increases.
Something like max( 10, 10 * sqrt( armor / 10 ) ), but less flat.

Similarly, I'd be tempted to make encumbrance scaling super-linear. An armor with 30 fitted encumbrance, especially over the torso and/or limbs, seems much less useful than it's protection values might suggest (see: The heavy power armor when inactive)

Power armor grants immunity to physical damage. At this point the simple formula can't go higher - we need to introduce acid/fire damage for heavy power armor to stop being an instant win button. As long as the formula only considers physical, heavy armor should be rated as high as it is.

It looks like just not rewarding overkill armor would be enough to kill the encumbering armors' scores.

Dead discussion issue.
This is why we discourage discussion issues.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Maplevalley47 picture Maplevalley47  路  46Comments

Coolthulhu picture Coolthulhu  路  51Comments

Firestorm01X2 picture Firestorm01X2  路  59Comments

nexusmrsep picture nexusmrsep  路  64Comments

Poragon picture Poragon  路  54Comments