BetterStructures FAQ
Si votre question concerne la liaison initiale avec Nightbreak, les telechargements de paquets ou les importations manuelles, commencez d'abord par les pages partagees Globales. Cette FAQ ne contient que des reponses specifiques a BetterStructures.
Pourquoi les structures n'apparaissent-elles pas ?
La raison la plus courante est que vous testez dans un terrain qui a deja ete explore avant l'installation de BetterStructures.
BetterStructures est concu pour generer dans le terrain inexplore et ne remplit donc pas retroactivement les anciens chunks. Si vous souhaitez voir la generation naturelle rapidement :
- volez vers des chunks non explores
- generez un nouveau monde de test
- ou utilisez les commandes de placement et de configuration au lieu d'attendre la generation naturelle
Pourquoi BetterStructures s'est-il désactivé après un rechargement ?
/bs reload vide tous les registres de contenu avant qu'un thread de travail ne les reconstruise. Si cette reconstruction lève une erreur, poursuivre laisserait un plugin qui semble activé mais dont le contenu est partiel ou vide ; BetterStructures échoue donc délibérément en mode fermé et se désactive.
L'erreur réelle est affichée dans la console juste avant la désactivation. Corrigez la configuration ou le schematic qu'elle nomme, puis redémarrez le serveur.
Pourquoi ma commande est-elle refusée pendant un rechargement ?
/bs place, /bs lootify, /bs pregenerate et /bs generateModules lisent ou modifient toutes les registres de contenu détenus par le thread de rechargement ; elles sont donc refusées pendant toute sa durée avec un message indiquant que le contenu est en cours de rechargement. Les chunks nouvellement générés sont eux aussi ignorés pendant cette fenêtre. Attendez que le rechargement signale sa réussite, puis réessayez.
Relancer /bs reload pendant un rechargement n'échoue pas — votre requête est mise en file d'attente, et un rechargement complet supplémentaire s'exécute une fois le premier terminé, de sorte que les modifications de fichiers effectuées en cours de rechargement sont tout de même prises en compte.
Comment desactiver les avertissements d'administrateur concernant les nouvelles structures ?
BetterStructures dispose d'un interrupteur warnAdminsAboutNewBuildings dans config.yml, et /betterstructures silent change cette valeur pour vous.
C'est utile pendant la pre-generation ou d'autres tests intensifs d'administration ou les avertissements deviennent genants.
Que signifie setupDone ?
setupDone suit si le flux de configuration initiale de BetterStructures a ete complete.
falsesignifie que le flux de configuration est encore considere comme incomplettruesignifie que le flux de configuration a deja ete complete
Si vous souhaitez intentionnellement relancer la configuration, definissez setupDone: false, rechargez le plugin et executez a nouveau /bs initialize.
BetterStructures necessite-t-il WorldEdit ?
Oui. WorldEdit est une dependance obligatoire dans plugin.yml, donc BetterStructures n'est pas prevu pour fonctionner sans.
Comment fonctionne l'integration WorldGuard ?
Si WorldGuard et EliteMobs sont tous deux installes, BetterStructures enregistre et utilise le drapeau betterstructures-protect pour ses zones protegees. Les deux plugins doivent etre presents pour que la protection WorldGuard s'active.
L'interrupteur de configuration concerne est :
protectEliteMobsRegions: true
Definissez-le sur false si vous ne souhaitez pas la protection WorldGuard geree par BetterStructures pour le contenu pris en charge.
Le message affiche aux joueurs lorsqu'ils tentent de casser ou placer des blocs dans une zone protegee est egalement configurable :
regionProtectedMessage: "&8[BetterStructures] &cDefeat the zone's bosses to edit blocks!"
Puis-je ajouter des objets personnalises au tresor de BetterStructures ?
Oui. BetterStructures inclut :
/betterstructures lootify <generator> <rarity> <minAmount> <maxAmount> <weight>
Utilisez-le en tenant l'objet que vous souhaitez enregistrer. La commande ecrit l'objet tenu dans l'entree du generateur de tresor selectionne.
Regles de validation actuelles de l'implementation de la commande :
- le generateur de tresor doit exister
- la rarete doit deja exister dans cette configuration de tresor
minAmountdoit etre au moins1maxAmountdoit etre au maximum64- l'objet tenu ne peut pas etre de l'air
BetterStructures prend-il en charge les entrees de tresor MMOItems ?
Oui. BetterStructures dispose du support MMOItems dans le projet et le flux de travail de tresor existant prend en charge les objets tiers. Pour la syntaxe specifique a MMOItems, gardez les exemples de configuration exacts dans vos fichiers de tresor alignes avec la documentation actuelle de la page de tresor au lieu de vous fier aux anciens extraits de FAQ.
Comment EliteMobs et BetterStructures fonctionnent-ils ensemble ?
BetterStructures a une integration souple avec EliteMobs.
A un niveau eleve :
- BetterStructures peut placer des marqueurs de contenu EliteMobs dans les structures generees
- BetterStructures peut egalement gerer les zones protegees qui comptent pour le contenu soutenu par EliteMobs lorsque l'integration est activee
Pour le flux de configuration partage, la liaison de jetons et le cycle de vie officiel des paquets, utilisez la documentation Globale et les pages de configuration/contenu de BetterStructures au lieu de traiter cette FAQ comme source principale.
Puis-je pre-generer un monde de maniere plus sure ?
Oui. BetterStructures expose des parametres de pre-generation orientes performance dans config.yml, notamment :
percentageOfTickUsedForPregeneration(defaut :0.1) -- quelle fraction de chaque tick serveur est utilisee pour la pre-generation de chunkspregenerationTPSPauseThreshold(defaut :12.0) -- TPS en dessous duquel la pre-generation se met en pausepregenerationTPSResumeThreshold(defaut :14.0) -- TPS au-dessus duquel la pre-generation reprend
Pour le collage normal de structures, le reglage principal de cadence est :
percentageOfTickUsedForPasting: 0.2
Des valeurs plus basses reduisent l'impact par tick mais rendent le collage de structures plus lent.
Comment les emplacements des structures sont-ils determines ?
BetterStructures conserve des controles d'espacement et de decalage aleatoire par type de structure dans config.yml. Voir Configuration pour la référence complète.
Chaque type de structure est placé sur sa propre grille en losange générée à partir de la seed. Les valeurs de distance et de décalage sont mesurées en chunks, pas en blocs — un distanceSurface de 27 correspond à environ une structure de surface tous les 27 chunks, soit environ 432 blocs.
Les controles de distance principaux sont :
distanceSurface(defaut :27)distanceShallow(defaut :22)distanceDeep(defaut :22)distanceSky(defaut :90)distanceLiquid(defaut :60)distanceDungeonV2(defaut :80)
Les controles de decalage associes sont :
maxOffsetSurface(defaut :5)maxOffsetShallow(defaut :5)maxOffsetDeep(defaut :5)maxOffsetSky(defaut :5)maxOffsetLiquid(defaut :5)maxOffsetDungeonV2(defaut :18)
Les distances doivent valoir 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). Si une valeur est hors de sa plage valide, 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.
En pratique, cela signifie que la generation reste pilotee par la graine et la configuration plutot que d'etre redistribuee aleatoirement a chaque redemarrage.
Que fait modularChunkPastingSpeed ?
Rien, actuellement. modularChunkPastingSpeed (defaut : 10) est toujours écrite dans config.yml, mais rien dans le plugin ne la lit : la modifier n'a aucun effet. La cadence de collage est pilotée par percentageOfTickUsedForPasting à la place — utilisez cette clé si vous voulez régler la part de chaque tick que BetterStructures consacre au placement de blocs.
Que fait spawnProtectionRadius ?
spawnProtectionRadius (defaut : 100) definit la distance minimale en blocs depuis les coordonnees du monde 0, 0 dans laquelle aucune structure ne sera placee. Cela s'applique a tous les mondes. Definissez sur 0 pour desactiver la protection du spawn.
Comment desactiver les structures dans des mondes specifiques ?
BetterStructures maintient un fichier de configuration ValidWorlds.yml qui controle quels mondes sont eligibles pour la generation de structures. Chaque monde est liste avec un interrupteur booleen :
New worlds spawn structures: true
Valid worlds:
world: true
world_nether: true
world_the_end: true
Definissez un monde sur false pour empecher BetterStructures de placer des structures dans ce monde. Le parametre New worlds spawn structures controle si les mondes nouvellement detectes sont automatiquement actives pour la generation de structures.
Deux comportements méritent d'être connus :
- Les mondes gérés par EliteMobs sont exclus par défaut. Les mondes appartenant à EliteMobs — le hub de la guilde des aventuriers et les copies de donjons instanciés — sont enregistrés à
falsemême quandNew worlds spawn structuresvauttrue. Leurs chunks de vide non construits comptent comme de nouveaux chunks, ce qui faisait auparavant décorer les hubs de donjons par BetterStructures. Les entréesem_existantes ont été basculées àfalseune seule fois par une migration ponctuelle ; la clé marqueurEliteMobs worlds excluded by defaultdu fichier enregistre que cette migration a déjà eu lieu, si bien que si vous remettez délibérément un mondeem_àtrue, votre choix survit aux redémarrages. - Les entrées des mondes supprimés sont élaguées. Au démarrage, et environ dix secondes après le déchargement d'un monde, BetterStructures supprime toute entrée de
Valid worldsdont le monde n'est ni chargé ni présent sur le disque, afin que le fichier n'accumule pas d'entrées mortes.
Comment réparer un pack de contenu cassé ou partiellement supprimé ?
Utilisez /bs forcereinstallcontent <package|all>. Les téléchargements normaux comparent les versions et ignorent tout ce qui est déjà à jour, ce qui est exactement le mauvais comportement lorsque les fichiers sur le disque sont endommagés. La réinstallation forcée repasse le paquet par le même pipeline authentifié de téléchargement, d'import et de rechargement, quelle que soit la version.
all couvre chaque paquet que BetterStructures voit actuellement comme téléchargé, installé ou obsolète. Si les fichiers d'un paquet ont totalement disparu, BetterStructures ne le voit plus : nommez alors son slug directement — la complétion par tabulation liste chaque slug connu.