Stealth Game Spotting Deconstruction

This is ultimately a fine-tuned taking apart of how enemies spot you in stealth games. Might read a bit dry, enjoy.

In a conference on stealth, the Monaco developer mentioned that he red to at all times if possible have every bit of feedback to the player and all decisions be completely binary. Either yes or no. This is in contrast to a stealth genre that is seemingly devoted to more obfuscation and more gradient perceptions. His stated reason for this design decision is because in a gradating system players must learn to get a feel for the interactions which makes it difficult for beginners to act with much certainty, where completely binary interactions make it immediately extremely clear how the system behaves. I think this concept of binary versus fuzzy feedback is worth exploring. A companion idea worth relating to this is that as people have more choices they become overwhelmed by those choices and incapable of judging the choices they are making very well. A similar phenomenon might be at play here. Though as a corollary, as more choices are open, the range of expression becomes wider and more precise. I have been a fan of analog information in the past, but it may be worth investigating the benefits of its opposite, digital information. Analog information may be an easy way to create a wealth of meaningful playstates, however the difficulty of reading some forms of analog information may be its downfall. People are hardwired to recognize the rate of descent on falling objects and calculate their future positions, but something like realizing how far sound travels from you is very hard to perce ive in a digital 3D space. It may be that human minds are only good at processing certain forms of analog information and poor at processing others that have less tangible effects. Obvious example being the aforementioned process of objects moving through space, angular velocity, and the affects of physics on them. Worse analog perceptions could include things such as temperature, volume, or something like top speed versus acceleration in F-Zero, as those are represented more abstractly from their real world counterparts in a game, and some of those have no spatial visual representation. It may be possible though to augment our perceptions of those by mapping them to something spatial and visual such as a bar that fills in proportion to the fuzzy value. Back on stealth games, Mark of the Ninja is not as binary as monaco, but almost all its interactions are also extremely distinct with only small gradations where gradations exist at all. If investigations were done of more games in this respect then it may be possible to devise an overarching theory of information feedback for stealth games, or more games where information feedback is especially critical.

Worth noting is this conflicts heavily with my proposed perfect stealth spotting system, which took the complete opposite approach by making all the information as fuzzy as possible.

As a deconstruction, mark of the ninja had only 2 states of light, in the light and in the dark. The guards have 3 vision cones, one for the dark which is extremely close to them (1), one for the light which is further out (2), and one for the light that activates partial spottings, which is even further out (3). Enemies without night vision could only spot you if you were within cone 1 while in dark, or if you were within cone 2 in light. With night vision they use cone 2 all the time. Cone 3 was unused unless you were in light or I think if the guard has night vision, triggering partial spottings. Partial spottings have the guard mark your current location, then they move over to that spot until they see you or are standing on the same X coordinates as the partial spotting point, then they enter a routine where they stand in place and look around, giving up if they don’t find you and returning to their prior positions. Sound is completely binary, emanating from running footsteps and a few other sources. The source of the sound will mark an partial sighting spot, resulting in the same routine playing out. Sounds never result in alarms, only getting seen in cone 1 or 2 triggers an alarm. On normal game mode, cone 1 is displayed visually, as are partial spotting points, and sounds that can trigger guards, such as footsteps, distraction items, grappling, and environmental objects. Between these there is a set of extremely predictable and understandable behaviors while still offering a large range of potential game states.

To compare, Metal Gear Solid 1 did not have states of light, and had only 1 cone of vision, displayed on the minimap. Being in this cone would trigger an alert phase, as would assault of a guard or being seen by a camera. Creating a noise such as by stepping on a loud floor tile or tapping on a wall would trigger an investigation phase for guards close enough to hear it, causing them to move over to check out the source of the sound. If they see the player, they will initiate an alert phase, and if not they will return to the standard route. An additional and case specific example would be creating footprints in the snow, which would cause the guard to enter an investigation phase, following the footprints. This system is even more binary and more simple than Mark of the Ninja’s, and characterized the game’s emphasis on pattern memorization to get through the stealth challenges, with a few additional means such as the cardboard box, chaff grenades, and deliberately creating distractions to draw guards. Metal Gear solid displayed the viewcones and positions of guards on the minimap at all times, except during full alert status, where the radar would “jam”, preventing them from telling where enemies were. The radar would also jam when chaff grenades were used, or in certain areas such as revolver ocelot’s boss battle. The radar’s effectiveness, having both the map and enemies and yourself displayed on it, enabled players to play almost entirely using it alone.

In Dishonored there is a much more fuzzy system in comparison to the two above. The spotting algorithm’s state is clearly displayed above each guard and civilian’s head as a three stage alarm. If the player is spotted from a long distance away, the NPC will stare in the direction of the player and will fill up one or two bars of the alarm meter. Creating a loud sound somewhere in the vicinity of the NPC will cause a stage 2 alert immediately, and they will stare at the source of the disturbance. As they continue to stare at the player, the alarm stage will build up and eventually reach stage 3, at which point they will cause a full alert and chase after the player or alert other NPCs. The rate at which this alert status builds is proportional to the player’s distance from the NPC and the level of darkness they are in, with it being impossible to be completely invisible to the NPC unless they are out of the NPC’s vision cone. NPCs in Dishonored never investigate disturbances by moving around except during full alert, in which they will chase the player based on the last known location, investigate the area for a short while afterwards, and eventually return to their routes. Once an alert has been called all guards on that area of the level are permanently on stage 1 alert status, meaning they will respond to the player much more quickly in the event of a future spotting. If a player appears very close to an enemy there is a grace period before alarm is called where if they can dispatch that guard immediately, such as by assassinating them with the sword, the alarm will not be triggered at all, and they can stealth kill the guard in one hit as if they were doing it from cover. There is a similar grace period on partial sightings where one can blink away and be forgotten. It might even be on full sightings too, but I cannot remember. I’ll need to investigate more if I ever replay the game. Dishonored’s more fuzzy system is more difficult to read than the prior two, which made interpretation of it a bit more difficult for me. To alleviate this, they added an ability called Darkvision, which could be used at the cost of mana to view the vision cones of guards. Darkvision’s mana cost was only 25% of the bar, and was only a temporary cost, so in general you could bring it up at nearly any time at minimal cost. It also allowed you to view guards through walls if they were close enough.

Thief 2’s system is significantly more fuzzy and complicated than any of the prior systems. I do not understand it well enough to evaluate it at this point. I believe there are at least 5 viewcones involved, but I do not understand their operation or ranges. (found this gamasutra article, I guess I’ll have a look through this at a later point. Though I think it got adjusted in the transfer to Thief 2 from Thief 1, as thief 1 had a really irritating detection system that wasn’t very clear, and Thief 2 seemed easier to read.)
http://www.gamasutra.com/view/feature/2888/building_an_ai_sensory_system_.php

One thing worth noting after my playthrough of Thief 1 and most of Thief 2 is my analysis of the different surfaces that can be walked on and the alerting sounds they produce.

Noises have an apparent range based on the type of noise they are, with jumping being the loudest, and having the furthest range. Noises are dampened by doors, and do not operate strictly on line of sight like vision, and can go around corners. The four distinct classes of movement are all crouching movement, standing walking movement, standing running movement, and jumping. Soft surfaces such as Carpet, moss, and grass can be traversed in any form of movement without producing any sound, soft dirt I believe can be traversed in any way except for jumping, which creates noise. Harder surfaces such as soft stone or hard dirt are silent when crouching or walking, but will make noise if you run. Hard stone will make noise if you walk, and I think wood will too, though I am not completely sure. The loudest surfaces, tile and metal, will make noise regardless of the type of motion across them, but can be traversed silently by crouching and mashing the movement keys to continually reset the phase of the walk cycle so the sound never plays. It is theoretically possible to do this at higher rates of movement, but the walk cycle is much shorter the faster the movement is, so the amount of time the key can be held down is shorter as well. I imagine a macro might be able to silent run if it spammed motion keys on alternating frames.

There are three guard states, aroused, investigating, and alert. In the aroused state they will comment on slight sightings or disturbances, and I have no idea how slight this is. In the investigating state they will actively investigate the area that is of interest until the cooldown timer runs out. In thief 1 guards are immune to backstabs and the blackjack in this state, in thief 2 they are vulnerable to both. In the alert phase in both games they cease to be vulnerable. Quieter noises in the investigation state will mark a new place of interest and reset the cooldown timer, and louder noises will cause an alert. Guards in the investigation phase periodically update their place of interest to be wherever the player is at regular intervals, even if the player is perfectly concealed in total darkness. This effectively mangetizes guards to the player’s position, so the player must avoid guards even while cooldowns are going off. On tile floors or bright areas this can be very tricky. In the neutral state, quieter noises will provoke an aroused state, and in that state they will provoke an investigation state, which has the effect of creating an escalation as noises continue. When an alert state and the post-alert investigation state cools off, guards will return to their original patrols in the aroused state, and so are easily provoked, at least in Thief 1. In Thief 2, they seem to be in a neutral state instead.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s