Configuration de Nightbreak et gestion de contenu
Cette page est le guide de configuration partagé pour les plugins gérés par Nightbreak.
Il s'applique directement à :
- EliteMobs
- BetterStructures
- FreeMinecraftModels
- EternalTD
- ResurrectionChest
- WorldCannon
Ces plugins partagent désormais le même cycle de vie global :
- Installez le plugin et toutes les dépendances obligatoires.
- Démarrez le serveur une fois pour que les fichiers et menus soient générés.
- Exécutez la commande de configuration initiale du plugin s'il en possède une.
- Liez un token Nightbreak avec
/nightbreaklogin <token>. - Utilisez le menu de configuration du plugin pour parcourir, installer, activer, désactiver et mettre à jour le contenu.
- Utilisez les commandes de téléchargement/mise à jour en masse du plugin lorsque vous souhaitez un démarrage initial plus rapide.
Ce que MagmaCore partage réellement
MagmaCore est la couche partagée derrière le flux géré par Nightbreak. Il fournit :
- la commande partagée
/nightbreaklogin <token>(permissionnightbreak.login, par défaut OP) - la commande partagée
/nightbreaklogoutpour déconnecter le serveur de son compte Nightbreak (permissionnightbreak.login, par défaut OP) - la commande partagée
/logifypour envoyer le journal serveur actuel vers mclo.gs (permissionlogify.*, par défaut OP) - la commande partagée
/nightbreak pluginspour parcourir le catalogue de plugins Nightbreak (permissionnightbreak.plugins, par défaut OP) - le stockage partagé du token dans
plugins/MagmaCore/nightbreak.yml - les primitives partagées du menu de configuration utilisées par les menus de configuration des plugins
- les vérifications partagées d'accès, de version et de téléchargement Nightbreak
- la logique partagée de téléchargement en masse qui télécharge les fichiers dans le dossier
importsdu plugin propriétaire - la boîte de réception partagée des changelogs qui prévient les administrateurs en jeu lorsqu'un plugin ou un paquet de contenu installé possède des notes de version non lues (voir Notifications de changelog Nightbreak)
- l'ensemble standard de sous-commandes que chaque plugin géré par Nightbreak enregistre sous sa propre commande racine (voir ci-dessous)
/nightbreaklogin, /nightbreaklogout, /logify et /nightbreak sont enregistrées une seule fois par serveur par le premier plugin géré par Nightbreak qui charge MagmaCore, de sorte qu'elles sont disponibles quel que soit le plugin qui les « possède » au moment de l'exécution.
Sous-commandes standard partagées
Les sous-commandes ci-dessous ne sont pas écrites par chaque plugin. MagmaCore enregistre les mêmes implémentations sous la commande racine déclarée par le plugin (/em, /bs, /fmm, /etd, …), ce qui explique pourquoi elles se comportent de façon identique partout.
| Sous-commande | Ce qu'elle fait | Permission |
|---|---|---|
setup | Ouvre le menu de configuration du plugin. Réservée aux joueurs. | permission setup du plugin |
initialize | Ouvre le menu de première configuration pour les joueurs si le plugin enregistre ce parcours. Les modes préréglés ne sont pas requis ; FreeMinecraftModels l’enregistre également. Consultez la page des commandes du plugin. | permission initialize du plugin |
recommendedplugins | Affiche les plugins compagnons recommandés (menu en jeu, liste dans le chat depuis la console). | permission setup du plugin |
downloadpluginupdate | Télécharge uniquement un jar de mise à jour du plugin. Aucun contenu. | permission admin du plugin |
downloadall | Télécharge la mise à jour du plugin puis tout le contenu disponible. | permission admin du plugin |
downloadallcontent | Télécharge tout le contenu disponible, sans mise à jour du plugin. Enregistrée uniquement par les plugins qui livrent des paquets de contenu. | permission setup du plugin |
updatecontent (alias updateallcontent) | Télécharge uniquement les mises à jour du contenu déjà obsolète. Enregistrée uniquement par les plugins qui livrent des paquets de contenu. | permission setup du plugin |
forcereinstallcontent <package|all> | Retélécharge le contenu via le chemin normal d'import authentifié et de rechargement, même si la version installée est déjà à jour. all couvre tous les paquets téléchargés, installés ou obsolètes ; indiquez directement le slug d'un paquet si ses fichiers ont totalement disparu. Enregistrée uniquement par les plugins qui livrent des paquets de contenu. | permission admin du plugin |
Le nœud de permission exact derrière chaque colonne est choisi par le plugin ; consultez donc la page du plugin concerné pour ses noms de nœuds. initialize est un flux de guidage initial — il ne remplace ni le menu de configuration ni les commandes de gestion de contenu.
Comme downloadall commence par la mise à jour du plugin, il s'arrête avant l'étape du contenu lorsque le compte n'a pas de token ou que l'authentification du token a échoué. Corrigez d'abord le token, puis relancez-la.
MagmaCore possède également un système d'initialisation séparé au démarrage du plugin, mais ce n'est pas la même chose que les commandes initialize destinées aux joueurs documentées ici.
Mises à jour automatiques
Chaque plugin géré par Nightbreak écrit une clé partagée dans son propre config.yml :
nightbreak:
autoDownloadPluginUpdates: false
Lorsqu'elle vaut true, ce plugin télécharge automatiquement, quelques minutes après le démarrage :
- un jar de mise à jour du plugin s'il est disponible, et
- les fichiers de mise à jour de tous les paquets de contenu obsolètes qu'il gère.
Les mises à jour de plugin et de contenu téléchargées sont utilisées après le redémarrage du serveur — rien n'est remplacé à chaud sur un serveur en fonctionnement. Le paramètre vaut false par défaut, vous restez donc d'emblée sur le bouton de mise à jour en jeu.
Les téléchargements automatiques du jar de plugin nécessitent à la fois un token de compte valide et un abonnement Patreon de soutien actif sur le compte Nightbreak lié. Sans eux, le téléchargement est refusé et le plugin en journalise la raison. Les téléchargements sont également vérifiés : le jar fait l'objet d'un contrôle de somme et est validé comme véritable artefact de plugin avant d'être placé dans le dossier update du serveur, et un contrôle échoué écarte le fichier au lieu de l'installer.
Indépendamment du paramètre de téléchargement automatique, chaque plugin revérifie discrètement l'existence d'une version plus récente environ une fois par heure afin que le menu de configuration puisse afficher un état de mise à jour exact. Cette vérification ne télécharge jamais rien d'elle-même.
Flux recommandé pour les propriétaires de serveurs
1. Installez d'abord le plugin
Placez le fichier jar du plugin et toutes les dépendances obligatoires dans plugins/, puis démarrez le serveur une fois.
2. Exécutez le flux de configuration initiale
Si le plugin expose une commande initialize, utilisez-la en premier. Les menus actuels sont conçus pour :
- marquer la configuration initiale comme terminée
- vous diriger vers la liaison de compte Nightbreak
- vous diriger vers le menu de configuration actuel
- clarifier quand les importations manuelles sont encore valides
Ouvre le menu de première configuration pour les joueurs si le plugin enregistre ce parcours. Les modes préréglés ne sont pas requis ; FreeMinecraftModels l’enregistre également. Consultez la page des commandes du plugin.
3. Liez votre compte Nightbreak
Rendez-vous sur la page du compte Nightbreak, obtenez votre token de serveur et exécutez :
/nightbreaklogin <token>
Le token est partagé via MagmaCore, donc un token lié peut être réutilisé par tous les plugins MagmaGuy compatibles sur ce serveur.
4. Utilisez le menu de configuration pour la gestion quotidienne du contenu
Les menus de configuration sont la source de référence actuelle pour :
- les états des paquets
- les états d'accès
- le contenu installé vs téléchargé
- le contenu partiellement installé nécessitant une réparation
- le contenu obsolète
- les filtres de contenu par catégorie
Si vous avez un token lié, les menus de configuration sont l'endroit recommandé pour installer et mettre à jour le contenu.
5. Utilisez l'installation/mise à jour en masse pour la rapidité
Utilisez la commande downloadall lorsque vous souhaitez configurer un serveur rapidement et la commande updatecontent lorsque vous souhaitez rafraîchir tout ce qui est obsolète.
Le téléchargeur en masse partagé ne tente que les paquets gérés par Nightbreak qui :
- ont un slug Nightbreak
- sont accessibles au token lié
- ne sont pas encore téléchargés ou sont marqués comme obsolètes
Les commandes interactives de téléchargement en masse demandent au plugin propriétaire de se recharger après au moins un téléchargement réussi. Les téléchargements automatiques de contenu au démarrage ne rechargent délibérément pas le plugin ; ils prennent effet après le redémarrage du serveur.
Concepts partagés
Téléchargé vs installé
Un paquet peut exister localement sans être activé. La signification exacte varie légèrement selon le plugin, mais l'état du menu de configuration compte plus que l'existence d'un zip dans imports.
Les téléchargements en masse atterrissent également dans le même dossier imports du plugin utilisé par les importations manuelles avant que l'étape d'importation/rechargement spécifique au plugin ne se termine.
Contenu sensible aux accès
Les menus de configuration peuvent désormais distinguer entre le contenu qui :
- est disponible pour votre token
- doit être acheté ou déverrouillé
- est installé
- n'est que partiellement installé
- est téléchargé mais désactivé
- est obsolète
Les importations manuelles sont toujours valides
Les plugins gérés par Nightbreak supportent toujours les flux d'importation manuelle. L'importation manuelle est désormais le chemin de secours, pas le chemin par défaut. Voir Importations manuelles vs gestion en jeu.
Plugins qui n'utilisent pas ce flux
Tous les plugins de ce wiki n'utilisent pas le contenu téléchargeable géré par Nightbreak.
- BetterFood n'utilise pas la gestion de paquets Nightbreak
- ResourcePackManager gère les packs de ressources, pas les paquets DLC Nightbreak
Ces deux plugins enregistrent malgré tout la coquille de configuration partagée ainsi que les commandes partagées de mise à jour du plugin et de changelog ; ce qui leur manque, ce sont les paquets de contenu Nightbreak.
ResurrectionChest et WorldCannon ne sont pas des exceptions : tous deux déclarent des paquets de contenu, enregistrent les sous-commandes de contenu partagées et utilisent l'importeur partagé, ils acceptent donc aussi les zips de paquets placés à la main. Voir Importations manuelles vs gestion en jeu.