Import, export et rechargements
Import DeluxeMenus #
Commencez par un rapport :
/crossmenu import deluxemenus --dry-runSans --overwrite, les fichiers CrossMenu existants ne sont jamais remplacés. L'écrasement exige l'argument final confirm. Un import est transactionnel : si la validation échoue, aucun des menus convertis n'est publié.
Couverture mesurée actuellement :
| Domaine | Converti | Couverture |
|---|---|---|
| Balises d'action | 22 / 27 | 81 % |
| Types de condition | 26 / 32 | 81 % |
| Types de clic | 6 / 6 | 100 % |
| Clés de menu | 16 / 16 | 100 % |
| Clés d'objet | 26 / 48 | 54 % |
| Total | 96 / 129 | 74 % |
Ces chiffres sont générés par les tests de l'importeur contre DeluxeMenus 1.14.1. Le rapport d'import liste tout ce qui demande un travail manuel ; CrossMenu ne prétend pas silencieusement à une compatibilité totale.
Exporter un menu #
/crossmenu export shop écrit plugins/CrossMenu/exports/shop-<time>.zip avec le fichier du menu, ses variantes de langue et chaque fichier de composant que le menu utilise. Décompressez-le à la main dans le dossier plugins/CrossMenu/ d'un autre serveur, ou placez le zip dans plugins/CrossMenu/imports/ sur ce serveur et exécutez /crossmenu import package shop-<time>.zip. Un import ne fait qu'ajouter des fichiers : un menu ou un composant qui existe déjà est laissé tel quel et signalé, --dry-run montre ce qui serait ajouté, et un paquet contenant une entrée dangereuse ou illisible est refusé en entier. Une fois les fichiers écrits, tout est validé ; si l'un des nouveaux fichiers contient une erreur, ils sont de nouveau supprimés et rien n'est chargé. Les variables, les plugins et les objets qui manquent sur l'autre serveur ne sont pas vérifiés ; exécutez /crossmenu validate sur celui-ci.
Recharger en toute sécurité #
/crossmenu reload <menu> analyse et valide le fichier demandé avant de le publier. Un mauvais rechargement laisse le menu en cours inchangé. Les identifiants en double et les conflits de commandes sont vérifiés par rapport à l'ensemble du registre, tandis que les menus sans rapport et leurs réponses en cours continuent normalement.
/crossmenu validate, reload et doctor avertissent aussi d'un material: fixe qui n'est pas un objet réel, par exemple COMPASSS ; l'objet apparaîtrait sinon comme une barrière dans le jeu.
/crossmenu doctor écrit un rapport horodaté dans plugins/CrossMenu/diagnostics/. Il reste sur votre serveur et masque les chemins du serveur, les UUID et les valeurs sensibles.
Si config.yml, le fichier de langue ou un menu contient une erreur au démarrage du serveur, CrossMenu n'ouvre aucun menu et n'enregistre aucun écouteur. /crossmenu indique alors aux administrateurs quel fichier a été refusé ; corrigez-le et redémarrez.
Journal d'audit #
Avec audit.enabled: true dans config.yml, CrossMenu ajoute une ligne séparée par des tabulations pour chaque paiement, changement d'expérience, changement d'objet, changement de permission et commande console qu'un clic de menu a exécutés, dans plugins/CrossMenu/audit/audit-YYYY-MM.log (heure UTC, nom du joueur, UUID, menu, action, détail). Il est désactivé par défaut, reste sur votre serveur, et le fichier d'un mois cesse de grossir à 32 Mio. Il contient des noms de joueurs et des UUID ; traitez-le donc comme les autres données de joueurs.