Tuesday, March 13, 2012

Incredibly Quiet and Extremely Stealthy

Perhaps not so surprising of a fact is that "sneak" features a stealth system. Currently it is pretty basic: the player is given a stealth value while each enemy is given a detection value and then both are randomized slightly. If the enemy detects the player, stealth instantly ends. If the enemy does not detect the player, there's a chance it will become slightly more aware of the player's presence. Pretty straightforward, really.

Basically the above system sucks. Sure, it's good for testing out how stealth and how it might be applied, but it isn't really that fun. It doesn't involve any other part of the game or the engine and the player is given very few options that influence the effectiveness (or lack thereof) of stealth. The solution is twofold: implement a "noise" system and greatly improve upon the AI. Note that the new AI system covers a wide number of topics and will probably get its own dedicated post in the future. Still, I'll discuss the new noise system and how the new AI will relate to it. First, let's lay out the stealth-relevant parts of the AI:

Mindless (tier 0): Mindless opponents will have very low detection values. They may also respond more slowly to loud noises.

Insect (tier 1): Most insects will have fairly low detection values. Insects may also respond more slowly to loud noises (like mindless foes), but many insects move very fast.

Primal (tier 2): Primal enemies will have average detection values. Primal enemies will respond quickly to loud noises, though they will likely have a chance of running away from them instead.

Human (tier 3): Humanoid opponents have above average detection values. Humanoid opponents will respond quickly to loud noises.

High Intelligence (tier 4): Opponents with high intelligence will have very high detection values. Highly intelligent enemies will respond to loud noises quickly and appropriately (e.g. turn invisible or blink away).

Noise is a little more difficult to model, but the basic idea is that heavy equipment and certain spells will generate a lot of noise. There will be two kinds of noise: constant and temporary. Constant noise is generated by wearing heavy armor while temporary noise is generated by using certain items and spells. For example, a battle-mage in full plate slinging fireballs will be very bad at sneaking around, even if he has a relatively good stealth skill. On the other hand, a rogue character in leather wielding only a dagger will be nigh-undetectable, especially so with a high stealth skill. 

So, what advantages does the proposed stealth system have? Integration is perhaps the most obvious from my perspective. This system ties into the encumbrance system, skill system, AI system, spell system, and item system all at once. This is a massive improvement over the current system which is only tied to the archaic AI system. While it is always challenging to measure "fun", I think it is a fairly safe bet that the proposed version of stealth will be much more fun for the player. The current system is arbitrary and relies significantly on luck. Still, this is a system that will be pieced together over time - all of the tie-in system needs to be re-implemented, implemented in the first place, or at least improved upon before it can be experienced.

As a final note, I think it is worth mentioning that more details about this system (and everything else, really) will become available as development of "sneak" progresses! 


No comments:

Post a Comment