Quel tickrate choisir selon le nombre de joueurs sur son serveur GMod ?
TL;DR
Le tickrate, c'est le « FPS » de votre serveur : le nombre de fois par seconde qu'il calcule l'état du monde et l'envoie aux clients. Choisir le bon tickrate selon votre gamemode et votre population évite les lags, les désyncs et la surchauffe CPU. Voici les valeurs que j'utilise et que la communauté valide depuis des années.
Pourquoi le tickrate est-il si critique sur GMod ?
Garry's Mod tourne sur une architecture mono-thread : le serveur n'utilise qu'un seul cœur CPU, ce qui rend l'optimisation absolument cruciale. Contrairement à d'autres jeux Source, GMod charge des dizaines d'addons Lua qui tournent tous dans ce même thread. Le tickrate détermine combien de fois par seconde votre serveur se met à jour — plus il est élevé, plus le gameplay est fluide, mais plus la consommation CPU augmente de façon exponentielle.
Un tickrate trop élevé augmente la charge CPU sans bénéfice réel pour les joueurs si le serveur ne parvient pas à tenir la cadence. Dans ce cas, le FPS du serveur chute en dessous du tickrate configuré et les joueurs ressentent des saccades pires qu'avec un tickrate plus bas mais stable.
Rappel : sur le wiki Facepunch, vous pouvez vérifier le tickrate réel en Lua avec
print( 1 / engine.ServerFrameTime() ). Si la valeur retournée est nettement inférieure à votre tickrate configuré, votre serveur rame. (Garry's Mod Wiki)
Tableau de référence : tickrate recommandé par population
| Nombre de joueurs | Tickrate recommandé | Cas d'usage typique |
|---|---|---|
| 1 – 15 | 66 | TTT, Deathrun, Murder, Sandbox léger |
| 16 – 32 | 33 | DarkRP, TTT moyen, Sandbox chargé |
| 32 – 48 | 22 | DarkRP peuplé, RP lourd, Purge |
| 48+ | 11 | Grands serveurs RP / Purge / événements |
Utilisez 33 pour 16-32 joueurs, 22 pour 32-48, et 11 pour 48+ joueurs sur la plupart des gamemodes.
Pour des gamemodes comme TTT, Deathrun, Murder ou Sandbox, en supposant que vous avez peu d'addons, vous pouvez parfois monter le tickrate jusqu'à 66. En revanche, les gamemodes comme DarkRP (et ses variantes StarWarsRP, HogwartsRP) utilisent 33 au maximum dans la grande majorité des cas, en raison du nombre élevé d'entités et de scripts Lua actifs.
Comment appliquer le tickrate
1. Paramètre de lancement (méthode principale)
Ajoutez -tickrate à votre ligne de commande :
./srcds_run -game garrysmod -console -tickrate 33 +map gm_construct +maxplayers 32
Remplacez 33 par la valeur adaptée à votre configuration.
2. Dans le server.cfg
Alignez toujours sv_maxupdaterate et sv_maxcmdrate sur votre tickrate ou légèrement en dessous. Voici un exemple cohérent pour un serveur à 33 tick :
// Tickrate 33 — serveur 16-32 joueurs
sv_minrate 20000
sv_maxrate 100000
sv_maxupdaterate 33
sv_minupdaterate 20
sv_maxcmdrate 33
sv_mincmdrate 20
net_maxfilesize 64
decalfrequency 10
// Performances
sv_parallel_packentities 1
sv_parallel_sendsnapshot 1
sv_turbophysics 1
gmod_physiterations 4
sv_stats 0
Pour un serveur à 22 tick (32-48 joueurs), adaptez ainsi :
sv_mincmdrate 22
sv_maxcmdrate 22
sv_minupdaterate 22
sv_maxupdaterate 22
sv_minrate 100000
sv_maxrate 0
net_splitpacket_maxrate 150000
Monter au-dessus de 100 ticks peut causer des problèmes de performance sur la quasi-totalité du matériel disponible. Ne le faites pas.
Diagnostiquer l'état réel de votre serveur
Deux outils indispensables, disponibles sans installer quoi que ce soit :
net_graph 4 (côté client)
Tapez net_graph 4 dans votre console de jeu et observez la valeur sv : si elle clignote en rouge, cela signifie que votre serveur utilise toutes ses ressources disponibles, et votre tickrate doit probablement être abaissé.
La valeur sv indique le temps que met le serveur à traiter chaque tick. Idéalement :
- À 66 tick →
sv≈ 15 ms - À 33 tick →
sv≈ 30 ms - À 22 tick →
sv≈ 45 ms
Si sv dépasse régulièrement ces seuils, le serveur est en surcharge.
Commande stats (côté serveur / RCON)
Exécutez stats dans la console du serveur et regardez la colonne FPS : elle reflète directement le tickrate réel du serveur lorsqu'il fonctionne correctement, car le FPS serveur est lié au tickrate.
Exemple de sortie stats sur un serveur à 33 tick bien chargé :
CPU In(KB/s) Out(KB/s) Uptime Map changes FPS Players
0.00 40.42 84.10 1296 2 33.33 17
Si le FPS affiché est significativement inférieur au tickrate configuré (ex. : 18 au lieu de 33), c'est le signe d'un serveur en difficulté.
Pièges courants
- Désynchronisation
sv_maxcmdrate/ tickrate : si votresv_maxcmdrateest supérieur au tickrate, les clients envoient des commandes plus vite que le serveur ne peut les traiter. Gardez ces valeurs alignées. - Tickrate trop bas sur TTT : un tickrate de 11 ou 16 sur TTT génère des problèmes de détection des tirs et des hitboxes approximatives. Ne descendez pas en dessous de 22 sur ce gamemode.
- Ignorer les addons : les addons sont au cœur de GMod RP, mais aussi la principale source de ralentissements. Supprimez les addons inutilisés ou redondants. Un tickrate de 33 sur un serveur chargé de 200 addons non optimisés sera toujours moins stable qu'un tickrate de 22 avec 60 addons propres.
- Oublier de redémarrer : un redémarrage quotidien permet de libérer la mémoire et d'assurer la stabilité à long terme.
Récapitulatif rapide
TTT / Deathrun / Murder / Sandbox (peu d'addons, < 16 joueurs) → 66 tick
DarkRP / RP léger, 16-32 joueurs → 33 tick
DarkRP / RP chargé, 32-48 joueurs → 22 tick
Grands serveurs 48+ joueurs → 11-16 tick
Pour monitorer : net_graph 4 côté client (valeur sv en rouge = problème), stats côté serveur (colonne FPS = tickrate réel).
Si vous cherchez des scripts d'optimisation ou des addons de monitoring de performance, jetez un œil à la section Best Scripts & Addons ici sur GM Market — il y a quelques perles pour auditer la charge serveur en temps réel.
N'hésitez pas à poster vos valeurs stats en commentaire si vous avez des doutes sur votre configuration, la communauté pourra vous aider à interpréter.