‘Noclip’ is a cheat command[i] used in many ‘first-person shooter’[ii] games popularised by ID Software’s Doom, Quake, and Duke Nukem series. Originally designed to aid the actual development of the game world, noclip can also be used when playing the game itself. Noclip (short for ‘no clipping’) turns off the collision-detection used in the game engine[iii], which means that the player’s character can pass through walls, floors and ceilings. The character’s movements are not ‘clipped’ by physical constraints and no longer does their environment confine them. Virtually speaking, walls and objects in games have no ‘substance’ unless in-game physics is being applied to them.
Noclip can conflict with the actual running of the game also. For instance, in the MS-DOS registered 1.3D version of Duke Nukem 3D (1996) having noclip mode on and walking outside of the game map causes death, and if the player has ‘god mode’[iv] activated the game will be left in an infinite loop. In the first Doom game (1993) it was understood that the character’s viewpoint would be entirely constructed within the confines of the game. Enabling noclip meant that players found the void outside of the game map existing as a disorientating ‘hall of mirrors’, an endless cycle of the last frame drawn on screen.
Of course the game’s enemies can’t interact with the player’s character while in noclip mode, and when the character is outside of the confines of the map the enemies don’t register their presence; going about their programmed sequences until new data, i.e. the player’s movement within the confines of the map sends off reactions in the enemies’ artificial intelligence (AI).
By the time of 1999’s Quake III the game engine had advanced significantly with the AI of the computer-controlled enemies highly praised upon the game’s release. These enemies could calculate and learn through new ‘reinforced learning’ movements[v] that help them kill and avoid being killed.
In June 2013 a story appeared on the Internet that a server had been left with a multiplayer game of Quake III running for 4 years unattended. No human-controlled player had been inside of the confines of the map for this entire time and the computer-controlled players or ‘bots’[vi] had apparently learned over time that the best way to avoid being killed was to not try to kill each other in the first place. Reportedly the person who had set up this multiplayer game came back to find a peaceful game world with rooms of bots idly standing around not engaging.
However, this was most likely due to a programming limitation that is most evident in the max file-size limits. The game simply wasn’t designed to run indefinitely and the lookup tables (as with many in-game variables) have hard limits on their maximum space allocated.
This was also evident by the bots’ behaviour. The fact that they stood still shows that they had gotten stuck in a specific loop and were unable to move, most likely due to an overflow. As soon as a player’s character entered the confines of the map the bots began parsing based on the new object data and all of the values crashed, causing the game engine to stop.
[i] Cheating in video games involves a video game player using non-standard methods for creating an advantage beyond normal gameplay, usually to make the game easier. Cheats may be activated from within the game itself (a cheat code implemented by the original game developers). Cheating in video games has existed for almost their entire history. The first cheat codes were put in place for play testing purposes. Playtesters had to rigorously test the mechanics of a game and introduced cheat codes, such as ‘noclip’) to make this process easier.
[ii] First-person shooters are a type of three-dimensional shooter game, featuring a first-person point of view with which the player sees the action through the eyes of the player’s character. They are unlike third-person shooters, in which the player can see (usually from behind) the character they are controlling.
[iii] A game engine is a software framework designed for the creation and development of video games. The core functionality typically provided by a game engine includes amongst other things: a rendering engine for 2D or 3D graphics, a physics engine for calculating collision detection between objects and structures in the game, artificial intelligence and memory management.
[iv] ‘God mode’ is a cheat that makes the player’s character invulnerable.
[v] Reinforcement Learning is a machine learning framework that prescribes how bots should act in an environment in order to maximize future cumulative reward. The learning is achieved over time, with the computer learning from playing against human players. These learned behavioural actions are saved in the game’s engine.
[vi] In video games, a bot is a computer-controlled player most commonly used in online multiplayer deathmatches of first-person shooter games. Human players may play against other human players and/or bots i.e. ‘against the computer’.