How to Add Bots to CS 1.6 — Complete Guide
Full guide to CS 1.6 bots — bot_add commands, difficulty settings, ZBot vs YaPB, bot names, and how to fill LAN teams. Every setting explained.
Updated: 2026-07-30
Bots are computer-controlled players you can add to any CS 1.6 game — offline, on a LAN, or on a server you host yourself. They're the fastest way to warm up, practice a map, or fill empty slots at a small LAN party.
Two bot systems ship in the community-installer world: ZBot (Valve's original, bundled with the 2004 CS 1.6 update) and YaPB / POD-Bot / RCBot (community rewrites). Every WarzoneCS installer ships with ZBot ready to go — bot_add works out of the box.
Quick-start — add a bot in 3 seconds
Open the console (~ key) and type:
bot_add
That's it. A bot joins the next round with a random name and picks a team. Repeat the command for more bots — up to whatever the server's maxplayers allows.
Team-specific:
bot_add_t // add a Terrorist
bot_add_ct // add a Counter-Terrorist
Kick all bots:
bot_kick
Kick a specific bot by name:
bot_kick "Steve"
Console isn't opening?
Enable it first: Options → Keyboard → Advanced → tick "Enable developer console". Then press ~ (tilde, top-left of the keyboard, above Tab).
Full walkthrough: CS 1.6 console commands guide.
Bot difficulty — the four tiers
bot_difficulty 0 // Easy — bad aim, hesitant, misses obvious shots
bot_difficulty 1 // Normal — decent aim, still exploitable
bot_difficulty 2 // Hard — snappy tracking, uses grenades
bot_difficulty 3 // Expert — one-tap headshots, near-perfect crosshair placement
Set BEFORE starting a match. Existing bots stick with the difficulty they spawned at until they're kicked and re-added.
For warm-up: start with 2 (Hard). Expert bots are honestly harder than most public-server humans — great for reflex training, frustrating if you just want to farm frags.
Bot personalities — quotas and mix
Beyond difficulty, ZBot has personality — how each bot plays.
bot_quota 8 // total number of bots the server tries to keep
bot_quota_mode fill // 'fill' = keep total players at bot_quota, minus humans
bot_quota_mode normal // 'normal' = always bot_quota bots regardless of humans
Set bot_quota 8 + bot_quota_mode fill and you'll always have an 8-player match no matter who joins or leaves.
Force specific personality mix:
bot_prefix "BOT" // prefix every bot's name with "BOT" (helps spot them)
bot_join_team any // 'any' | 'T' | 'CT' — restrict where bots go
bot_join_after_player 0 // 0 = bots join immediately; 1 = only after a human
Custom bot names
ZBot rotates through the names in czero_bot_profile.db (Half-Life\cstrike\ folder). Edit that file to seed your own names — one per line, with an optional weapon preference:
+Steve K1 ; Steve prefers AK-47 primary
+Marge K2 ; Marge prefers M4A1
Weapon codes:
| Code | Weapon |
|---|---|
K1 |
AK-47 |
K2 |
M4A1 |
K3 |
AWP |
K4 |
Deagle |
Restart the game after editing. Custom names show up in the scoreboard next round.
Native Turkish, Russian, Polish, German, Bulgarian etc. names work fine — GoldSrc reads UTF-8 in the profile file.
Bots in specific game modes
Classic bomb-defusal (de_ maps)
Default behavior. Bots plant, defuse, rotate — actually plays a coherent game.
mp_freezetime 3
mp_roundtime 1.75
bot_defer_to_human 1 // if a bot has the bomb, drops it near a human on plant
Hostage rescue (cs_ maps)
Bots handle rescue OK but rarely coordinate. Add more Counter-Terrorists than Terrorists — CT-side hostage rescue against Terrorist bots hosting up is legitimate practice.
Deathmatch / CSDM
ZBot doesn't understand instant-respawn rules by default. Add a CSDM plugin server-side, or use the classic mp_deathcamera 0 + mp_freezetime 0 combo for a rough approximation.
Full breakdown: CS 1.6 Deathmatch (CSDM) guide.
Zombie / JailBreak / Deathrun
ZBot doesn't understand any custom mod. It'll wander the map confused. Community bot systems like YaPB have better mod awareness but still don't fully "get" zombie physics.
For modded play, humans-only servers are the norm.
Advanced bot commands
Complete command reference. Most default to sensible values; touch only what you know you need.
| Command | Default | What it does |
|---|---|---|
bot_add |
— | Add one bot |
bot_add_t / bot_add_ct |
— | Add to specific team |
bot_kick |
— | Kick all bots |
bot_kill |
— | Kill all bots (they respawn next round) |
bot_difficulty <0-3> |
1 | Skill tier |
bot_quota <0-32> |
0 | Target bot count |
bot_quota_mode <fill\|normal> |
normal | See "personalities" section |
bot_prefix "<str>" |
"" | Prepend string to bot names |
bot_join_team <any\|T\|CT> |
any | Which teams bots may join |
bot_join_after_player <0\|1> |
0 | Wait for a human before spawning |
bot_defer_to_human <0\|1> |
0 | Hand off objectives to humans |
bot_allow_pistols <0\|1> |
1 | Bots may buy pistols |
bot_allow_rifles <0\|1> |
1 | Bots may buy rifles |
bot_allow_snipers <0\|1> |
1 | Bots may buy snipers |
bot_allow_shotguns <0\|1> |
1 | Bots may buy shotguns |
bot_allow_sub_machine_guns <0\|1> |
1 | Bots may buy SMGs |
bot_allow_machine_guns <0\|1> |
1 | Bots may buy the M249 |
bot_allow_grenades <0\|1> |
1 | Bots may buy grenades |
bot_walk <0\|1> |
0 | Force bots to walk (silent movement) |
bot_stop <0\|1> |
0 | Freeze all bots (debug only) |
bot_chatter <off\|minimal\|normal> |
normal | Bot radio chatter volume |
bot_zombie <0\|1> |
0 | 1 = bots do nothing (crosshair practice) |
bot_zombie 1 is the classic aim-training trick — spawn a wave of stationary bots and practice crosshair placement + spray control. Set bot_difficulty 0 first so they can't fight back if you flip the switch off.
ZBot vs YaPB vs POD-Bot — which one?
Every WarzoneCS installer ships with ZBot pre-installed. That's what all the commands above are for. But if you host a public server or run offline sessions with mods, you'll see server admins mention two alternatives:
- YaPB (Yet another POD-Bot) — Community rewrite. Better waypoint navigation on custom maps, faster reflexes on Expert. Ships as an AMX Mod X plugin. Server-side install only.
- RCBot — Similar to YaPB, less actively maintained. Slightly better with grenade throws.
- POD-Bot mm — Legacy option. Runs but development stopped years ago.
For solo practice or a LAN party: ZBot is fine. You don't need to touch YaPB.
For hosting a bots-only public server that plays custom maps: install YaPB via AMX Mod X + waypoints for each custom map. That's server-admin territory — the choose your version page has notes on which builds ship a compatible AMX Mod X out of the box.
LAN party bot filling
Classic use case: 4-6 humans, want a full 5v5 game. Add bots to top up both sides.
bot_quota 10
bot_quota_mode fill
bot_join_team any
bot_difficulty 1
With 4 humans connected, ZBot spawns 6 bots split roughly evenly between teams. When a 5th human joins, one bot leaves automatically. Painless.
For LAN, set sv_lan 1 and bot_add in the host's console. Bots are LAN-mode-transparent — everyone sees them the same.
Full LAN setup: install any WarzoneCS build on the host, run a listen server, remote clients connect via the host's LAN IP.
Common bot problems
"Bots don't move / stand still at spawn." Map has no waypoints for ZBot. This is common on custom maps (kz, aim, awp_). Load a stock map (de_dust2, cs_office) and bots move fine. For custom maps, either use YaPB with matching waypoints or accept the wandering.
"bot_add doesn't do anything."
Either you're on a server that has bot_add disabled (99% of public servers do — they don't want spam), or your listen-server has bot_quota_mode normal + bot_quota 0. Set bot_quota 8 first, then bot_add will register.
"Bots keep camping."
Set bot_difficulty up to 2 or 3. Easy bots hesitate; harder bots actually push.
"Bot names all look wrong / garbled."
czero_bot_profile.db needs to be UTF-8 without BOM. Windows Notepad saves BOM by default — use Notepad++ or VS Code, choose "UTF-8 (no BOM)" on save.
"Bots buy the wrong weapons on eco rounds."
bot_allow_sub_machine_guns 1 + bot_allow_shotguns 1. Some default configs disable eco weapons and bots go full rifle even at $800.
"Bots don't defuse the bomb."
Set bot_defer_to_human 0. With defer on, bots wait for a human CT to lead defuse — if there's no human, the round loses.
What next?
- CS 1.6 console commands guide — everything else you can tune from
~ - CS 1.6 Deathmatch (CSDM) guide — bots + instant respawn
- Choose your version — 13 client builds, which ship YaPB, which ship ZBot only
- Install guide — get any build running in under 5 minutes