Monsters fleeing

From DoomWiki.org

Revision as of 14:03, 3 May 2015 by Linguica (talk | contribs) (rewrote reasoning for monster fleeing)


The monster AI in Doom causes attacking enemies to change direction and feint when the direct route to their target is obstructed. This normally adds to the realism and difficulty of combat (the cyberdemon on E2M8: Tower of Babel, for instance, could otherwise be killed through a sniper hole), but not always.

A demon attacking the player inside a passage 64 units wide can be turned back by damaging (pushing) it into a wall. This behaviour can be experimented in Doom 1 E3M1: Hell Keep and is a way to escape at the start of E3M3: Pandemonium, most notably under -fast setting or Nightmare! skill level.

Any mobile monster at all, having repeatedly crashed into a wall or other monsters in its attempts to reach the player, eventually turns around and runs away from the player, sometimes reaching the opposite wall of the room before deciding to re-engage.

This effect occurs because the monster movement code is written to strongly discourage making a 180-degree turn, and a moving monster will prefer to move in literally any other direction rather than make a 180-degree turn. Therefore, a monster in a narrow corridor along an cardinal or ordinal direction will only have two possible directions to move in - either towards or away from the player - and once the monster is moving in one of these directions it will refuse to turn around until there is no other option.

The teleportation trap on MAP24: The Chasm exploits the fleeing behavior as a feature, by putting the room's only exit behind the monsters.

Though not related to pursuit AI, but to engine physics, when a cacodemon or pain elemental takes damage, it often drifts backward a considerable distance before regaining its "bearings" (see also Lost soul charging backwards).

Examples

  • MonsterFlee.WAD (file info) illustrates an extreme instance of this phenomenon; without it, 100% kills would be almost unattainable. As long as the player does not move too far north or south before awakening the demon, he will run eastward (away from the player) as soon as he is aroused. (Note that the demon in the first room is actually three demons at the same location, one for each difficulty class, but it is not necessary for the effect to work.)
  • Cacowimp.lmp (file info) demonstrates that a cacodemon can backpedal halfway across the room when damaged.