bot_controller
bot_controller
is a point entity available in Team Fortress 2.
Entity description
An entity used to create a bot, and then issue commands to it.
Keyvalues
- Name ([todo internal name (i)]) <string>
- The targetname that other entities refer to this entity by.
- Team ([todo internal name (i)]) <choices>
- Team
- 2 : Red
- 3 : Blue
- Class ([todo internal name (i)]) <choices>
- The class the bot will spawn as.
- 0 : Random
- 1 : Scout
- 2 : Sniper
- 3 : Soldier
- 4 : Demoman
- 5 : Medic
- 6 : Heavy
- 7 : Pyro
- 8 : Spy
- 9 : Engineer
Inputs
- Kill
- Removes this entity from the world.
- KillHierarchy
- Removes this entity and all its children from the world.
- AddOutput <string >
- Evaluates a keyvalue/output on this entity. It can be potentially very dangerous, use with care.
Format:<key> <value>
Format:<output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>
- FireUser1 to FireUser4
- Fire the
OnUser
outputs; see User Inputs and Outputs.
- CreateBot
- Create the bot for this controller.
- RespawnBot
- Force the bot to respawn.
- AddCommandMoveToEntity <targetname >
- Add a command to the bot's queue, telling it to move to the specified entity.
- AddCommandAttackEntity <targetname >
- Add a command to the bot's queue, telling it to attack the specified entity.
- AddCommandSwitchWeapon <integer >
- Add a command to the bot's queue, telling it to switch to the specified weapon slot.
- AddCommandDefend <float >
- Add a command to the bot's queue, telling it to defend the position it's standing at. The parameter specifies the distance from the point that the Bot is allowed to move to fight enemies.
- SetIgnoreHumans <integer >
- Set whether or not the Bot should ignore human players. 1 The expression {{=}} is used to insert a = character into a template or table where it would otherwise affect or break the formatting of the template/table instead of displaying the character. It is most likely to be used in conjunction with templates like {{Note}} or the {{Key}} template. See its documentation for further information.

Both of the following deliver if (i == 0) return count == 0;:

ignore, 0 The expression {{=}} is used to insert a = character into a template or table where it would otherwise affect or break the formatting of the template/table instead of displaying the character. It is most likely to be used in conjunction with templates like {{Note}} or the {{Key}} template. See its documentation for further information.

Both of the following deliver if (i == 0) return count == 0;:

don't ignore.
- PreventMovement <integer >
- Set whether or not the Bot is allowed to move. 1 The expression {{=}} is used to insert a = character into a template or table where it would otherwise affect or break the formatting of the template/table instead of displaying the character. It is most likely to be used in conjunction with templates like {{Note}} or the {{Key}} template. See its documentation for further information.

Both of the following deliver if (i == 0) return count == 0;:

prevent movement, 0 The expression {{=}} is used to insert a = character into a template or table where it would otherwise affect or break the formatting of the template/table instead of displaying the character. It is most likely to be used in conjunction with templates like {{Note}} or the {{Key}} template. See its documentation for further information.

Both of the following deliver if (i == 0) return count == 0;:

allow movement.
- ClearQueue
- Clear the bot's command queue.
Outputs
- OnUser1 to OnUser4
- These Outputs each fire in response to the firing of the like-numbered
FireUser1
toFireUser4
Input; see User Inputs and Outputs.
- OnForceRespawn
- Sent when the entity respawns the players.