le forum de MineStrator

Nous ne cherchons pas à être un forum, mais le forum de référence pour les administrateurs et joueurs de serveurs minecraft, la communauté a besoin de toi, alors n'hésite pas à t'inscrire et à participer à la vie du forum !

Guide d'Optimisation de Serveur

Alexis

Administrateur
Staff
Administrateur
Bonjour, nous allons voir dans ce grand guide comment optimiser son serveur Spigot/Paper/Airplane au maximum. Ce guide ne s'applique donc pas aux serveurs moddés.

Pour pouvoir suivre ce guide et appliquer les modifications demandées, je vous recommande de lire ce guide sur le SFTP : [MineStrator] Gérer votre serveur en SFTP avec WinSCP ou FileZilla

Ce guide, basé sur Paper, correspond à une version traduite du guide par .


Pré-Génération de Map

Prégénérer sa map est l'une des tâches les plus importantes pour éviter le lag lors du déplacement des joueurs. Faites ceci avant même de toucher aux autres points.

Pour ça, deux solutions sont possibles :
- Via le plugin Chunky dont voici le tutoriel : https://forum.minestrator.com/threads/presentation-chunky-pregenerer-sa-map-via-plugins.1045/
- VIa le mod Chunk Pregenerator dont voici le tutoriel : https://forum.minestrator.com/threa...regenerator-pregenerer-sa-map-avec-mods.1046/

Bukkit.yml

Modifiez les lignes suivantes dans votre fichier bukkit.yml (Vous pouvez accéder à celui-ci via SFTP.

spawn-limits
Par défaut : monsters:70, animals:10, water-animals:15, water-ambient:20, ambient:15
Optimisé : monsters:50, animals:8, water-animals:7, water-ambient:10, ambient:1
Impact sur les performances : Grand
Explication : Pour résumer, moins de mobs signifie moins de lag. Mais le sujet est un peu plus élaboré. Vous trouvez plus d'infos . Évitez de mettre des valeurs plus basses, ou le manque de mobs risque d'être flagrant. Les valeurs données permettent une réduction sans que cela soit notable.

chunk-gc.period-in-ticks
Par défaut : 600
Optimisé : 400
Impact sur les performances : Moyen
Explication : Ce paramètre permet de décharger les chunks inutilisés plus rapidement. Moins de chunks chargés signifie moins d'effort pour le CPU, donc de meilleurs TPS.

ticks-per.(type)-spawns
Par défaut : monster:1, water:1, water-ambient:1, ambient:1

Optimisé : monster:5, water:11, water-ambient:21, ambient:31
Impact sur les performances : Moyen
Explication : Ce paramètre décrit tous les combien de ticks le serveur va essayer de spawner des mobs. Augmenter le temps entre chaque tentative ne devrait pas modifier le gameplay ressentit.

Spigot.yml

Modifiez les lignes suivantes dans votre fichier Spigot.yml (Vous pouvez accéder à celui-ci via SFTP.

save-user-cache-on-stop-only
Par défaut : false
Optimisé : true
Impact sur les performances : Moyen
Explication : Au lieu que le serveur sauvegarde constamment les user-data (false), celui-ci va les sauvegarder uniquement lors d'un arrêt ou redémarrage du serveur (true). Cela sera un gain de TPS.
(Note : Les serveurs Minestrator redémarrent tous les jours à 5h du matin, mais vous pouvez ajouter manuellement des redémarrages supplémentaires pour éviter la perte de données en cas de crashs.)

max-tick-time
Par défaut : tile:50, entity:50
Optimisé : tile:1000, entity:1000
Impact sur les performances : Non disponible
Explication : Mettre 1000 désactive la fonctionnalité. Le gain de TPS n'est pas assez haut par rapport .

mob-spawn-range
Par défaut : 8
Optimisé : 6
Impact sur les performances : Non disponible
Explication : Cela change la distance maximale de spawn de mobs (en chunks) aux joueurs. Après limiter le spawn dans le bukkit.yml, cela va condenser les mobs spawner de manières fidèles au Vanilla.

Avertissement : Si votre view-distance est 6 ou moins, mettez un max-spawn-range à 1 en dessous de votre valeur (Si vous avez une view-distance à 5, mettez la mob-spawn-range à 4).

entity.activation-range
Par défaut : animals:32, monsters:32, raiders: 48, misc:16
Optimisé : animals:16, monsters:24, raiders: 48, misc:8
Impact sur lesperformances : Moyen
Explication : Les entités passés cette distance ne seront pas "tick" aussi souvent. Évitez de mettre une valeur trop basse ou cela risque de casser le comportement des monstres (Aggro, raids, etc).
(Note : Évitez de changer la valeur des Villagers pour protéger leurs mécaniques.)

tick-inactive-villagers
Par défaut : true
Optimisé : false
Impact sur les performances : Moyen
Explication : Ce paramètre permet d'empêcher le tick des villageois en dehors de leur porté d'activation.
(Note : Activez l'option "villagers-active-for-panic" pour éviter que cela ne brise certaines fermes à fer.)

merge-radius
Par défaut : item:2.5, exp:3.0
Optimisé : item:4.0, exp:6.0
Impact sur les performances : Moyen
Explication : Fusionner (merge en anglais) les items au sol permet d'éviter que trop soient ticks. Des valeurs plus hautes permettent d'empiller encore plus d'objets.
(Note : La fusion peut donner l'illusion que des items sont manquants dans les loots ou autre car ils sont fusionnés. C'est un dérangement mineur.)

nerf-spawner-mobs
Par défaut : false
Optimisé : true
Impact sur les performances : Moyen
Explication : Quand activé, les mobs créés à partir de spawners n'auront pas d'IA (Ne pas nager, attaquer ou bouger). C'est un énorme gain de TPS pour les grandes fermes à mob; mais cela casse le comportement des monstres. Un plugin qui limite les fermes peut être une meilleur solution.
(Note : Paper possède une option pour forcer les monstres "nerfés" à sauter/nager. Cela peut servir dans les fermes qui doivent pousser les monstres.)

item-despawn-rate
Par défaut : 6000 (5minutes)
Optimisé : Moins
Impact : Situationnel
Explication : Il s'agit du temps avant que les items au sol disparaissent. Alors que cela peut être un bon gain de TPS si réduit, cela impacte aussi le gameplay sur les serveurs où retrouver son stuff perdu est essentiel.
(Note : Tournez-vous vers la configuration Paper "alt-item-despawn-rate" pour que les items non-précieux tel que la cobble disparaissent sans faire disparaitre les objets plus importants.)

arrow-despawn-rate
Par défaut : 1200
Optimisé : 300
Impact sur les performances : Bas
Explication : Similairement au item-despawn-rate, mais pour les flèches. Certains serveur souhaiteraient garder les flèches au sol plu longtemps, mais la majorité n'auront pas de plaine à les retirer plus vite.
(Note : Paper possède des options pour réduire l'impact du retrait des flèches pour le gameplay. Laissez la valeur par défaut si vous souhaitez suivre le guide jusqu'à "Paper.yml".)

Paper.yml

Modifiez les lignes suivantes dans votre fichier paper.yml (Vous pouvez accéder à celui-ci via SFTP.
Attention, depuis la 1.19 le fichier Paper.yml a été remplacé par "paper-world-defaults.yml" et "paper-global.yml". Vous trouverez ces fichiers dans le dossier config du serveur.

max-auto-save-chunks-per-tick
Par défaut : 24
Optimisé : 6
Impact sur les performances : Grand
Explication : Cela ralentit la sauvegarde de chunks pendant la tâche de sauvegarde du monde. C'est très important pour les serveurs modernes.
(Note : Mettre une valeur trop basse peut mener à des chunks non-sauvegardés, donc évitez d'aller plus bas.)

optimize-explosions
Par défaut : false
Optimisé : true
Impact sur les performances : Bas
Explication : Paper possède un algorithme très efficace pour les explosions, avec aucun effet sur le gameplay.

mob-spawner-tick-rate
Par défaut : 1
Optimisé : 2
Impact sur les performances : Bas
Explication : Il s'agit du délai en ticks avant qu'un spawner actif essaye de spawn ses entités. Doubler le délai n'impact pas le taut de spawn.

disable-chest-cat-detection
Par défaut : false
Optimisé : true
Impact sur les performances : Bas
Explication : Les coffres vérifient si un chat est assis sur un coffre quand il est ouvert par un joueur. Quand activé, cela désactive cette mécanique. Avez-vous réelement besoin de chats qui bloquent vos coffres ?

container-update-tick-rate
Par défaut : 1
Optimisé : 3
Impact sur les performances : Bas
Explication : Cela change le délai en tick du rafraichissement des inventaires quand celui-ci est ouvert par quelqu'un d'autre. Evitez de mettre au dessus de 4 pour éviter d'avoir des problèmes d'affichage.

max-entity-collisions
Par défaut : 8
Optimisé : 2
Impact sur les performances : Moyen
Explication : Les entités packées ou entassées vont moins rentrer en collision et libèrera des TPS.

grass-spread-tick-rate
Par défaut : 1
Optimisé : 4
Impact sur les performances : Moyen
Explication : Le temps en ticks qui passe pour que le serveur génère de l'herbe dans les chunks. Cela n'aura pas de changement de gameplay pour la majorité des serveurs.

despawn-ranges
Par défaut : soft: 32, hard: 128
Optimisé : soft: 28, hard: 96
Impact sur les performances : Bas
Explication : Soft = La distance en blocs d'un joueur où les mobs peuvent être retirés. Hard = La distance en blocs d'un joueur à partir duquel les mobs sont retirés. Réduire ces distances permet de réduire le coût en TPS sur le serveur.

hopper.disable-move-event
Par défaut : false
Optimisé : true
Impact sur les performances : Grand
Explication : Cela va réduire les lags venant des hoppers à chaque slot de conteneurs.

Avertissement : Cela va casser les plugins qui écoutent l’événement "InventoryMoveItemEvent".

non-player-arrow-despawn-rate
Par défaut : -1 (uses Spigot arrow-despawn-rate)
Optimisé : 60 (3 seconds)
Impact sur les performances : Bas
Explication : Similaire au despawn de Spigot, mais cela ne cible uniquement les flèches tirées par les squelettes. Ce n'est qu'un changement cosmétique vu que ces flèches ne peuvent pas être récupérées.

creative-arrow-despawn-rate
Par défaut : -1 (Spigot arrow-despawn-rate)
Optimisé : 60 (3 seconds)
Impact sur les performances : Bas
Explication : Il s'agit de la même chose qu'au dessus, mais dans le cas de flèches qui ne peuvent pas être récupérés (Comme avec Arc Infinity).

prevent-moving-into-unloaded-chunks
Par défaut : false
Optimisé : true
Impact sur les performances : Moyen
Explication : Cela empêche les joueurs de rentrer dans des chunks qui ne sont pas chargés à cause de lags (Ce qui en cause encore plus). L'option true téléportera les joueurs à un endroit en sécurité à la place.
(Note : Si vous n'avez pas généré votre monde [Donc que vous n'avez rien compris !] cette option est essentielle.)

use-fast-eigencraft-redstone
Par défaut : false
Optimisé : true
Impact sur les performances : Grand
Explication : Cette option réduit la redondance des upgrades de redstone. Cela réduit de 95% les lags liés à la redstone sans casser aucune machine vanilla. Des essais ont montré que cette option augmentait jusqu'à 10X la vitesse de calcul de la redstone.

armor-stands-tick
Par défaut : true
Optimisé : false
Impact sur les performances : Bas
Explication : Certains objets sont vus comme des entités. Les armor-stand qui ne sont plus tickés ne seront plus poussés par l'eau. Est-ce vraiment important ?
(Note : Paper va aussi décaler les ticks des cadres les uns après les autres, plutot que tous en même temps. Profitez bien des TPS offerts.)

per-player-mob-spawns
Par défaut : false
Optimisé : true
Impact sur les performances : Bas
Explication : Cela implémente les mécaniques de spawn du jeu solo, plutot que les algroythmes aléatoires de Bukkit. Cela empêche les fermes énormes d'impacter les taux de spawn du serveur.
(Note : Si vous avez baissé les spawn-limits dans Bukkit.yml, et que vous ressentez un manque de mobs en jeu, n'hésitez pas à modifier les valeurs jusqu'à trouver ce qui vous correspond.)

alt-item-despawn-rate
Par défaut : false
Optimisé : true
Impact sur les performances : Moyen
Explication : Cette option permet de faire disparaitre des items plus rapidement sur la configuration item-despawn-rate de Spigot. Cela permet d'éviter de tick des piles de déchets.
Exemple pour faire disparaitre la cobblestone et la netherrack en 15 secondes :

enabled: true
items:
COBBLESTONE: 300
NETHERRACK: 300

(Note : Utilisez la liste de quand vous ajoutez des items.)

no-tick-view-distance
Par défaut : -1
Optimisé : # > valeur de view-distance
Impact sur les performances : Non disponible
Explication : Il s'agit de la distance à laquelle les chunks sont chargés, mais qui ne seront pas tick en dehors de la view-distance.
(Note : Si vous avez une view-distance basse (comme 3 ou 4), vous pouvez mettre cette valeur à 5 ou 6 pour améliorer le gameplay. Attention, depuis la 1.17 ce paramètre est remplacé en vanilla dans votre server.properties par la view-distance qui affiche les chunks, et la simulation distance qui calcul les entités/blocs.)

anti-xray.enabled
Par défaut : false
Optimisé : true
Impact sur les performances : Non disponible
Explication : Cette option va vous faire perdre des TPS, l'anti x-ray de Paper est le plus efficace qui existe. Le mode 1 est peut-être le moins lourd (Surtout pour les clients), mais le mode 2 est le plus efficace.

Server.Properties

view-distance
Par défaut : 10 ( 7 sur Minestrator)
Optimisé : 4-8
Impact sur les performances : Grand
Explication : Voici l'un des paramètres les plus importants pour la santé de votre serveur : La distance de rendu des chunks. Les serveurs de survie pourront fonctionner correctement à 6+; alors que d'autres moins performants et avec plus de monde devront se contenter de 4-5 si ils rencontrent des latences. Depuis la 1.17, ce paramètre indique uniquement la distance de chunks affichés, et non calculés.

simulation-distance
Par défaut : 10
Optimisé : 4-8
Impact sur les performances : Grand
Explication : Ce paramètre existe depuis la 1.17. Il s'agit de la distance à laquelle les chunks seront calculés. Là ou l'eau coulera, les mobs bougeront, etc. Vous pouvez avoir une simulation-distance plus basse que votre view-distance.

Avertissement : Voyez la note dans mob-spawn-range (Spigot.yml) si vous mettez une view-distance en dessous de 7.

network-compression-threshold
Par défaut : 256
Optimisé : 512 (-1 pour BungeeCords)
Impact sur les performances : Bas

Profitez bien de vos TPS améliorés ! Si vous avez besoin d'une assistance plus poussée, n'hésitez pas à passer sur notre Discord. Bonne journée à vous.
 

Haut