Reaper bot

The Reaper bot is a weak AI expert system computer software program; created in the form of a modification or "addon" to the computer game Quake, the program was created by Steven Polge and written in QuakeC. Released at 11.15.1996.

Overview
The program is a Computer game bot and thus allows the human player to face the computer in a game of deathmatch in Quake -- whereas this option is only possible with other human players in the stock product. The Reaper bot is highly notable in both artificial intelligence in general, community created game content, computer game bots and especially for Quake; due to i.a. its ability to learn arbitrary maps through machine learning and thus it represented a major breakthrough in bot AI.

Features
The bot would give the player an experience of playing against another player on a level that surpassed all other bots at the time of its release; albeit minor missing features, such as the score of the bot and some faults in client simulation it was at the time the most advanced bot available.

The bot has the following notable features:


 * Ability to track and attack the player.
 * Dodge attacks by strafing or full circle-strafing.
 * Avoid obstacles.
 * React to nearby noises.
 * Weapon selection with understanding of the abilities of the various weapons and select the appropriate weapon depending upon the current situation
 * Avoid ledges.
 * Leap off ledges to gain something of value (e.g. an item).
 * Avoid landing in lava.
 * Understanding of the gravity level.
 * Able to decide to flee or chase the player depending upon its current situation while using all of the beforementioned features in unison as needed.

However, the most notable feature is as mentioned that of dynamic mapping, the program will roam arbitrarily by itself on an ad hoc basis and create waypoints to indicate the path to respective power-ups -- weapons, armor, etc. -- once said items are located. Once the whereabouts of power-ups are known the program may use its internal waypoints to locate power-ups when the bot needs such items. The bot also has the ability to follow the player for the same purpose.

The program has a variable skill level system with an option of dynamic adjustment in proportion to player skill and the bots may play in teams or one on one.

The bot is aggressive towards the player once it has sufficient power-ups but is reluctant in attacks prior to attaining such items. The program consists of 28597 lines of QuakeC code in total, including newlines.

Criticism
The Reaper bot is noted for cheating by removing arbitrary power-ups from the map and gaining such items itself. The Reaper bot suffers from several minor bugs, flaws and missing features and is regarded as never having been completed and was aborted in a beta stage of development.

Conclusion
The Reaper bot inspired many more bots for Quake and the bot systems found in other more advanced and modern FPS games.