Bot
It is covered here for historical and technical reference.
A bot (short for robot) is similar to an NPC in a multiplayer game, usually designed to behave like a human-controlled player. An example is the Counter-Strike: Source bot.
Long Version
Given the team-based competitive nature behind many first-person shooters, a player who plays offline games, presumably with limited or no internet access, will be missing out on a huge portion of the game. To remedy this, these games usually come with bots, which are NPCs that behave like a human player.
Another distinct definition of "bot" is that of a computer program which is commonly designed to perform monotonous or hard-to-achieve tasks such as "farming" and raising levels in RPG-type games. As a result, most RPG games have banned them from use because it is considered cheating. In FPS games this type of bot is also known to be a form of cheating. It helps players achieve better scores by improving their aim and reflexes which, in the extreme case, are completely controlled by the bot software.
Bot Classes and Properties
Bot Class | Game | Target Class for I/O, VScript |
Affected by...? | |
---|---|---|---|---|
cs_bot | Counter-Strike: Source | player | Yes | No |
Counter-Strike: Global Offensive | cs_bot1 | Yes | Yes | |
Counter-Strike 2 | cs_bot[confirm] | Yes[confirm] | Yes[confirm] | |
survivor_bot | Left 4 Dead Left 4 Dead 2 |
player | No | Yes |
tf_bot | Team Fortress 2 | player | No | No |
bot
is the handle of a cs_bot, then bot.GetClassname()
always delivers "player"
.If a cs_bot receives a targetname, it turns into a
player
.Related Console Commands and Variables
All games with bots have ConCommands and ConVars to control them. These might have slightly different side effects per game.
ConCommand / ConVar | Description |
---|---|
bot_add | Adds a bot to the server. Parameters can be used to set the name, team or difficulty of the new bot. This command might do nothing the first time if bot_quota_mode is set to fill. |
bot_dont_shoot | Determines whether bots will intentionally shoot at enemies or not. They might still shoot for example if they are blinded by a flashbang or if a func_breakable is in their way. Note:In Left 4 Dead and Left 4 Dead 2, even if this parameter is off, bots will frequently shove (
+attack2 ) func_breakable objects nearby them anyway, or entities perceived to be in their way. |
bot_kick | Remove all bots from the server. Parameters can be used to target only specific bots. Bots don't die in this process such that they don't drop any equipment. |
bot_kill | Cheat command that makes all bots suicide. If a parameter is given, tries to kill the bot with that name. |
bot_quota bot_quota_mode |
Determines the number of bots on the server that are added automatically. |
bot_stop | If set to non-zero, bots won't do anything. |
bot_moveto | Will move a generic bot. |
See also
- Navigation Meshes
- NextBot
- Server-Side Bots
- RCBot2
- Botrix
- Bot Behavior Trees
- VScript Examples#Functions to distinguish bots and human players
External links