Follow us on Twitter
Bot Commands for Counter Strike Source Game Servers

Bot Commands for Counter-Strike Source

The following bot commands were compiled by "deadbwoy" of Turtle Rock Studios, the developer of the CS Bot. When using bots, please use them sparingly. Bots are not useful for tricking people into thinking your server has people in it. People can see how many of the players are real and how many are bots. People don't join or stay in servers full of bots. Also, bots are VERY taxing on server resources. If you want to be nice to your game server provider, we highly suggest that you limit the use of bots to 2-3 at any one time.

Please note that these bot commands can be used as rcon commands or server cvars (commands located in the cfg files of a server).

Source Bot Commands
Task Syntax Description
Bot Controls
bot_chatter: off / radio / minimal / normal bot_chatter minimal Controls how often the bots use their radios.
bot_defer_to_human: 0/1 bot_defer_to_human 0 Set to 0 to let bots complete map objectives.
bot_difficulty: 0/1/2/3 bot_difficulty 3 0 is Easy, 1 is Normal, 2 is Hard, & 3 is Expert. You must set this cvar before you add the bots.
bot_join_after_player: 0/1 bot_join_after_player 1 Bots wait for a human to join before joining. Set to 0 (not recommended) to allow bots to play without humans.
bot_join_team: any / CT / T bot_join_team: any Add bot(s) to a specific team.
bot_add bot_add Adds a bot to whichever team has fewer players
bot_add_ct bot_add_ct Adds a Counter-Terrorist bot
bot_add_t bot_add_t Adds a Terrorist bot
bot_kick bot_kick Pete Kicks the specified bot, or all bots if no name is given
bot_kill bot_kill Pete Kills the specified bot, or all bots if no name is given
bot_prefix: "string" bot_prefix "PwnzorC14N Defines a Prefix for all bot's names.
bot_quota bot_quota 2 Set to # of bots allowed on server
bot_quota_mode normal / fill bot_quota_mode fill Determines the type of quota. Allowed values: 'normal' and 'fill'. If 'fill', the server will adjust bots to keep N players in the game, where N is bot_quota. If bot quote is 2 and fill is used, bots will be adjusted to 0 when 2 human players join.
bot_auto_vacate bot_auto_vacate 1 If nonzero, bots will automatically leave to make room for human players.
bot_auto_follow bot_auto_follow 1 If nonzero, bots with high co-op may automatically follow a nearby human player.
Restart Server quit Restarts your server
bot_memory_usage bot_memory_usage Reports on the bots' memory usage
bot_allow_rogues 0 / 1 bot_allow_rogues 1 If nonzero, bots may occasionally go 'rogue'. Rogue bots do not obey radio commands, nor pursue scenario goals.
bot_eco_limit bot_eco_limit 1 If nonzero, bots will not buy if their money falls below this amount.
Bot Weapon Restrictions
bot_all_weapons bot_all_weapons Allows the bots to use all weapons
bot_knives_only bot_knives_only Restricts the bots to only using knives
bot_pistols_only bot_pistols_only Restricts the bots to only using pistols
bot_snipers_only bot_snipers_only Restricts the bots to only using sniper rifles
bot_allow_grenades: 0/1 bot_allow_grenades 1 Restricts/Allows bots to use hand grenades
bot_allow_machine_guns: 0/1 bot_allow_machine_guns 1 Restricts/Allows bots to use machine guns
bot_allow_pistols: 0/1 bot_allow_pistols 1 Restricts/Allows bots to use pistols
bot_allow_rifles: 0/1 bot_allow_rifles 1 Restricts/Allows bots to use rifles
bot_allow_shotguns: 0/1 bot_allow_shotguns 1 Restricts/Allows bots to use shotguns
bot_allow_sub_machine_guns: 0/1 bot_allow_sub_machine_guns 1 Restricts/Allows bots to use sub machine guns
Bot Navigation Editing
sv_cheats 0 / 1 sv_cheats 1 Must be set to 1 to enable navigation tuning.
nav_quicksave nav_quicksave 1 Set to one to skip the time consuming phases of the analysis. Useful for data collection and testing.
nav_generate nav_generate Generate a Navigation Mesh for the current map and save it to disk.
nav_analyze nav_analyze Re-analyze the current Navigation Mesh and save it to disk.
nav_edit nav_edit 1 Set to one to interactively edit the Navigation Mesh. Set to zero to leave edit mode.
nav_mark_walkable nav_mark_walkable Mark the current location as a walkable position. These positions are used as seed locations when sampling the map to generate a Navigation Mesh.
nav_clear_walkable_marks nav_clear_walkable_marks Erase any previously placed walkable positions.
nav_load nav_load Loads the Navigation Mesh for the current map.
nav_save nav_save Saves the current Navigation Mesh to disk.
nav_mark nav_mark Marks the Area under the cursor for manipulation by subsequent editing commands.
nav_corner_lower nav_corner_lower Lower the selected corner of the currently marked Area.
nav_corner_raise nav_corner_raise Raise the selected corner of the currently marked Area.
nav_corner_select nav_corner_select Select a corner of the currently marked Area. Use multiple times to access all four corners.
nav_begin_area nav_begin_area Defines a corner of a new Area. To complete the Area, drag the opposite corner to the desired location and issue a 'nav_end_area' command.
nav_end_area nav_end_area Defines the second corner of a new Area and creates it.
nav_connect nav_connect To connect two Areas, mark the first Area, highlight the second Area, then invoke the connect command. Note that this creates a ONE-WAY connection from the first to the second Area. To make a two-way connection, also connect the second area to the first.
nav_disconnect nav_disconnect To disconnect two Areas, mark an Area, highlight a second Area, then invoke the disconnect command. This will remove all connections between the two Areas.
nav_crouch nav_crouch Toggles the 'must crouch in this area' flag used by the AI system.
nav_delete nav_delete Deletes the currently highlighted Area.
nav_jump nav_jump Toggles the 'traverse this area by jumping' flag used by the AI system.
nav_merge nav_merge To merge two Areas into one, mark the first Area, highlight the second by pointing your cursor at it, and invoke the merge command.
nav_no_jump nav_no_jump Toggles the 'dont jump in this area' flag used by the AI system.
nav_precise nav_precise Toggles the 'dont avoid obstacles' flag used by the AI system.
nav_show_approach_points nav_show_approach_points Show Approach Points in the Navigation Mesh.
nav_show_danger nav_show_danger Show current 'danger' levels.
nav_splice nav_splice To splice, mark an area, highlight a second area, then invoke the splice command to create a new, connected area between them.
nav_split nav_split To split an Area into two, align the split line using your cursor and invoke the split command.
nav_strip nav_strip Strips all Hiding Spots, Approach Points, and Encounter Spots from the current Area.
nav_area_bgcolor nav_area_bgcolor RGBA color to draw as the background color for nav areas while editing.
nav_check_floor nav_check_floor Updates the blocked/unblocked status for every nav area.
nav_show_area_info nav_show_area_info Duration in seconds to show nav area ID and attributes while editing
nav_compress_id nav_compress_id Re-orders area and ladder ID's so they are continuous.
nav_coplanar_slope_limit nav_coplanar_slope_limit ?
nav_corner_place_on_ground nav_corner_place_on_ground Places the selected corner of the currently marked Area on the ground.
nav_ladder_flip nav_ladder_flip Flips the selected ladder's direction.
nav_slope_limit nav_slope_limit The ground unit normal's Z component must be greater than this for nav areas to be generated.
nav_snap_to_grid nav_snap_to_grid Snap to the nav generation grid when creating new nav areas
nav_split_place_on_ground nav_split_place_on_ground If true, nav areas will be placed flush with the ground when split.
nav_transient nav_transient Toggles the 'area is transient and may become blocked' flag used by the AI system.
nav_update_blocked nav_update_blocked Updates the blocked/unblocked status for every nav area.
Navigation Bot Controls
bot_crouch: 0/1 bot_crouch 1 Label a marked nav area as a forced crouching point.
bot_debug: 0/1 bot_debug 1 Used for debugging info of bot behavior.
bot_freeze: 0/1 bot_freeze 1 Used to freeze all bots; 1 is on, 0 is off.
bot_goto_mark bot_goto_mark Sends a bot to the selected nav area (for editing nav meshes)
bot_show_nav: 0/1 bot_show_nav 1 Shows the bot's nav mesh.
bot_stop: 0/1 bot_stop 1 Similar to bot_freeze
bot_traceview: 0/1 bot_traceview 1 See the bot's field of view while navigating a map.
bot_traceview_extended: 0/1 bot_traceview_extended 1 ?
bot_walk: 0/1 bot_walk 1 Force the bots to walk.
bot_zombie: 0/1 bot_zombie 1 Used for playtesting navmeshes.
Bot Place Painting
nav_toggle_place_mode nav_toggle_place_mode Toggle the editor into and out of Place mode. Place mode allows labelling of Area with Place names.
nav_toggle_place_painting nav_toggle_place_painting Toggles Place Painting mode. When Place Painting, pointing at an Area will 'paint' it with the current Place.
nav_place_floodfill nav_place_floodfill Sets the Place of the Area under the cursor to the curent Place, and 'flood-fills' the Place to all adjacent Areas. Flood-filling stops when it hits an Area with the same Place, or a different Place than that of the initial Area.
nav_place_pick nav_place_pick Sets the current Place to the Place of the Area under the cursor.
nav_use_place nav_use_place If used without arguments, all available Places will be listed. If a Place argument is given, the current Place is set.
nav_mark_unnamed nav_mark_unnamed Mark an Area with no Place name. Useful for finding stray areas missed when Place Painting.
nav_avoid nav_avoid Toggles the 'avoid this area when possible' flag used by the AI system.
nav_dont_hide nav_dont_hide Toggles the 'area is not suitable for hiding spots' flag used by the AI system.
nav_run nav_run Toggles the 'traverse this area by running' flag used by the AI system.
nav_stand nav_stand Toggles the 'stand while hiding' flag used by the AI system.
nav_warp_to_mark nav_warp_to_mark Warps the player to the marked area.