Running Different Gamemodes on Your GMod Server
How to switch between built-in and community gamemodes like DarkRP, TTT, and Deathrun, including install paths and recommended tickrate settings.
How Gamemodes Work
GMod gamemodes live in:
garrysmod/gamemodes/<gamemodename>/
Every gamemode needs at minimum two Lua files:
garrysmod/gamemodes/<gamemodename>/gamemode/init.lua # Server-side
garrysmod/gamemodes/<gamemodename>/gamemode/cl_init.lua # Client-side
The <gamemodename> folder name must exactly match what you pass to +gamemode. A mismatch causes the error Couldn't include file 'lua/init.lua' and the server falls back to sandbox.
Setting the Active Gamemode
Via Pterodactyl
Set the GAMEMODE startup variable to the gamemode folder name. No quotes needed.
Via launch flags
+gamemode darkrp
Via server.cfg
sv_defaultgamemode "darkrp"
The launch flag takes priority over server.cfg. Use the GAMEMODE variable in Pterodactyl, which maps to the launch flag.
Built-in Gamemodes
These ship with every GMod server install and require no additional download:
| Gamemode name | Description |
|---|---|
sandbox |
Default; free-form building |
terrortown |
Trouble in Terrorist Town (TTT) |
base |
Bare framework used by other gamemodes |
Community Gamemodes
Community gamemodes must be installed manually. The folder name used on disk must match the +gamemode value exactly.
DarkRP
garrysmod/gamemodes/darkrp/
Launch with +gamemode darkrp. See the DarkRP setup article for full installation instructions.
Other Common Gamemodes
| Gamemode | Folder name | Map prefix |
|---|---|---|
| DarkRP | darkrp |
rp_ |
| Deathrun | deathrun |
deathrun_ |
| Prop Hunt | prop_hunt |
ph_ |
| Murder | murder |
mu_ |
| TTT | terrortown |
ttt_ |
Map naming is not enforced — it is a community convention. Selecting a map with the wrong prefix will still work, but mismatched maps often lack the layout expected by the gamemode.
Tickrate Recommendations
Set tickrate at launch with -tickrate <value>. This cannot be changed at runtime.
| Gamemode | Recommended tickrate | Reason |
|---|---|---|
| DarkRP, RP gamemodes | 33 |
High player counts; lower tick reduces CPU load |
| TTT | 66 |
Precise hit detection matters; lower player count |
| Sandbox | 33 or 66 |
Depends on expected player count |
| Deathrun | 66 |
Movement precision is critical |
In Pterodactyl, set the TICKRATE variable. This maps directly to the -tickrate launch flag.
Installing a Community Gamemode
Community gamemodes are typically installed one of two ways:
Via file manager / SFTP:
- Download the gamemode (e.g., from GitHub)
- Upload the entire folder to
garrysmod/gamemodes/ - Ensure the folder name is lowercase and matches what you intend to pass to
+gamemode - Restart the server
Via Workshop:
Some gamemodes (like DarkRP) have a Workshop version. Add the addon ID to your workshop collection. However, Workshop installs place gamemodes in the addons path, not gamemodes/, which can cause load-order issues. For DarkRP, a direct file install is preferred over Workshop.
Verifying Gamemode Load
Check the server console at startup for:
Gamemode "darkrp" started.
If you see Gamemode "sandbox" started. when expecting a different gamemode, the folder name does not match the +gamemode flag, or the required Lua files are missing.