Garry's Mod tourne sur un moteur ancien (Source) mais toujours actif, et DarkRP reste de loin son mode de jeu le plus joué. Installer les deux n'est pas la même chose que d'y jouer : ce guide couvre la partie hébergement, de l'installation du serveur à l'administration au quotidien, en complément de notre guide des meilleurs mods GMod, qui couvre l'expérience côté joueur.
Installer le serveur via SteamCMD
Un serveur VPS (un serveur privé virtuel, l'une des machines virtuelles obtenues par virtualisation — parfois vendue par des hébergeurs comme hébergement cloud) ou un hébergement dédié (un serveur physique entier) sous Linux (Ubuntu ou Debian) est indispensable ici : un serveur mutualisé ne donne ni accès root, ni la possibilité de faire tourner un processus permanent comme un serveur de jeu. Une fois connecté en SSH (ou via le panneau de contrôle/panel de votre hébergeur), le serveur Garry's Mod se télécharge via SteamCMD, l'outil en ligne de commande de Valve pour installer des jeux sans interface graphique :
./steamcmd.sh +force_install_dir ./gmod-server +login anonymous +app_update 4020 validate +quit
Ouvrez ensuite le port par défaut du moteur Source dans votre pare-feu (firewall) :
sudo ufw allow 27015/tcp
sudo ufw allow 27015/udp
Vos joueurs se connecteront à l'adresse IP du serveur (ou à un nom de domaine qui y pointe), suivie du port, depuis la console en jeu.
Un serveur public a aussi besoin d'un jeton GSLT (Game Server Login Token), généré gratuitement depuis votre compte Steam, pour être reconnu comme un serveur légitime plutôt que bloqué par le système anti-triche de Valve :
+sv_setsteamaccount VOTRE_JETON_GSLT
Installer DarkRP
DarkRP se distribue via une collection dédiée sur le Steam Workshop plutôt que par téléchargement manuel de fichiers. Une fois abonné à la collection depuis votre compte Steam et le serveur configuré pour la charger au démarrage, activez le mode de jeu dans les paramètres de lancement :
+gamemode darkrp +map rp_downtown_v4c
Choisissez une carte pensée pour le roleplay (les cartes préfixées rp_), sensiblement différentes des cartes d'affrontement classiques : zones commerciales, habitations, emplacements pour les métiers du gamemode.
Régler le tickrate selon la charge
Le tickrate contrôle la fréquence à laquelle le serveur met à jour son état. Une valeur de 66 convient à un serveur DarkRP léger avec peu d'entités actives ; sur un serveur chargé (beaucoup de joueurs, beaucoup de props et d'entités DarkRP simultanées), redescendre à 33 réduit la charge CPU sans dégrader sensiblement l'expérience de jeu, DarkRP n'étant pas un mode qui demande la même précision qu'un affrontement compétitif.
Administrer le serveur : ULX plutôt que l'outil livré par défaut
DarkRP embarque un système d'administration minimal (FAdmin), suffisant pour démarrer mais limité. La référence de la communauté reste ULX, associé à sa bibliothèque ULib : bannissements, exclusions temporaires, groupes de permissions personnalisés et menu d'administration complet, avec un module d'intégration spécifique à DarkRP.
Dimensionner et sécuriser son serveur
Un serveur DarkRP de 32 à 64 joueurs avec un addon pack raisonnable tourne confortablement avec 3 à 4 Go de RAM et un peu d'espace disque (ou espace de stockage) en SSD pour la collection Workshop ; comptez davantage si votre liste d'addons est longue, chaque script actif ajoutant sa propre consommation, et la flexibilité d'un VPS permet d'augmenter les ressources sans tout réinstaller si votre liste de scripts grossit. Comme pour la plupart des jeux sur le moteur Source, la vitesse d'un seul cœur du CPU pèse plus que leur nombre. Une bande passante correcte compte aussi (même annoncée illimitée, ce qui ne dit rien du débit réel) : chaque nouveau joueur télécharge l'intégralité de la collection Workshop à la connexion.
DarkRP a une réputation méritée d'exploits économiques (duplication d'argent, abus de props) qui circulent régulièrement sur les forums communautaires : n'installez que des addons Workshop avec un historique et des avis établis, surveillez les mises à jour de sécurité de DarkRP lui-même plutôt que de figer une version ancienne par confort, et gardez des sauvegardes récentes de vos données de progression (un backup testé, pas seulement programmé) — certains addons d'économie partagée stockent d'ailleurs leurs données dans une base de données MySQL plutôt qu'en local, un filet supplémentaire tant qu'elle est elle aussi sauvegardée — c'est le seul recours si un exploit économique passe malgré tout entre les mailles du filet.
Comme sur tout hébergement, l'infogérance matérielle d'un hébergeur ne construit jamais de haute disponibilité à votre place : les serveurs GMod hébergés restent, comme tout serveur de jeu, un point de défaillance unique sans architecture de secours dédiée.
Une fois le serveur installé, un VPS Linux couvre ce cahier des charges, avec la protection anti-DDoS incluse. Pour un serveur qui grandit au-delà d'un addon pack raisonnable, un serveur dédié prend le relais.