Currently in CDDA, stealth mechanics are barebone and current zombie behaviors are unintuitive. Methods that new players typically try to use to escape detection, such as skirting around treelines or moving from cover to cover, do not work. Zombies notice you immediately as you enter their sight line. This kind of behavior is unintuitive, as you would typically expect zombies to be slow to react. Another behavior that is extremely intuitive is that you can be 41 tiles from a zombie and never be noticed, but you take one step closer and are guaranteed to be noticed. This proposal introduces zombie awareness mechanics that smooths out the detection curve and implements the below intuitions.
It is intuitive to:
- Expect zombies to be less likely to notice you while far away, and more likely to notice you up close. The closer you are, the more likely, and there is not a hard threshold between not noticing and noticing.
- Think that “if i’m crouching it’s hard for zombies to notice me” or “zombies are attracted to moving things, so if i’m running, they’re more likely to notice me”.
- Be able to skirt around trees and bushes without zombies noticing.
- Walk behind cover and behind bushes (even without crouching) and expect zombies to be less likely to notice you.
- Accidentally walk around a corner and not draw aggro from every single zombie in the intersection (but it would make sense for a couple to see you).
This mechanic will only interact with vision mechanics. No changes will be made to other methods of detection, like scent and sound.
Each turn you are within sight range of a zombie and you are able to be seen, the zombie has a chance to become aware of you, instead of being immediately aware of you.
This chance is influenced by:
- How far away you are from the zombie.
- Whether you are crouched, walking or running.
- Whether you are behind cover.
- Your dexterity.
- Items (clothing, tools, etc)
The chance for a zombie to notice you, given distance away from zombie:
1 - (Distance / (ZombieViewDistance / Modifiers))^2
Modifiers = Stance Modifier * Cover Modifier * Misc Modifiers
Here’s what the formula looks like, chance of detection vs distance away from zombie.
The abstract of the formula is the farther you are from the zombie, the less likely for the zombie to notice you, in a negative parabolic curve, starting at 100% chance to notice next to the zombie, dropping off slowly, then quickly as it approaches the edge of zombie distance, where it is 0%. I’ve tried out a couple of different formulas, I think that this is the simplest and most intuitive one. Please feel free to offer a better formula.
Why a parabolic curve and not linear?
This is to ensure that when you are near the zombie, it should be nearly impossible for zombies to not notice you after a turn or two.
Initial value is 1, and is stacked multiplicatively with different modifiers.
Modifiers affect the distance that the zombie stops being able to see you. Intuitively, you can think of it as a multiplier to the zombie vision range (it’s not actually). For example, a modifier of 0.5 means that you can be half the distance from the zombie and retain the same chance to escape detection as you were with a modifier of 1. The reverse is true, if your modifier is 2 then it is as if you’re standing at the halfway point between you and the zombie.
When modifier <1, you can be noticed by zombies from further than 40 tiles, but this behavior would make it possible for zombies to see you before you can see them, so any chance beyond 40 tiles is clamped to 0%.
Modifiers stack multiplicatively.
Stance modifier: When crouching: 0.75, when running: 1/0.75. Essentially, crouch walking reduces the distance before you have a chance to be seen by 25%, so 10 tiles.
Cover modifier: When behind cover (not crouched), 1 - coverage%. Example: if you’re standing behind a cover with 75% coverage, it’s as if the zombie can only see a quarter of you so you would not be noticed unless you’re very close (10 tiles in this case).
- Dexterity. Numbers TBD (maybe ± 0.05 per point above or below default?)
- Items. Example: ghillie suits. Note: I’m not going to add new items that interact with this mechanic, however I will add the framework for them (likely just a new tag for items or a new stat).
- Tentative: Modified by a skill (survival? or maybe a new one?).
- Tentative: Modified by encumbrance?
- Tentative: A modifier for standing still?
- Makes the game even easier because zombies will see you much less often than before. I’m already seeing a ton of complaints about this game being too easy. Not a huge problem though, numbers can be tweaked for balance, e.g. zombie vision can be extended to 50 instead or zombie chance to notice you can be increased from the proposed numbers.
- Please suggest more problems.
I will be working on implementing these changes, any feedback for the proposal is welcomed. Specific numbers are not final, I will need to playtest them. Thanks everyone.