Private customers Business customers

Create a CS2 practice configPractice nades: trajectories, infinite ammo, rethrow

To practice smokes, flashes and molotovs, you need a server in practice mode: with visible throw trajectories, infinite ammo and money, and no round end. Here you find a ready-made practice.cfg for Counter-Strike 2 and an explanation of the most important cvars.

sv_cheats 1Nade trajectoriesRethrow

Published on · last updated on

Ready-made practice.cfg

Put the following file on your server as game/csgo/cfg/practice.cfg (via WebFTP or SFTP) and load it with exec practice:

sv_cheats 1
mp_limitteams 0
mp_autoteambalance 0
mp_maxmoney 60000
mp_startmoney 60000
mp_buytime 9999
mp_buy_anywhere 1
mp_freezetime 0
mp_roundtime 60
mp_roundtime_defuse 60
mp_respawn_immunitytime 0
sv_infinite_ammo 1
ammo_grenade_limit_total 5
sv_grenade_trajectory 1
sv_grenade_trajectory_time 10
sv_showimpacts 1
mp_warmup_end
mp_restartgame 1
bot_kick

CS2 server hosting from €5.99 / month

Prepaid without a contract, DDoS protection up to 250 Gbit/⁠s.

View plans & prices

What the most important cvars do

  • sv_cheats 1 - unlocks the practice cvars (trajectories, impacts). Only sensible on private practice servers.
  • sv_infinite_ammo 1 - infinite ammo without reloading; you throw nades in series.
  • sv_grenade_trajectory 1 and sv_grenade_trajectory_time 10 - show the flight path of thrown grenades for 10 seconds.
  • sv_showimpacts 1 - visualizes impacts (useful for one-ways and lineups).
  • mp_maxmoney/mp_startmoney 60000 + mp_buy_anywhere 1 - full money, buy anywhere.
  • mp_roundtime 60 + mp_freezetime 0 - a practically endless round without waiting time.

Useful binds: rethrow and noclip

For efficient lineup training, two binds in your config or console help:

bind "h" "sv_rethrow_last_grenade"
bind "n" "noclip"

sv_rethrow_last_grenade repeats the last throw exactly - ideal for refining a smoke lineup. noclip lets you fly freely through the map to check landing spots. A permanent practice server is best set up on your own CS2 server - you upload configs via WebFTP and schedule automatic restarts in the task scheduler.

Loading the config permanently

A practice.cfg that you run by hand is gone again after the next map change - CS2 loads the default configs at map start and overwrites most values. For a practice server that is ready at any time, there are two ways:

  • By hand when needed: exec practice in the console or via RCON, again after every map change. Handy if the same server is also used for normal rounds.
  • Permanently: take the values over into the server.cfg or call the practice.cfg from a config that is loaded at every map start. Then the server is a practice server all the time.

If you want both, it is best to run two tracks: the normal configuration as the default, and the practice values switched on by command. That way, the same server stays usable for both, without anyone accidentally playing a match with infinite ammo.

Practicing in pairs or as five

A practice server for a team works differently from one for practicing alone, and a few settings make the difference:

  • Set the round time high. Nothing interrupts a lineup session more reliably than a round end in the middle of a throw. A very long round time is practically mandatory on a practice server.
  • Friendly fire off. When practicing together, someone is always in the way. Without team damage, you spare yourselves the arguments.
  • Use bots selectively. They get in the way for lineups but are useful for position training - see set up bots. Plan a bind for quickly adding and removing them.

For structured team practice, a mode of its own is the better choice at some point: executes for coordinated attacks, retakes for the post-plant. Alongside, the practice server remains the tool for lineups and individual drills.

When commands do not work

Two things regularly block things on a practice server:

Cheats are not activated. Commands such as noclip, sv_rethrow_last_grenade or showing grenade paths require sv_cheats 1. Without this value, the console answers every attempt with a note about missing permission. On a pure practice server, that is harmless - on a server that is also used for playing, it should be switched off again afterwards.

The client may not run the commands. Some commands only run server-side. If a bind does nothing for you, try the same command via RCON - if it responds there, it is missing in-game rights, not a typo.

Frequently asked questions

Set sv_cheats 1 and sv_grenade_trajectory 1 (optionally sv_grenade_trajectory_time 10 for a longer display). Then the flight path of every thrown grenade is shown.

sv_infinite_ammo 1 gives infinite ammo without reloading. With ammo_grenade_limit_total, you set how many grenades you may carry at the same time - together with full money, you can practice as long as you like.

With sv_rethrow_last_grenade, the last throw is repeated exactly - best bound to a key. That way, you refine a lineup without repositioning every time.

Rent your own CS2 server

Sub-tick optimized hardware, unlimited slots, Workshop maps, Metamod:Source & CounterStrikeSharp - prepaid, made in Germany.

View plans & prices

CS2 server hosting

from €5.99 / month

Prepaid without a contract, DDoS protection up to 250 Gbit/⁠s, hosted in Frankfurt am Main.

View plans & prices

Go straight to checkout

Read more


Discover more