Aller au contenu principal

Configuration de BetterStructures

Cette page est la référence des deux fichiers de configuration au niveau du plugin que BetterStructures écrit dans plugins/BetterStructures. La configuration au niveau du contenu se trouve ailleurs : voir Créer des générateurs, Créer des structures, Créer des trésors et Donjons modulaires.

Les deux fichiers sont relus sur le thread serveur à chaque fois que vous exécutez /bs reload : vous n'avez donc pas besoin d'un redémarrage pour appliquer une modification faite ici.

Organisation des dossiers​

CheminContenu
config.ymlParamètres globaux du plugin, documentés ci-dessous
ValidWorlds.ymlInterrupteurs marche/arrêt par monde, documentés ci-dessous
schematics/Fichiers .schem de structures et leurs configurations .yml générées, analysés récursivement
modules/Fichiers .schem de donjons modulaires et leurs configurations .yml générées, analysés récursivement
generators/Configurations de générateurs
module_generators/Configurations de générateurs de modules
treasures/Configurations de trésors (tables de butin)
spawn_pools/Configurations de pools d'apparition utilisées par les panneaux [pool: name]
content_packages/Descripteurs de paquets utilisés par le menu de configuration et les commandes de téléchargement
components/Créé vide au démarrage, pour le contenu livrant des composants de support
imports/Dossier de dépôt pour les imports manuels de contenu
.schematic_cache/Cache géré des schematics convertis, supprimable sans risque

config.yml

Espacement des structures​

BetterStructures place les structures sur une grille en losange générée à partir de la seed, une grille par type de structure. Les clés de distance définissent l'écart entre les points de la grille, et les clés de décalage déplacent aléatoirement chaque point hors de la grille afin que les placements n'aient pas l'air mécaniques.

Les deux sont mesurées en chunks, pas en blocs. Un distanceSurface de 27 signifie environ une structure de surface tous les 27 chunks (environ 432 blocs).

CléPar défautDescription
distanceSurface27Espacement de grille pour les structures SURFACE
distanceShallow22Espacement de grille pour les structures UNDERGROUND_SHALLOW
distanceDeep22Espacement de grille pour les structures UNDERGROUND_DEEP
distanceSky90Espacement de grille pour les structures SKY
distanceLiquid60Espacement de grille pour les structures LIQUID_SURFACE
distanceDungeonV280Espacement de grille pour les placements DUNGEON
maxOffsetSurface5Décalage aléatoire appliqué aux points de grille de surface
maxOffsetShallow5Décalage aléatoire appliqué aux points de grille souterrains peu profonds
maxOffsetDeep5Décalage aléatoire appliqué aux points de grille souterrains profonds
maxOffsetSky5Décalage aléatoire appliqué aux points de grille aériens
maxOffsetLiquid5Décalage aléatoire appliqué aux points de grille de surface liquide
maxOffsetDungeonV218Décalage aléatoire appliqué aux points de grille de donjons

Des distances plus petites signifient plus de structures. Des décalages plus petits donnent un placement plus proche d'une grille ; des décalages plus grands rendent le placement moins prévisible.

Validation. Les distances doivent être d'au moins 1. Les décalages doivent être compris entre 0 et 1073741823, la plus grande valeur que le générateur aléatoire de placement peut utiliser sans risque. Une valeur hors de sa plage fait que BetterStructures enregistre un avertissement, réécrit la valeur par défaut de cette clé dans config.yml, et continue avec la valeur par défaut plutôt que de faire échouer la génération.

Les décalages sont dérivés de la seed du monde et du nom du type de structure : la même seed produit donc la même disposition à chaque redémarrage.

Protection autour de l'origine​

CléPar défautDescription
spawnProtectionRadius100Distance minimale en blocs par rapport aux coordonnées 0, 0 à l'intérieur de laquelle aucune structure n'est placée. S'applique à tous les mondes. Mettez 0 pour désactiver.

Notez que la mesure part de l'origine du monde, et non du point d'apparition de chaque monde.

Limites d'altitude​

Ces clés délimitent l'endroit où les structures souterraines peuvent se retrouver, par dimension. Une structure dont l'ancrage tomberait hors de la plage est ramenée à l'intérieur.

CléPar défautDescription
lowestYNormalCustom-60Y le plus bas pour les mondes NORMAL et CUSTOM
highestYNormalCustom320Y le plus haut pour les mondes NORMAL et CUSTOM
lowestYNether4Y le plus bas dans le Nether
highestYNether120Y le plus haut dans le Nether
lowestYEnd0Y le plus bas dans l'End
highestYEnd320Y le plus haut dans l'End

Les structures aériennes utilisent leurs propres paramètres, et ce sont des décalages au-dessus du bloc le plus haut de la colonne, non des niveaux Y absolus. Une valeur aléatoire entre le minimum et le maximum est tirée à chaque placement.

CléPar défautDescription
normalCustomAirBuildingMinAltitude80Décalage aérien le plus bas dans les mondes NORMAL et CUSTOM
normalCustomAirBuildingMaxAltitude120Décalage aérien le plus haut dans les mondes NORMAL et CUSTOM
endAirBuildMinAltitude80Décalage aérien le plus bas dans l'End
endAirBuildMaxAltitude120Décalage aérien le plus haut dans l'End

Le Nether ignore ces quatre clés : les structures aériennes y sont placées dans une poche d'air trouvée en analysant entre Y 45 et Y 100.

Performances​

CléPar défautDescription
percentageOfTickUsedForPasting0.2Part de chaque tick serveur que BetterStructures peut consacrer au collage de blocs, de 0.01 (1 %) à 1 (100 %). Des valeurs plus faibles réduisent le lag mais rendent l'apparition progressive des constructions plus visible.
percentageOfTickUsedForPregeneration0.1Part de chaque tick serveur utilisée par /bs pregenerate, même plage de 0.01 à 1
pregenerationTPSPauseThreshold12.0La prégénération se met en pause lorsque les TPS du serveur passent sous cette valeur
pregenerationTPSResumeThreshold14.0La prégénération reprend lorsque les TPS atteignent ou dépassent cette valeur. Gardez-la plus haute que le seuil de pause pour éviter des cycles pause/reprise rapides.
modularChunkPastingSpeed10Actuellement inutilisée. La clé est toujours écrite dans config.yml, mais rien ne la lit : la modifier n'a aucun effet.

Administration et intégration​

CléPar défautDescription
warnAdminsAboutNewBuildingstrueDétermine si les joueurs en ligne disposant de betterstructures.warn (les OP par défaut) reçoivent un message de téléportation cliquable lorsqu'une structure finit d'être collée ou qu'un donjon modulaire commence à se générer, n'importe où sur le serveur. /bs silent inverse cette valeur et la sauvegarde.
setupDonefalseIndique si le flux de première configuration a été effectué. Repassez-la à false et rechargez pour que /bs initialize propose à nouveau l'invite.
protectEliteMobsRegionstrueDétermine si BetterStructures crée une protection WorldGuard pour les zones de combat gérées par EliteMobs. Nécessite à la fois WorldGuard et EliteMobs.
regionProtectedMessage&8[BetterStructures] &cDefeat the zone's bosses to edit blocks!Message affiché lorsqu'un joueur tente de modifier des blocs à l'intérieur d'une de ces régions protégées
nightbreak.autoDownloadPluginUpdatesfalseDétermine si les mises à jour du plugin et du contenu se téléchargent automatiquement au démarrage. C'est la clé derrière l'interrupteur Mises à jour automatiques de /bs setup. Le contenu et les mises à jour du plugin téléchargés sont utilisés après le prochain redémarrage, sauf si nightbreak.applyPluginUpdatesWithoutRestart applique la mise à jour du plugin plus tôt.
nightbreak.applyPluginUpdatesWithoutRestartneverMoment où une mise à jour du plugin téléchargée est appliquée. never attend le prochain redémarrage. when-empty l'applique la prochaine fois qu'aucun joueur n'est en ligne, avec une vérification toutes les 30 secondes. immediately l'applique dès qu'elle est téléchargée. Toute autre valeur équivaut à never. L'application d'une mise à jour recharge BetterStructures et les plugins MagmaGuy qui en dépendent : les boss, arènes et instances de donjon en cours prennent donc fin. Un plugin d'un autre auteur qui dépend de BetterStructures bloque le remplacement. /bs applypluginupdate applique à la demande une mise à jour en attente.

ValidWorlds.yml

Ce fichier décide dans quels mondes BetterStructures génère du contenu.

New worlds spawn structures: true
Valid worlds v2:
world: true
world_nether: true
world_the_end: true
CléPar défautDescription
New worlds spawn structurestrueDétermine si un monde que BetterStructures n'a jamais vu est enregistré comme activé
Valid worlds v2rempli automatiquementUne entrée worldname: true/false par monde. Mettez un monde à false pour y arrêter toute génération de structures.

Lors d'une mise à jour, un ValidWorlds.yml contenant l'ancienne clé Valid worlds est déplacé intact vers plugins/MagmaCore/outdated files/BetterStructures/<archive batch>/ValidWorlds.yml. BetterStructures génère un fichier de remplacement avec les valeurs par défaut actuelles des mondes. Consultez vos anciens choix dans l'archive et reportez ceux que vous souhaitez conserver sous Valid worlds v2, puis exécutez /bs reload. Ne remettez pas l'ancien fichier en place sans le modifier : il correspondrait toujours au format retiré.

Comportement automatique​

  • Les nouveaux mondes sont enregistrés au chargement. Un monde qui se charge pour la première fois reçoit immédiatement une entrée, avec New worlds spawn structures comme valeur.
  • Les mondes gérés par EliteMobs sont exclus. Le hub de la guilde des aventuriers et les copies de donjons instanciés sont enregistrés à false même quand New worlds spawn structures vaut true, car leurs chunks de vide non construits comptent comme de nouveaux chunks et faisaient décorer les hubs de donjons par BetterStructures. L'entrée est tout de même écrite, donc la repasser à true fonctionne si c'est vraiment ce que vous voulez.
  • Les choix au format actuel sont conservés. BetterStructures ne déduit pas le propriétaire d'un monde de son nom em_ et ne modifie pas une activation existante sous Valid worlds v2. Il utilise le registre des mondes d'EliteMobs pour les valeurs par défaut des nouveaux mondes. Un monde EliteMobs explicitement activé reste activé et produit un avertissement pour vous laisser décider d'une éventuelle modification. Les anciens fichiers avec Valid worlds suivent la procédure d'archivage et de régénération décrite ci-dessus.
  • Les entrées mortes sont élaguées. Au démarrage, et environ dix secondes après le déchargement d'un monde, les entrées dont le monde n'est ni chargé ni présent sur le disque sont supprimées afin que le fichier ne grossisse pas indéfiniment.