SLBCloud
Intermédiaire9 min de lecture

Monter un serveur Garry's Mod

SteamCMD, le jeton de serveur, les modes de jeu et le contenu additionnel — sans que les joueurs mettent dix minutes à se connecter.

Installer avec SteamCMD

bash
sudo dpkg --add-architecture i386 && sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 steamcmd

steamcmd +force_install_dir ~/gmod \
  +login anonymous \
  +app_update 4020 validate \
  +quit

Les bibliothèques 32 bits

Le serveur Garry's Mod est un binaire 32 bits. Sans lib32gcc-s1 et lib32stdc++6, il refuse de démarrer avec un message d'erreur peu parlant sur une bibliothèque introuvable.

Le jeton de serveur

Sans jeton, votre serveur n'apparaît pas dans la liste publique. Générez-en un gratuitement sur steamgameserveraccount.com, avec l'identifiant d'application 4000 pour Garry's Mod.

Lancer

bash
cd ~/gmod
./srcds_run -game garrysmod -console -port 27015 \
  +maxplayers 32 +map gm_construct +gamemode sandbox \
  +sv_setsteamaccount VOTRE_JETON \
  -tickrate 66

garrysmod/cfg/server.cfg

cfg
hostname "Mon serveur GMod"
sv_password ""
rcon_password "un-mot-de-passe-long"
sv_lan 0
sv_region 3

// Le contenu se télécharge depuis un serveur web, pas depuis le jeu
sv_allowdownload 1
sv_allowupload 0
sv_downloadurl "https://contenu.mon-domaine.fr/gmod/"

sv_downloadurl : le réglage qui change tout

Sans lui, chaque joueur télécharge le contenu additionnel depuis le serveur de jeu lui-même, à une vitesse volontairement bridée par le moteur — d'où les connexions qui durent dix minutes et les joueurs qui abandonnent. Un simple nginx qui sert les fichiers compressés en bz2 règle le problème définitivement.

Les ports

bash
sudo ufw allow 27015/tcp
sudo ufw allow 27015/udp
sudo ufw allow 27005/udp

Les extensions

Les extensions se posent dans garrysmod/addons/. Pour celles du Workshop, une collection Steam évite de les gérer une par une : créez-la, notez son identifiant, et passez-le au lancement.

bash
+host_workshop_collection 123456789

Pour un mode de jeu comme DarkRP, il se dépose dans garrysmod/gamemodes/ et se lance avec +gamemode darkrp. Attention à la cohérence des versions : un mode de jeu et ses extensions doivent venir du même dépôt maintenu, sinon les erreurs Lua s'accumulent en console.

Bloqué malgré tout ? Ouvrez un ticket : on répond en français, et on regarde votre machine si besoin.

Ouvrir un ticket