# Useful Commands

### CS:GO Practice Mode Commands

These commands are to be used in the chatbox, utilize alphabet key `T` in-game to enable chatbox.

{% tabs %}
{% tab title="Practice Mode Commands" %}

## Useful commands

Start practice mode

```
.setup
```

Opens the client settings menu

```
.settings
```

Makes you respawn at the spot you are standing (`.stop` to cancel)

```
.respawn
```

Toggles god mode (alias for the `god` command in console; requires sv\_cheats to be on)

```
.god
```

Ends the round (alias for the `endround` command in console; requires sv\_cheats to be on)

```
.endround
```

Opens the bot menu for easier access to most of the below commands

```
.bots
```

Adds a bot where you're standing (or crouching!)&#x20;

```
.bot
```

To force a crouching bot

```
.crouchbot
```

`.ctbot`, `.tbot`: same as `.bot`, but forces the bot's team to CT or T

```
.ctbot
```

```
.tbot
```

Adds a bot at the point you're looking at (similar to the `bot_place` command)

```
.botplace
```

Removes the bot you're aiming at (can also use `.kickbot` or `.removebot`)

```
.nobot
```

Clears all bots (`.clearbots`, `.removebots`, `.kickbots` also work)

```
.nobots
```

{% endtab %}

{% tab title="Competitive Server Commands" %}
**CLIENT commands:**

* `/ready` - Marks you ready if `/readyup` has been done or `wm_autoready` is 1. Aliases: `/rdy`, `/r`
* `/unready` - Marks you not ready if `/readyup` has been done or `wm_autoready` is 1. Aliases: `/notready`, `/unrdy`, `/notrdy`, `/ur`, `/nr`
* `/scores` - Displays score if live. Aliases: `/score`, `/s`
* `/info` - Display who the ready panel if closed. Aliases: `/i`

**ADMIN commands:**

* `/notlive` - Cancels half and sets all as unready. Aliases: `/nl`, `/cancelhalf`, `/ch`
* `/cancelmatch` - Cancels half and sets all as unready. Aliases: `/cm`
* `/readyup` - If `wm_autoready` is 0, this command will be required to start/stop the ready system. Aliases: `/ru`
* `/readyon` - Turns on or restarts the ReadyUp System. Aliases: `/ron`
* `/readyoff` - Turns off the ReadyUp System if enabled. Aliases: `/roff`
* `/forceallready` - Forces all players to become ready. Aliases: `/far`
* `/forceallunready` - Forces all players to become unready. Aliases: `/faur`
* `/forcestart` - Starts the match regardless of player and ready count. Aliases: `/fs`
* `/forceend` - Ends the match regardless of status. Aliases: `/fe`
* `/minready <num>` - Set or display the `wm_min_ready` console variable
* `/maxrounds <num>` - Set or display the `wm_max_rounds` console variable
* `/aswap` - Manually swaps all players to the opposite team
* `/t` & `/ct` - Will set the Terrorist and Counter-Terrorist team names - Note: No longer changes the cvars `wm_t` and `wm_ct`
* `/active` - Toggles the CVAR `wm_active`
* `/knife` - Removes all money + weapons + c4 and executes `wm_knifeconfig`. Aliases: `/ko3`
* `/cancelknife` - Cancels the knife round. Aliases: `/ck`
  {% endtab %}

{% tab title="Fun" %}

## Useful fun commands

Change weapon/knife skin

```
.ws
```

Change glove skin

```
!glove
```

{% endtab %}

{% tab title="All Commands" %}

## General commands

Opens the client settings menu

```
.settings
```

## Saving grenade positions

Displays a menu to select saved grenade positions. `.nades` with no argument shows all nades. `filter` can be any of: nade ids, category name, player name, or part of a grenade name

```
.nades [filter]
```

Displays a menu of all saved grenades by category

```
.cats
```

Saves your current position as a grenade spot with the given name

```
.save <name>
```

Teleports you to a player's saved grenade (or your own if no player is named)

```
.goto <grenadeid>
```

Deletes the last grenade of yours that you used .goto (or .nades) to teleport to

```
.delete
```

Searches all grenade names for a text match

```
.find <text>
```

## Modifying a saved grenade

All of the following commands can only be used on *your* grenades. They will apply to the last saved grenade you went to, whether by `.save`, `.nades`, or `.goto`.

Adds a grenade description to your last grenade

```
.desc <description>
```

Renames your last grenade

```
.rename <new name>
```

Adds a category to your last grenade

```
.addcat <category> ...
```

Removes a category from your last grenade

```
.removecat <category>
```

Removes all categories on your last grenade

```
.clearcats
```

Removes a category from **all** of your saved grenades

```
.deletecat <category>
```

Copies another user's grenade and saves it for you

```
.copy <username> <grenadeid>
```

Sets a delay on your last grenade. This is only used when using .throw against a category

```
.setdelay <delay>
```

## Testing grenades

Teleports you back to where you threw your last grenade from

```
.last
```

Teleports you back a position in your grenade history (you can also do `.back 5` to go to the 5th grenade you threw, for example)

```
.back
```

Teleports you forward a position in your grenade history

```
.forward
```

Saves you position to test flashbangs against it. Use this command in a spot you want to try to blind, then move and throw the flashbang; you will be teleported back to the position and see how effective the flashbang is. Use `.stop` to cancel.

```
.flash
```

Automatically throws all grenades matching the filter. With no filter, throws the last grenade you threw.

```
.throw [filter]
```

Makes it so no flashbangs will blind you (they still blind others)

```
.noflash
```

####

## Spawn commands

Makes you respawn at the spot you are standing (`.stop` to cancel)

```
.respawn
```

Teleports you to a spawn #, using your team's spawns (CT or T). Closest spawn is used if no argument is given

```
.spawn <number>
```

Same as .spawn, but using CT only regardless of what team you are on

```
.ctspawn <number>
```

Same as .spawn, but using T only regardless of what team you are on

```
.tspawn <number>
```

Saves the closest spawn to you under a name, which can then be gone to via `.spawn <name>`

```
.namespawn <name>
```

Teleports you to your team's closest spawn from your current position

```
.bestspawn
```

Teleports you to your team's furthest spawn from your current position

```
.worstspawn
```

## Bot commands

Opens the bot menu for easier access to most of the below commands

```
.bots
```

Adds a bot where you're standing (or crouching!); `.crouchbot` to force a crouching bot

```
.bot
```

Same as `.bot`, but forces the bot's team to CT or T

```
.ctbot
```

```
.tbot
```

Adds a bot at the point you're looking at (similar to the `bot_place` command)

```
.botplace
```

Spawns a bot boosting you (crouch-boosting if you're crouching); `.crouchboost` to force a crouching bot

```
.boost
```

Swaps your position with the nearest bot (temporarily, the bot will respawn in the original spot still)

```
.swapbot
```

Moves the last bot you placed to your current position

```
.movebot
```

Removes the bot you're aiming at (can also use `.kickbot` or `.removebot`)

```
.nobot
```

Clears all bots (`.clearbots`, `.removebots`, `.kickbots` also work)

```
.nobots
```

Saves all current bots to a file

```
.savebots
```

Loads bots from the file (written by the last `.savebots`)

```
.loadbots
```

## Miscellaneous commands

Starts a timer when you start moving in any direction, and stops it when you stop moving, telling you the duration of time between starting/stopping

```
.timer
```

Starts a timer immediately and stops it when you type .timer2 again, telling you the duration of time

```
.timer2
```

Starts a countdown timer for the duration specified (in seconds), defaulting to the round duration (the `mp_roundtime` cvar).

```
.countdown <duration>
```

Speeds up the server clock briefly so smokes dissipate quickly

```
.ff
```

Give a number of seconds and a chat command, the command will automatically repeat at the given interval. For example: `.repeat 3 .throw` repeats .throw every 3 seconds

```
.repeat <interval> <command>
```

Runs the given chat command after a given duration (in seconds)

```
.delay <duration> <command>
```

Changes map (you can use a map name like `.map de_dust2` or just `.map` to get a menu)

```
.map
```

Disables most practicemode settings (leaving infinte money on), restarts the round, and sets freezetime to `sm_practicemode_dry_run_freeze_time` (default 6) - you can also use `.dry`

```
.dryrun
```

Enables a partially-named setting, or "all" settings.

```
.enable <arg>
```

Disables a partially-named setting, or "all" settings.

```
.disable <arg>
```

Temporarily saves a position so you can `.back` to it (this adds the position to the list of grenade positions you've thrown)

```
.savepos
```

Toggles god mode (alias for the `god` command in console; requires sv\_cheats to be on)

```
.god
```

Ends the round (alias for the `endround` command in console; requires sv\_cheats to be on)

```
.endround
```

Breaks all func\_breakable entities (most windows)

```
.break
```

Cancels a current action (this can stop many things: the .flash command, the .repeat command, and the .timer command)

```
.stop
```

`.spec`, `.t`, `.ct`: joins a team

```
.spec
```

```
.t
```

```
.ct
```

## Bot replay commands

**Note:** bot replay support is currently a work in progress. It's not ready for general use yet. Installing the [dhooks extension](http://users.alliedmods.net/~drifter/builds/dhooks/2.2/) is also a good idea if you plan using these commands. Expect random crashes if you use these.

Opens replay mode menu

```
.replays
```

Opens the replay mode menu, or the last replay/role menu you had open

```
.replay
```

Names the replay you're currently working on

```
.namereplay
```

Names the role you're currently working on

```
.namerole
```

Finishes and saves current recording

```
.finish
```

Cancels current replay/recording

```
.cancel
```

Plays a replay id (all the roles), or a single role from a replay

```
.play <id> [role]
```

Also see the [notes for power users](https://github.com/splewis/csgo-practice-mode/wiki/Notes-for-power-users) for more detail on using these commands effectively.
{% endtab %}
{% endtabs %}

####
