1. Télécharge-le
Sous Linux, le serveur a d'abord besoin des bibliothèques 32 bits :
dpkg --add-architecture i386
apt update
apt install -y lib32gcc-s1 lib32stdc++6
# Windows
C:\steamcmd\steamcmd.exe +force_install_dir C:\gmod +login anonymous +app_update 4020 validate +quit
# Linux (avec l'utilisateur steam)
~/steamcmd/steamcmd.sh +force_install_dir ~/gmod +login anonymous +app_update 4020 validate +quit
2. Le jeton Steam (GSLT)
Sur steamcommunity.com/dev/managegameservers, crée un jeton avec l'App ID 4000. C'est celui du jeu, pas celui du serveur (4020) : avec le 4020, ça ne marche pas.
3. Lance-le
# Windows
C:\gmod\srcds.exe -console -game garrysmod +gamemode sandbox +map gm_construct +maxplayers 16 +sv_setsteamaccount TON_JETON
# Linux
~/gmod/srcds_run -game garrysmod +gamemode sandbox +map gm_construct +maxplayers 16 +sv_setsteamaccount TON_JETON
Remplace sandbox par le mode que tu veux : terrortown (TTT, inclus) ou celui de ton mode téléchargé, comme DarkRP.
4. Collections du Workshop
Crée une collection dans le Workshop Steam avec tes maps et addons, et ajoute à la ligne de démarrage :
+host_workshop_collection ID_DE_LA_COLLECTION
Le serveur télécharge et monte tout le contenu de la collection au démarrage.
5. Nom, mot de passe et RCON
Dans garrysmod/cfg/server.cfg :
hostname "Mon serveur Garry's Mod"
sv_password ""
rcon_password "UN_LONG_MOT_DE_PASSE"
6. Ports
Garry's Mod utilise le 27015 en UDP pour le jeu et en TCP pour le RCON :
# Windows (PowerShell en administrateur)
New-NetFirewallRule -DisplayName "GMod UDP 27015" -Direction Inbound -Protocol UDP -LocalPort 27015 -Action Allow -Profile Any
New-NetFirewallRule -DisplayName "GMod TCP 27015" -Direction Inbound -Protocol TCP -LocalPort 27015 -Action Allow -Profile Any
# Linux
ufw allow 27015/udp
ufw allow 27015/tcp
Pour rejoindre : console du jeu (touche ² ou ~) et connect TON_IP:27015.