-
Notifications
You must be signed in to change notification settings - Fork 6
Vision
Lukep: my proposed system for integrated vision and stealth. It could be expanded to work with darkness/infravision as well by adding penalties for darkness to eyes.
Being able to see an enemy and how much information you can gain from it (aka. Detection) is mainly determined by a function of distance and Sight. A standard eye gives about 10 Sight. Detection is given by this formula, with the following results:
Detection = (Sight * 100) / (distance^2) - ([Stealth - see through stealth], minimum of 0)
Detection, information gained
- 5, basic type, (also terrain such as walls and doors)
- 10, subtype
- 20, monster name, alignment
- 25, HP percent remaining
- 40, HP current and max
- 50, all information, inspect creature.
Note that the alignment knowledge would be gained upon any hostile (or overtly friendly?) action taken, and will "stick" to the NPC/player for some time (forever?)
An example of this in action would be if a player (10 Sight) were to see a monster (0 stealth) at long range and approach it, this would be the information gained:
- Range 14: Humanoid
- Range 10: Humanoid/baseline
- Range 7: Humanoid/baseline "bandit" (Hostile)
- Range 6: Humanoid/baseline "bandit" (Hostile), 100% HP
- Range 5: Humanoid/baseline "bandit" (Hostile), 100% (80/80) HP
- Range 4: Humanoid/baseline "bandit" (Hostile), 100% (80/80) HP, all resistances, talents etc...
From here on in, this result will be shown as (14/10/7/6/5/4) to represent the ranges that the six levels of knowledge are gained at.
Now for stealth. If the bandit was under a 20 stealth cloaking field, the results would be (6/5/5/4/3/3). Note how much less effective stealth becomes the closer together the two characters are, as it reduces the basic detection range by 8 (57%), but only reduced the range of full detection by 1 (25%). This is because (as shown in the formula) stealth is a linear decrease in Detection, while shorter range causes it to increase exponentially. In fact, 996 stealth would be required to avoid detection at 1 range from an opponent with 10 Sight and no See Through Stealth.
Increasing Sight has intrinsically diminishing returns; doubling Sight increases the range by 41.6% (the square root of 2). For example, a character with 20 Sight (vs. 0 stealth) would have results of (20/14/10/8/7/6).
Feel free to comment in line or at the end.
Things that might need to be added: bonuses/penalties for size, darkness modifiers, AI curiosity for unknown alignments, effects of partial cover (eg corners), combat bonuses/penalties, translucent tiles (smoke, frosted glass, etc...) that reduce effective Sight (or add Stealth?) when looking through them. Add maximum detection to eyes, limiting information and ability to see through stealth at close range.
Pros: Scales at the same rate as Precision/hit chance for more consistency. Diminishing returns intrinsic to system. Expandable to include all functionality above. All stats (Sight and See through Stealth) have unique utility.
Cons: Melee range stealth is almost purely a function of Sight, not See Through Stealth. We may not be looking for any system past LoS checking with a universal limit on distance.
bricks: Seems very versatile. I can also see this being readily applied to traps and other perception checks. Other things I'd like included: Precision penalties for low-level detection, and a precision cap of 1 for invisible/out-of-sight targets. A separate (but related) detection system for sounds, like explosions, footsteps, etc. Agree with incorporation of the "size" parameter - all things being equal, small enemies should be harder to spot. Support for low-resolution detection systems, like Echolocation and Infravision, which can provide early detection but little specific information (and can also be countered in specific ways). I don't see detection at melee range being too much of a problem. Range attacking will be an important part of the game, and there can be other means of reducing sight at close range (acid spit, smoke clouds), not to mention various means of incapacitation and distraction (holograms?). High-intensity, short-term stealth fields reaching levels of 1000 doesn't sound totally unreasonable, either. I envision stealth generally being used to choose when and where to engage enemies, not to avoid engaging entirely.