A bot, most prominently in the first-person shooter types (FPS), is a type of weak AI expert system software which for each instance of the program controls a player in deathmatch, team deathmatch and/or cooperative human player. Computer bots may play against other bots and/or human players in unison, either over the Internet, on a LAN or in a local session[1]. Features and intelligence of bots may vary greatly, especially with community created content. Advanced bots feature machine learning for dynamic learning of patterns of the opponent as well as dynamic learning of previously unknown maps -- whereas more trivial bots may rely completely on lists of waypoints created for each map by the developer, limiting the bot to play only maps with said waypoints. Bots are also currently against the rules of all of the main MMORPGs.
In MUDs, players may utilize bots to perform laborious tasks for them, sometimes even the bulk of the gameplay. While a prohibited practice in most MUDs, there is an incentive for the player to save his/her time while the bot accumulates resources, such as experience, for the player character.
Bots can help a PC gamer learn the gameplay environment and the game rules as well as help them practice shooting accuracy and gaming skills before going online to compete with other human players in a multiplayer environment. Some PC gamers prefer to play exclusively with bots rather than human opponents – especially in the case of those who have slow dial-up internet connections and thus may be unable to play online. Bots can also be used to allow players to play without worrying about opponents using *****s or exploiting bugs in the game. Players may also use bots to fill in spots on a server when there are few other players. In this respect, bots help create a longer interest in the game. Most bots use existing 3D models, textures and sound of the games or mods.
Some multiplayer games were released initially without single-player components and bots were created or added later on by fans and enthusiasts in the modding community.
Bots are usually written in C or C++ as stand-alone, completely independent applications or plugins or just dynamic link libraries (dll) for an existing game engine. In the Ragnarok Online game, the Perl programming language is exclusively used to create bots. Some authors also write some applications with which the bots' behavior, skills and other characteristics can be created or modified, such as Bot Studio for Quake III Arena.
Game artificial intelligence refers to techniques used in computer and video games to produce the illusion of intelligence in the behavior of non-player characters (NPCs). The techniques used typically draw upon existing methods from the field of artificial intelligence (AI). However, the term game AI is often used to refer to a broad set of algorithms that also include techniques from control theory, robotics, computer graphics and computer science in general.
Since game AI is centered on appearance of intelligence and good gameplay, its approach is very different from that of traditional AI; hacks and *****s are acceptable and, in many cases, the computer abilities must be toned down to give human players a sense of fairness. This, for example, is true in first-person shooter games, where NPC's otherwise perfect aiming would be beyond human skill.
Game playing was an area of research in AI from its inception. In 1951, using the Ferranti Mark 1 machine of the University of Manchester, Christopher Strachey wrote a checkers program and Dietrich Prinz wrote one for chess.[1] These were among the first computer programs ever written. Arthur Samuel's checkers program, developed in the middle 50s and early 60s, eventually achieved sufficient skill to challenge a respectable amateur.[2] Work on checkers and chess would culminate in the defeat of Garry Kasparov by IBM's Deep Blue computer in 1997.[3]
The first video games developed in the 1960s and early 1970s, like Spacewar!, Pong and Gotcha (1973), were games implemented on discrete logic and strictly based on the competition of two players, without AI.
Games that featured a single player mode with enemies started appearing in the 1970s. The first notable ones for the arcade included the 1974 Atari games Qwak (duck hunting) and Pursuit (fighter aircraft dogfighting simulator). Two text-based computer games from 1972, Hunt the Wumpus and Star Trek, also had enemies. Enemy movement was based on stored patterns. The incorporation of microprocessors would allow more computation and random elements overlaid into movement patterns.
The idea was used by Space Invaders (1978), sporting an increasing difficulty level, distinct movement patterns, and in-game events dependent on hash functions based on the player's input. Galaxian (1979) added more complex and varied enemy movements.
Pac-Man (1980) applied these patterns to maze games, with the added quirk of different personalities for each enemy, and Karate Champ (1984) to fighting games, although the poor AI prompted the release of a second version.
Games like Madden Football, Earl Weaver Baseball and Tony La Russa Baseball all based their AI on an attempt to duplicate on the computer the coaching or managerial style of the selected celebrity. Madden, Weaver and La Russa all did extensive work with these game development teams to maximize the accuracy of the games.[citation needed] Later sports titles allowed users to "tune" variables in the AI to produce a player-defined managerial or coaching strategy.
The emergence of new game genres in the 1990s prompted the use of formal AI tools like finite state machines. Real-time strategy games taxed the AI with many objects, incomplete information, pathfinding problems, real-time decisions and economic planning, among other things.[4] The first games of the genre had notorious problems. Herzog Zwei (1989), for example, had almost broken pathfinding and very basic three-state state machines for unit control, and Dune II (1992) attacked the players' base in a beeline and used numerous *****s.[5] Later games in the genre exhibited more sophisticated AI.
Later games have used bottom-up AI methods, ranging from the first use of neural networks in a videogame in Battlecruiser 3000AD (1996)[citation needed], to the emergent behaviour and evaluation of player actions in games like Creatures or Black & White. Fa?ade (interactive story) was released in 2005 and used interacitve multiple way dialogs and AI as the main aspect of game.