Cataclysm-dda: Dodge vs accuracy balance problems

Created on 5 Aug 2016  路  9Comments  路  Source: CleverRaven/Cataclysm-DDA

Current hit math goes like this:

  • Attacker rolls dice( skill, die_size ) with die_size being 10 in case of monsters and 10 - encumbrance / 10 in case of characters.
  • Defender rolls dice( dodge, 10 )
  • Defender roll is subtracted from attacker's roll
  • If the result is >= 0, it's a hit

On paper it looks fine, but it doesn't take much understanding of probabilistic to notice how heavily is it skewed in favor of the side with an advantage. Having dodge just 1 point above attacker's skill can grant 80% chance to dodge (90% at low levels, drops to 70% near 10).
This formula is very "thresholdy" - as soon as you go just 1 point above defender's dodge, you don't need anything more.

This is one of the reasons for why early manhacks and wasps are so untouchable. And why skeletal dogs can easily chew up a very weak character (who can still beat up regular zeds), but pose no danger to a sub-mediocre one.
And more importantly, why getting ~30 units of pain will drop your combat ability very heavily.

Then there's the dodge_num - a limit of dodges per turn. In vast majority of cases it is just 1. Zui Quan gives 99.
Once exhausted, the dodge chance drops heavily, making non-Zui Quan dodges unreliable, requiring more kiting (which is already rewarded heavily enough).

End result is that you can't rely on dodge and need armor, which limits choice, but need dodge and are highly rewarded for grinding it when facing enemies you can't tank (hulks), which once again limits choice.
From the other end, we've got characters who don't need much skill or ability to move around to hit anything. As a result enemy dodge stops mattering by the middle of early game (except for manhacks).
This in turn produces bland, light-medium armored characters who wear hoodies, survivor/nomad armor with occasional turnout gear lower body pieces, and kite a lot.

It's not a problem that there is a golden middle between unarmored and armored, the problem is that it is pretty strict and doesn't change much.

I'd change the formula to a more linear one. Just rng instead of dice.
Then make extra dodges just cause a 1 penalty to dodge for each one after the first (except when using Zui Quan).

There is also a separate issue of dodging special monster attacks (smash, most notably), which uses a different, rather unforgiving formula.

Balance

Most helpful comment

A more fundamental problem is that dodges are all-or-nothing, if a
sucessful dodge instead downgraded the severity if the attack it would be a
lot more reasonable.

All 9 comments

Yes, please nerf dodge. It makes no sense for coyotes, cougars, krecks or even manhacks to be near immune to melee early game. And it makes end game more boring since high dodge+melee make you an eldritch god instead of just a demigod.

Manhacks and zombie dogs being difficult to hit is fine. Near invulnerability of a late-game player is not.

Manhacks and zombie dogs being difficult to hit is fine.

Difficult is one thing.
The problem is that manhacks can easily dodge 40 hits in a row.
And that zombie dogs are hard to hit early on, but nearly guaranteed hit very shortly after that.

I'm not defending the current algorithm however those examples actually aren't gameplay problems though - zombie dogs are a significant risk for new players and manhacks have to be engaged by other means.

zombie dogs are a significant risk for new players

Only the very new ones. They also make dex penalty unacceptable.

manhacks have to be engaged by other means

Those will be going away as soon as ranged accuracy is fixed. Ranged accuracy against mobile critters is currently in a state just as bad as dodge, if not worse.

Talking of ranged accuracy where are we at with the work on that?

A more fundamental problem is that dodges are all-or-nothing, if a
sucessful dodge instead downgraded the severity if the attack it would be a
lot more reasonable.

I think about dodge algorithm - it may be made as follows:
Attacker rolls dice (skill, die_size) with die_size being 10 in case of monsters and 10 - encumbrance / 10 in case of characters.
Defender rolls dice (dodge, 10)
Defender roll is subtracted from attacker's roll
If the result is> = 5, it's a full hit
If -5 If the result <= - 5 is completely successful dodging, and damage is completely removed
The above figures are approximate and, of course, may be revised

@Prapor95: There are two open PRs affecting dodge: #18351 (changes formula) and #17801. Your best bet would be the first one?

Was this page helpful?
0 / 5 - 0 ratings