How to Spawn Bots in "TF2"

By Brandon James

Updated September 22, 2017

In Valve's "Team Fortress 2" class-based, first-person shooter, you can spawn computer-controlled bots on your server to help you practice, fill out a team of human players or earn achievements. As of the publication of this article, there are two kinds of bots in "Team Fortress 2" -- advanced bots that can successfully play certain maps as if controlled by humans and puppet bots that can only do what they're told by the player.

Advanced Bots

Join your server or a server on which you have administrator access.

Open your console with the tilde (~) key by default.

Enter the console command, "tf_bot_add," specifying count, class, team and difficulty. For example, "tf_bot_add 3 Demoman blue hard." The other classes are Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper and Spy. The other team option is red. You can also use easy and normal as difficulties.

Set the following console commands to dictate further how bots spawn:

"tf_bot_difficulty easy/normal/hard" -- Bots will always spawn this difficulty.

"tf_bot_force_class class" -- Bots will always spawn this class.

"tf_bot_join_after_player 1" -- Bots will join the game when players join.

"tf_bot_keep_class_after_death 0" -- Bots will spawn as a different class upon death.

"tf_bot_prefix_name_with_difficulty 1" -- Bots will have a number 1 through 3 prefacing their name corresponding to their difficulty.

"tf_bot_quota number" -- The number of bots the server will allow.

"tf_bot_quota_mode normal/fill/match" -- Set to normal will ignore the quota rules. Set to fill spawns bots to satisfy the "tf_bot_quota." Set to match, the server will spawn however many bots are specified in "tf_bot_quota" for every human player.

Kick a specific bot from the server with the command "tf_bot_kick nameofbot."

Puppet Bots

Join your server or a server on which you have administrator access.

Open your console with the tilde (~) key by default.

Enter the command, "sv_cheats 1" to enable cheats. Puppet bots can only be spawned with cheats enabled. Players cannot earn achievements while playing with puppet bots.

Spawn a bot with the console command "bot -team teamname -class classname -name botname," replacing teamname with "red" or "blu," classname with the specific class and botname with your desired name. For example, spawn a Medic on the BLU team named Max with "bot -team blu -classname Medic -name Max."

Control your puppets with the following console commands:

"bot_changeteams" -- All bots will switch their teams.

"bot_command botname command" -- Tells the bot with botname to perform a specified scripting command. There are dozens of possible commands.

"bot_dontmove 1/0" -- Set to 1, bots will not move.

"bot_forceattack 1/0" -- Set to 1, bots will fire their weapon. Use "bot_forceattack2" to force them to fire their secondary weapon.

"bot_kill botname" -- Kills the bot with botname.

"bot_mimic 1/0" -- Set to 1, bots will mimic the players every move.

"bot_refill" -- Refills all bots' ammunition and supplies.

"bot_saveme 1/0" -- Set to 1, causes all bots to cry out for a medic.


The advanced AI bots function properly on most official King of the Hill maps except for "koth_harvest," most Payload maps, "cp_dustbowl," and "cp_manor_event."