Bots in Counter-Strike 2

The presence of bots in Counter-Strike 2 offers players a valuable opportunity to refine their shooting skills. Even seasoned professionals occasionally utilize local servers to hone their aim against multiple opponents simultaneously. This practice not only strengthens reflexes but also deepens one’s understanding of the game. It’s crucial to acknowledge that while bot matches contribute to specific aspects of training, the unparalleled experience of facing real human adversaries remains unmatched.

Understanding Bots

A bot, in Counter-Strike 2, AI-controlled player that operates through predetermined algorithms, executing behavior patterns based on scripted instructions. Unlike true artificial intelligence, bots cannot learn, remember mistakes, or alter their strategies dynamically. Their primary function is to substitute for real players, adding an element of challenge while providing moments of excitement curated by developers.

Bot Difficulty

Gameplay scene on the Mansion map in Counter-Strike 2 featuring AI bots in action

Engaging with bots at different difficulty settings exposes players to diverse tactics and strategies, enhancing their overall game sense. The utilization of varying bot difficulty levels proves advantageous for training purposes. Facing bots with hard difficulty levels challenges players to enhance their aiming precision and reflexes, fostering improved shooting skills. Higher difficulty levels simulate the pressure of competitive scenarios, allowing players to build resilience and composure during intense moments.

Tuning Difficulty of Bots

In Counter-Strike 2, the “bot_difficulty” command regulates the difficulty level of bots within the game. The values range from 0 to 3, each representing a distinct difficulty level. The default values for Casual and Competitive matches are 1 (Normal) and 2 (Hard), respectively. Understanding the characteristics associated with each difficulty level, such as aggression, reaction time, teamwork, and movement efficiency, allows players to tailor the bot experience to their liking.
Here’s a breakdown of the values:
bot_difficulty 0: Easy difficulty. Bots have reduced accuracy, slower reaction times, and are generally easier to defeat.
bot_difficulty 1: Normal difficulty. Bots have average accuracy and reaction times.
bot_difficulty 2: Hard difficulty. Bots have improved accuracy and faster reaction times, providing a more challenging experience for players.
bot_difficulty 3: Expert difficulty. Bots have very high accuracy and almost instant reaction times, making them formidable opponents.
Commands like “bot_autodifficulty_threshold_low” and “bot_autodifficulty_threshold_high” offer further customization for bot difficulty adjustment. Setting appropriate values ensures that bots dynamically adapt to a player’s skill level. By adjusting these thresholds, players can influence when bots increase or decrease their difficulty levels, adding an extra layer of challenge.

Optimizing for Maximum Challenge

For those seeking the utmost challenge, specific command values can be set:
Set “bot_autodifficulty_threshold_low” to -20 for aggressive difficulty increases.
Set “bot_autodifficulty_threshold_high” to 0 to prevent difficulty decreases even during bot dominance.
Set “bot_difficulty” to 3 for an expert bot skill level.
Adjust “bot_quota” to the desired maximum number of bots.
Fine-tune team balance using “mp_autoteambalance” and “mp_limitteams” commands.

Command
Value
Effect
bot_difficulty
3
Initial bot skill level
bot_autodifficulty_threshold_low
-20
Bots aggressively increase difficulty when underperforming
bot_autodifficulty_threshold_high
0
Bots never decrease difficulty, even if dominating
bot_quota
20
The desired number of bots
mp_autoteambalance
0
Auto team balancing is disabled
mp_limitteams
0
Team player limit is disabled

Utilize the “bot_kick” command to kick all bots, and then add a specific number of proficient or easy bots to the desired team. Implement the “bot_add,” “bot_add_t,” or “bot_add_ct” command, specifying the difficulty level of the bots or the name of the bot if it exists.
However, a more optimal approach is to create a configuration file for bots and execute it as needed. If you’re unfamiliar with the process, please refer to my previous guides:

Optimizing COUNTER-STRIKE 2 Player Configuration Files
Optimizing COUNTER-STRIKE 2 Server Configuration Files

Let’s create a configuration file for an example game on the CT side:

  • Configure the server
  • Kick existing bots
  • Add four easy bots for the Counter-Terrorist side
  • Add ten expert bots for the Terrorist side
				
					//Configure the server
mp_buytime 60
mp_buy_anywhere 0
mp_freezetime 2
mp_friendlyfire 0
mp_maxmoney 15000
mp_maxrounds 20
mp_roundtime 1.6
mp_roundtime_hostage 2
mp_roundtime_defuse 2.25
mp_autoteambalance 0
mp_limitteams 0

// Set the difficulty
bot_autodifficulty_threshold_low -20
bot_autodifficulty_threshold_high 0
bot_difficulty 3

//Kick bots
bot_kick

//Add bots
bot_add_ct easy
bot_add_ct easy
bot_add_ct easy
bot_add_ct easy
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert
bot_add_t expert

//Confirmation for just in case
echo The bot config has been loaded
				
			

Load the file from the console using the “exec” command.
Now you can engage in the game, experience victories or defeats, and perhaps even express frustration or accuse the bots of cheating, as these skilled opponents will provide a formidable challenge during gameplay.

Bots Templates

Counter-Strike 2 employs two types of templates: difficulty templates and weapon templates. Difficulty templates encompass the four difficulty levels, while weapon templates determine the arsenal of weapons some of the bots use. Essentially, a difficulty template is a set of bot characteristics. Each template includes two characteristics, main and additional.

Easy difficulty templates

				
					bot_add easy
bot_add_t easy
bot_add_ct easy
				
			

Template EASY

				
					Skill = 5
Rank = 600
Aggression = 10
ReactionTime = 0.60
AttackDelay = .70
Cost = 1
Difficulty = EASY
VoicePitch = 110
AimFocusInitial = 20
AimFocusDecay = 0.7
AimFocusOffsetScale = 0.6
AimfocusInterval = 0.70
				
			

Template FAIR

				
					Skill = 25
Rank = 850
Aggression = 15
ReactionTime = 0.60
AttackDelay = .90
Cost = 1
Difficulty = EASY
VoicePitch = 105
AimFocusInitial = 17
AimFocusDecay = 0.6
AimFocusOffsetScale = 0.5
AimfocusInterval = 0.70

				
			

Normal difficulty templates

				
					bot_add normal
bot_add_t normal
bot_add_ct normal
				
			

Template NORMAL

				
					Skill = 50
Rank = 1000
Aggression = 30
ReactionTime = 0.60
AttackDelay = .80
Cost = 2
Difficulty = NORMAL
VoicePitch = 101
AimFocusInitial = 12
AimFocusDecay = 0.5
AimFocusOffsetScale = 0.35
AimfocusInterval = 0.60
				
			

Template TOUGH

				
					Skill = 60
Rank = 1100
Aggression = 45
ReactionTime = 0.50
AttackDelay = .70
Cost = 2
Difficulty = NORMAL
VoicePitch = 96
AimFocusInitial = 10
AimFocusDecay = 0.4
AimFocusOffsetScale = 0.25
AimfocusInterval = 0.50
				
			

Hard difficulty templates

				
					bot_add hard
bot_add_t hard
bot_add_ct hard
				
			

Template HARD

				
					Skill = 75
Rank = 1300
Aggression = 60
ReactionTime = 0.40
Cost = 3
Difficulty = HARD
VoicePitch = 94
AimFocusInitial = 10
AimFocusDecay = 0.4
AimFocusOffsetScale = 0.20
AimfocusInterval = 0.40
				
			

Template VERY HARD

				
					Skill = 80
Rank = 1400
Aggression = 70
ReactionTime = 0.30
Cost = 3
Difficulty = HARD
VoicePitch = 92
AimFocusInitial = 5
AimFocusDecay = 0.3
AimFocusOffsetScale = 0.17
AimfocusInterval = 0.30
				
			

Expert difficulty templates

				
					bot_add expert
bot_add_t expert
bot_add_ct expert
				
			

Template EXPERT

				
					Skill = 90
Rank = 1600
Aggression = 80
ReactionTime = 0.20
Cost = 4
Difficulty = EXPERT
VoicePitch = 88
AimFocusInitial = 2
AimFocusDecay = 0.2
AimFocusOffsetScale = 0.15
AimfocusInterval = 0.20
				
			

Template ELITE

				
					Skill = 100
Rank = 1800
Aggression = 95
ReactionTime = 0.05
Cost = 4
Difficulty = EXPERT
VoicePitch = 85
AimFocusInitial = 0.5
AimFocusDecay = 0.1
AimFocusOffsetScale = 0.05
AimfocusInterval = 0.05
				
			

Weapon Templates

Template Rifle

				
					WeaponPreference = m4a1
WeaponPreference = ak47
WeaponPreference = famas
WeaponPreference = galilar
WeaponPreference = mp7
				
			

Template Punch

				
					WeaponPreference = aug
WeaponPreference = sg556
WeaponPreference = famas
WeaponPreference = galilar
WeaponPreference = mp7
				
			

Template Sniper

				
					WeaponPreference = awp
WeaponPreference = scar20
WeaponPreference = g3sg1
WeaponPreference = ssg08
WeaponPreference = famas
WeaponPreference = galilar
WeaponPreference = mp7
				
			

Template Power

				
						WeaponPreference = m249
	WeaponPreference = xm1014
	WeaponPreference = nova
	WeaponPreference = famas
	WeaponPreference = galilar
	WeaponPreference = mp7
				
			

Template Shotgun

				
					WeaponPreference = xm1014
WeaponPreference = nova
WeaponPreference = famas
WeaponPreference = galilar
WeaponPreference = mp7
				
			

Template Spray

				
					WeaponPreference = p90
WeaponPreference = mp9
WeaponPreference = mac10
WeaponPreference = mp7
				
			

List of Bot Names

The majority of bots in Counter-Strike 2 are equipped with specific weapon templates, except those set to easy difficulties. Additionally, a select few bots within the “Fair” difficulty tier also have assigned weapon templates.

				
					bot_add "name"
bot_add_t "name"
bot_add_ct "name"
// It is not necessary to use a capital letter in the bot name
				
			

Easy Difficulty: Template EASY

				
					Adonis
Azul
Bassey
Clarence
Colin
Conleth
Dashen
Dayo
Dios
Efe
Ferris
Frank
Greymouth
				
			
				
					Harvey
Hastings
Irwin
Larry
Maru
Mayer
Miguel
Niles
Oli
Opie
Panama
Pines
Rivers
				
			
				
					Telsen
Tony
Ulric
Ulysses
Uri
Vox
Waldo
Walt
Wesley
Yanni
York
Yuri
				
			

Easy Difficulty: Template FAIR

				
					Akutan + SPRAY
Comb
Faultline
Firwood
Gustov
Han
Heave
Hobart
				
			
				
					Hogarth
Kadeem
Kao
Kong
Longwa
Marlin
Milenski
Orin
				
			
				
					Orlo + SPRAY
Orlow
Sails
Sam
Shadow
Shaur
Terrington
Tom
				
			

Normal Difficulty: Template NORMAL

				
					Aggressor
Akani
Bluefish
Boxcar + RIFLE_T
Dabisi + RIFLE
Doc
Feliz
Francis
				
			
				
					Frank + PUNCH_T
Guerrilla + RIFLE
Hau
Hood
Imaru + SNIPER
Juuvy
Litmow + SNIPER
Luiro
				
			
				
					Masthead
Reaper
Sal
Severn
Striker
Vypa
Wiscar
				
			

Normal Difficulty: Template TOUGH

				
					Arno + RIFLE
Aspirant + RIFLE_T
Bank + SNIPER
Baroud
Crasswater + RIFLE_T
Getaway + RIFLE
Goggles + RIFLE
				
			
				
					Hugg + RIFLE
Jaques
k
Kev + RIFLE
Krikey + RIFLE
Mangos + RIFLE_T
Rex + RIFLE_T
				
			
				
					Rouchard + RIFLE
Solman + SNIPER
Sox + RIFLE
Squad + SHOTGUN
Strapper + RIFLE
Trapper + RIFLE_T
Voltzmann + RIFLE
				
			

Hard Difficulty: Template HARD

				
					Blackwolf + PUNCH_T
Darryl + SPRAY
Dragomir + SHOTGUN
Enforcer + PUNCH_T
Lieutenant + RIFLE_T
				
			
				
					Mae + RIFLE
Maximus + SPRAY
Officer + RIFLE
Rezan + PUNCH
Romanov + RIFLE_T
				
			
				
					Sarge + RIFLE
Sas + RIFLE
Skullhead + RIFLE
Slingshot + SNIPER
Specialist + RIFLE
				
			

Hard Difficulty: Template Very HARD

				
					Seal + POWER
Cavalry + SNIPER
Farlow + RIFLE
Kask + RIFLE_T
				
			

Expert Difficulty: Template EXPERT

				
					Ava + RIFLE_T
Buckshot + RIFLE
Commando
Delrow + PUNCH
McCoy + RIFLE
				
			
				
					Operator + SNIPER
Ricksaw + RIFLE
Rip + PUNCH_T
Soldier + SHOTGUN
Syfers + RIFLE
				
			

Expert Difficulty: Template ELITE

				
					Muhlik + RIFLE
Shamat + SPRAY
Crusher + SHOTGUN
Osiris + PUNCH
Rock + POWER
Shark + PUNCH_T
				
			
				
					Wolf + RIFLE
Gunner + RIFLE_T
Rebel + SNIPER
Crew + PUNCH
Steel + RIFLE_T
Stone + PUNCH_T
				
			

Console commands for Bots in CS2

As of today, the CS2 console incorporates around 60 commands designed for bot manipulation. These commands facilitate actions such as adding bots, kicking bots, freezing bots, adjusting difficulty levels, altering bot locations, and modifying the number of bots in play, among other functionalities. Additionally, there is a collection of server-related (sv_*) and multiplayer-related (mp_*) commands tailored for configuring bot behavior.

It's noteworthy that nearly half of these commands necessitate enabling cheats mode within CS2. Cheats can be activated by using the sv_cheats 1 command.

Summary

Counter-Strike 2 bots offer a valuable training ground for players of all skill levels. While not replicating the dynamic experience of human opponents, bots allow players to refine shooting skills, understand game mechanics, and experiment with strategies in a controlled environment. Difficulty customization further enhances their usefulness, letting players adjust bot behavior to match their needs. From practicing basic aims under pressure to simulating high-level competitive scenarios, bots offer versatility and accessibility for players seeking to improve their Counter-Strike 2 skills.

F.A.Q.