Le lag sur un serveur Garry's Mod vient généralement de trois choses que le serveur paie à chaque tick : le tickrate lui-même, les props et les entités que les joueurs font apparaître, et le code des addons qui s’exécute à chaque tick. La mémoire est un suspect moins probable : lors de notre test de démarrage d’août 2026, un serveur Garry's Mod vide consommait 99 Mo sur une offre de 2 Go.
Que fait le tickrate sur un serveur GMod ?
Le tickrate correspond au nombre de fois par seconde où le serveur simule le monde. La Valve Developer Community décrit chaque tick ainsi : le serveur traite les commandes entrantes des joueurs, exécute une étape de simulation physique, vérifie les règles du jeu et met à jour chaque objet. Un tickrate plus élevé augmente la précision, mais « nécessite plus de puissance CPU et de bande passante disponible, côté serveur comme côté client. »
La valeur par défaut du moteur est de 66,6666 ticks par seconde, et le wiki de Facepunch recommande entre 30 et 128. Sur un serveur PlayNHost, le paramètre Tickrate démarre à 22, et vous pouvez le modifier.
C’est pourquoi le tickrate multiplie tout le reste. Chaque prop de la carte fait partie de l’étape de physique : un serveur Sandbox qui tient à un certain tickrate peut donc décrocher à un tickrate plus élevé sans aucun autre changement.
N’augmentez le tickrate qu’une fois le serveur stable à une valeur plus basse, et modifiez-le un cran à la fois.
Combien de props les joueurs peuvent-ils faire apparaître en Sandbox ?
Sandbox plafonne déjà ce que chaque joueur peut créer. Les valeurs par défaut dans le fichier sandbox.txt du mode de jeu :
| Convar | Limite | Par défaut |
|---|---|---|
sbox_maxprops | props qu’un seul joueur peut créer | 200 |
sbox_maxragdolls | ragdolls qu’un seul joueur peut créer | 10 |
sbox_maxconstraints | contraintes hors cordes qu’un seul joueur peut créer | 2000 |
Les limites s’appliquent par joueur : le total sur la carte augmente donc avec le nombre de bâtisseurs. Baissez-les depuis la console du serveur ou votre configuration de serveur si les constructions font tomber le serveur. Une valeur négative supprime la limite, vérifiez donc que personne n’en a défini une.
Pour vider la carte, un admin (ou la console du serveur) peut exécuter gmod_admin_cleanup. Cela supprime tout ce que les joueurs ont fait apparaître et refait apparaître les entités propres à la carte. Ajoutez un type, par exemple gmod_admin_cleanup props, pour ne supprimer que cette catégorie.
Comment les addons causent-ils du lag ?
Le code d’un addon accroché à Think ou Tick s’exécute sur le serveur une fois par tick : à un tickrate de 22, il s’exécute donc 22 fois par seconde, et à 66, 66 fois. La plupart des addons ne vous disent pas s’ils le font.
- Ajoutez les addons par petits lots, pour savoir quel lot est responsable quand les performances chutent.
- Sachez ce que les joueurs téléchargent. Le serveur monte toute votre collection Workshop, mais les joueurs ne reçoivent que la carte en cours (si elle fait partie de la collection), le mode de jeu (s’il indique un identifiant Workshop) et tout ce qu’un addon marque avec
resource.AddWorkshop. Les fichiers Lua sont envoyés séparément. Chaque téléchargement supplémentaire ralentit la connexion, et le wiki de Facepunch prévient que marquer pour le téléchargement des addons composés uniquement de Lua allonge les temps de connexion.
Comment trouver la cause du lag ?
Procédez dans cet ordre :
- Comptez les entités.
ents.GetCount()renvoie le nombre d’entités existantes. Si ce nombre grimpe pendant toute la session, les props sont votre problème. - Vérifiez la physique. L’exemple du wiki de Facepunch ci-dessous, placé dans un fichier Lua côté serveur comme
garrysmod/lua/autorun/server/, affiche un message quand une étape de physique dure plus de 100 ms. - Désactivez les addons par lots et voyez si le lag disparaît.
- Baissez le tickrate d’un cran et voyez si les saccades disparaissent.
- Vérifiez la mémoire en dernier. Ouvrez les graphiques Utilisation de votre serveur pendant que des joueurs sont connectés.
hook.Add("Think", "LagDetector", function ()
if physenv.GetLastSimulationTime() * 1000 > 100 then
print("Physics lag detected!")
end
end)
Sur notre offre d’hébergement de serveur Garry's Mod, Tickrate et Collection Workshop sont deux champs situés sous Paramètres, puis Paramètres du jeu, et ils sont lus au démarrage du serveur : tester un tickrate plus bas demande donc un redémarrage. Notre référence des paramètres de Garry's Mod explique chacun d’eux.
Quand l’offre est-elle trop petite ?
Quand la mémoire atteint sans cesse la limite de votre offre alors que des joueurs sont connectés. Consultez l’onglet RAM sous Utilisation pendant une session chargée, pas sur un serveur vide. Si la mémoire va bien et que le serveur saccade pendant les constructions, regardez d’abord les props, les addons et le tickrate.
L’offre la plus petite compte 4 emplacements de joueurs. Pour un serveur de construction avec quelques amis, commencez par celle-là, avec les limites Sandbox en place.
La même approche, diagnostiquer d’abord, s’applique à Minecraft : voir de combien de RAM un serveur Minecraft a besoin.



