How to Set Up a CS2 Practice Server: Full CFG and Commands

11 min readWinio Team
How to Set Up a CS2 Practice Server

How to set up a practice server in CS2

A local Counter-Strike 2 practice server lets you learn grenade lineups, test wallbangs, position bots, and work on angles across the competitive map pool without normal match restrictions.

Instead of entering dozens of console commands every time, you can save them in a single practice.cfg file. After loading a local map, open the developer console and run one command:

exec practice

The exec command runs every command stored in the specified CFG file. You can then edit the file for a particular session: keep only the grenade tools, add bots, or enable instant respawns.

Ready-made practice.cfg for CS2

The complete config below is designed for solo practice. It enables:

  • extended round time and disabled round win conditions;
  • buying anywhere on the map for almost the entire round;
  • $60,000 starting, maximum, and after-round money;
  • unlimited ammunition and reusable grenades;
  • grenade trajectory preview and a longer trajectory trail;
  • rethrowing the last grenade;
  • bullet-impact markers;
  • bot placement, bot freezing, and bot removal;
  • noclip movement around the map.
// =====================================
// Winio CS2 Practice Config
// =====================================

// Enable protected practice commands
sv_cheats 1

// End warmup
mp_warmup_end

// Disable team limits and auto-balance
mp_limitteams 0
mp_autoteambalance 0

// Remove freeze time
mp_freezetime 0

// Extend round time
mp_roundtime 60
mp_roundtime_defuse 60
mp_roundtime_hostage 60

// Prevent normal win conditions from ending the round
mp_ignore_round_win_conditions 1

// Money and buying
mp_maxmoney 60000
mp_startmoney 60000
mp_afterroundmoney 60000
mp_buytime 9999
mp_buy_anywhere 1

// Unlimited ammunition and grenades
sv_infinite_ammo 1
ammo_grenade_limit_total 5

// Grenade trajectory tools
sv_grenade_trajectory_prac_pipreview 1
sv_grenade_trajectory_prac_trailtime 15

// Bullet impacts
sv_showimpacts 1
sv_showimpacts_time 10

// Respawn after death
mp_respawn_on_death_ct 1
mp_respawn_on_death_t 1

// Remove all bots when the config loads
bot_kick

// Fly around the map
bind "mouse4" "noclip"

// Rethrow the last grenade
bind "mouse5" "sv_rethrow_last_grenade"

// Place an existing bot where you are aiming
bind "n" "bot_place"

// Freeze and unfreeze bots
bind "j" "bot_stop 1"
bind "k" "bot_stop 0"

// Restart the round with the new settings
mp_restartgame 1

echo "WINIO PRACTICE CFG LOADED"

Important: The protected commands in this config require sv_cheats 1 and are intended for a local practice session. They do not give you control over official Valve or third-party servers.

Who wins?

All Matches
All matches and predictions

Where to install practice.cfg

Open the Counter-Strike 2 installation folder. With Steam installed in its default Windows location, the CFG directory is:

C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg

If Steam or CS2 is installed on another drive:

  1. Find Counter-Strike 2 in your Steam Library.
  2. Right-click the game and select Properties.
  3. Open Installed Files.
  4. Select Browse.
  5. Open game, then csgo, then cfg.

Create a new text document in the cfg folder, paste the complete config into it, and save the file as:

practice.cfg

Windows note: Make sure the file is not saved as practice.cfg.txt. In Notepad, choose All files in the file-type menu when saving, or enable file-name extensions in File Explorer.

How to enable the developer console in CS2

Open CS2 Settings, go to the Game tab, and set Enable Developer Console (~) to Yes. Depending on your game language, the wording may vary slightly.

The console normally opens with the ~ key on an English keyboard. If that key is inconvenient on your layout, assign another key in the keyboard settings.

How to launch a CS2 practice server

The simplest method is to start the map through the game menu:

  1. Open the Practice or play-with-bots section.
  2. Choose the Competitive ruleset.
  3. Load the map you want to practice.
  4. Open the developer console.
  5. Enter exec practice and press Enter.

The config restarts the round once, after which the practice settings should be active.

You can also load an official map directly from the console:

map de_dust2
map de_inferno
map de_nuke
map de_ancient
map de_anubis
map de_train

The map command loads the specified map, but the active game mode can depend on your previous settings. For beginners, loading a local map through the menu first and then running exec practice is usually more reliable.

How to practice grenades in CS2

Four commands form the core of a useful grenade-practice setup.

Unlimited grenades

sv_infinite_ammo 1

Thrown grenades return to your inventory, and your weapon does not need to reload. This lets you repeat the same lineup without reopening the buy menu.

If you want unlimited reserve ammunition while keeping normal reloads, use:

sv_infinite_ammo 2

Grenade trajectory preview

sv_grenade_trajectory_prac_pipreview 1

This enables the practice picture-in-picture preview for a grenade's flight and result. It helps you see where the grenade hits a surface and where it detonates or blooms.

Set how long the trajectory trail remains visible with:

sv_grenade_trajectory_prac_trailtime 15

The value is measured in seconds.

Rethrow the last grenade

sv_rethrow_last_grenade

This repeats your most recent throw from the same position. Move to the landing area first, then use the command to check a smoke, flash, HE grenade, or Molotov from an opponent's point of view.

The full config binds the command to the second side mouse button:

bind "mouse5" "sv_rethrow_last_grenade"

Replace mouse5 with any convenient key if needed, for example:

bind "r" "sv_rethrow_last_grenade"

Fly around the map with noclip

noclip

Noclip disables collision and lets you move quickly around the map. The full config binds it to mouse4:

bind "mouse4" "noclip"

Noclip, grenade rethrow, and several other practice tools are protected commands. They require sv_cheats 1 and should be used on a local server.

How to add and control bots in CS2

The full CFG removes all bots when it loads:

bot_kick

You can then add only the bots you need.

Add a Counter-Terrorist bot:

bot_add_ct

Add a Terrorist bot:

bot_add_t

Remove all bots:

bot_kick

Move an existing bot to the point under your crosshair:

bot_place

The full config binds bot_place to N:

bind "n" "bot_place"

Before using bot_place: Add at least one bot with bot_add_ct or bot_add_t. If no bot exists on the map, there is nothing for the command to move.

How to freeze bots in CS2

bot_stop 1

Bots stop moving and performing their normal actions. To make them active again, use:

bot_stop 0

The full config uses two separate keys:

bind "j" "bot_stop 1"
bind "k" "bot_stop 0"

How to get unlimited money and buy anywhere

These commands control the practice-server economy:

mp_maxmoney 60000
mp_startmoney 60000
mp_afterroundmoney 60000

The first sets the money cap, the second sets your starting balance, and the third grants money after a round.

To keep the buy menu available for almost the entire round and use it outside the normal buy zone, add:

mp_buytime 9999
mp_buy_anywhere 1

After changing starting money, restart the round so the new value can be applied:

mp_restartgame 1

How to make rounds effectively endless

For bomb-defusal maps, use:

mp_roundtime_defuse 60

The value 60 means 60 minutes.

For hostage maps, use:

mp_roundtime_hostage 60

The full config also prevents standard win conditions from ending the round:

mp_ignore_round_win_conditions 1

Without that setting, a round can still end after the last player on one team dies or after the bomb is detonated or defused. Restore normal win conditions with:

mp_ignore_round_win_conditions 0

How to practice wallbangs and bullet impacts

sv_showimpacts 1

This displays bullet-impact markers. In Valve's convention, red represents the client-side result and blue represents the server-side result.

Control how long the markers remain visible with:

sv_showimpacts_time 10

Impact markers are useful for checking:

  • wallbangs through walls, doors, and boxes;
  • weapon spread;
  • spray transfers;
  • shots fired while moving;
  • differences between the crosshair position and the actual bullet path.

Disable impact markers with:

sv_showimpacts 0

A lightweight grenade-only CFG

If you do not need bots or bullet-impact markers, use this shorter version:

sv_cheats 1
mp_warmup_end
mp_freezetime 0
mp_roundtime 60
mp_roundtime_defuse 60
mp_ignore_round_win_conditions 1
mp_maxmoney 60000
mp_startmoney 60000
mp_buytime 9999
mp_buy_anywhere 1
sv_infinite_ammo 1
ammo_grenade_limit_total 5
sv_grenade_trajectory_prac_pipreview 1
sv_grenade_trajectory_prac_trailtime 15
bind "mouse4" "noclip"
bind "mouse5" "sv_rethrow_last_grenade"
mp_restartgame 1

Save the file as:

grenades.cfg

Then launch it with:

exec grenades

Useful extra CS2 practice commands

Restart the round

mp_restartgame 1

End warmup

mp_warmup_end

Freeze or restore simulation speed

host_timescale 0

Restore normal speed with:

host_timescale 1

Use with care: host_timescale changes the speed of the entire local-server simulation. If a value of 0 behaves inconsistently after an update, reconnect to the local map or restore the value to 1.

Give yourself a weapon

give weapon_ak47
give weapon_m4a1_silencer
give weapon_awp
give weapon_deagle

Give yourself grenades

give weapon_smokegrenade
give weapon_flashbang
give weapon_hegrenade
give weapon_molotov
give weapon_incgrenade

The give commands require sv_cheats 1.

Remove a bind from the CFG

For example, remove the action assigned to mouse5 with:

unbind mouse5

The button will no longer repeat the last grenade throw.

Why practice.cfg is not working

The console says: couldn't exec practice

CS2 cannot find the file. Check that:

  • practice.cfg is inside game/csgo/cfg;
  • the file was not saved as practice.cfg.txt;
  • the file name matches exec practice;
  • the CFG is not inside an extra nested folder.

Noclip does not work

Run:

sv_cheats 1

Also confirm that you launched a local map. Players cannot change protected server variables on official servers.

You do not receive $60,000

Run:

mp_restartgame 1

Starting money is normally applied when a new round begins.

The round still ends

Run the following command again:

mp_ignore_round_win_conditions 1

Also check whether another CFG was executed after practice.cfg and restored standard round settings.

bot_place does nothing

Add a bot first:

bot_add_ct

Then aim at the desired spot and use bot_place again.

How to restore normal CS2 settings

The simplest option is to leave the local server and start a normal match. Local practice-server variables do not carry over to official servers.

To disable the main practice settings without leaving the current session, run:

sv_cheats 0
sv_infinite_ammo 0
sv_grenade_trajectory_prac_pipreview 0
sv_showimpacts 0
mp_ignore_round_win_conditions 0
mp_buy_anywhere 0
mp_respawn_on_death_ct 0
mp_respawn_on_death_t 0
bot_stop 0

Afterward, reloading the map is the safest way to return to a clean session.

How to use a practice server effectively

Do not limit your session to mechanically repeating the same lineup. A more useful training loop looks like this:

  1. Throw the grenade with trajectory preview enabled.
  2. Use noclip to move to the detonation or bloom point.
  3. Run sv_rethrow_last_grenade.
  4. Check what an opponent would see from a key position.
  5. Place a bot there with bot_place.
  6. Repeat the throw while moving and from slightly different angles.
  7. Disable the trajectory preview and reproduce the lineup without assistance.

This process tells you more than whether a smoke reaches its target. It reveals possible gaps, how quickly the grenade becomes effective, and whether the lineup is practical in a real round.

Turn practice into better match understanding

Once you finish your individual session, look for the same utility, positioning, and timing ideas in professional matches. Winio combines team statistics, player form, and model-based predictions for upcoming CS2 fixtures, helping you connect what happens on the server with the data behind each matchup.

CS2
Fiesta Series #2: CQ
train launcher

train launcher

Live
Kamui

Kamui

CS2
CCT Eu 2026 Series #8
INOX Division

INOX Division

Live
Zero Tenacity

Zero Tenacity

CS2
St Ranked Episode 4: CQ
Nemesis

Nemesis

Today20:30
Nemiga

Nemiga

CS2
CCT Eu 2026 Contenders #9
A

Anger

Today21:15
TSA Black

TSA Black

CS2
CCT Eu 2026 Contenders #9
M

MADMANgg

Today21:30
P

pivstar

CS2
CCT Eu 2026 Challengers #6
SAW Youngsters

SAW Youngsters

Tomorrow14:00
Misa

Misa

Prediction: SAW Youngsters wins

61%39%
CS2
Fiesta Series #2: CQ
train launcher

train launcher

Live
Kamui

Kamui

CS2
CCT Eu 2026 Series #8
INOX Division

INOX Division

Live
Zero Tenacity

Zero Tenacity

CS2
St Ranked Episode 4: CQ
Nemesis

Nemesis

Today20:30
Nemiga

Nemiga

CS2
CCT Eu 2026 Contenders #9
A

Anger

Today21:15
TSA Black

TSA Black

CS2
CCT Eu 2026 Contenders #9
M

MADMANgg

Today21:30
P

pivstar

CS2
CCT Eu 2026 Challengers #6
SAW Youngsters

SAW Youngsters

Tomorrow14:00
Misa

Misa

Prediction: SAW Youngsters wins

61%39%

Other Articles on CS 2

CS2 vs VALORANT Sponsorships: Who Funds Top Teams?

CS2 vs VALORANT Sponsorships: Who Funds Top Teams?

Compare esports sponsorships in CS2 and VALORANT. See why betting brands dominate CS2 while hardware companies lead the VALORANT market.

Best BO3 Teams to Trust in CS2 Right Now

Best BO3 Teams to Trust in CS2 Right Now

A ranking of the most reliable CS2 teams in BO3 series over the past two months. The analysis considers series win rate, map pool depth, first-map conversion, comeback ability and decider performance.

EWC 2026 CS2: Winio Prediction Review and Results

EWC 2026 CS2: Winio Prediction Review and Results

A data-driven review of EWC 2026 CS2, including Spirit’s title, FUT’s breakout, Legacy’s upsets and 87% prediction accuracy from Winio.

BLAST Open Porto 2026 CS2: Schedule, Teams and Format

BLAST Open Porto 2026 CS2: Schedule, Teams and Format

BLAST Open Porto 2026 runs from August 26 to September 6. See the CS2 schedule, groups, format, prize pool, map pool and Winio Power Ranking.

Why Predicting a 2–0 Is Harder Than Predicting the Match Winner

Why Predicting a 2–0 Is Harder Than Predicting the Match Winner

Predicting a 2–0 requires more than identifying the stronger team. Here’s why forecasting a clean sweep in a BO3 is significantly harder than simply picking the match winner.

Dead Hand Collection in CS2: All Skins, Gloves and Terminal Mechanics

Dead Hand Collection in CS2: All Skins, Gloves and Terminal Mechanics

The Dead Hand Collection brought 17 community-created weapon skins and 22 new glove finishes to CS2. Here’s how the collection works, which items it includes, and how the Terminal mechanics differ from traditional cases.

How to Change Gamma in CS2

How to Change Gamma in CS2

This guide explains how gamma and brightness work in CS2 and how to adjust them for better visibility. It also covers monitor and GPU settings that can improve clarity without hurting performance.