Commandes EternalTD
EternalTD enregistre la commande racine :
/eternaltd
/etd
Les commandes de compte Nightbreak utilisées lors de la configuration sont des commandes de premier niveau distinctes, enregistrées par MagmaCore :
/nightbreaklogin [token]
/nightbreaklogout
Les deux sont protégées par nightbreak.login (default: op). /nightbreaklogin sans jeton affiche un lien nightbreak.io ; une fois que vous l'avez approuvé sur le site, le serveur est lié. /nightbreaklogout efface du serveur le jeton de compte Nightbreak enregistré.
MagmaCore enregistre également une commande de changelog par plugin, /etdchangelog, en tant que commande de premier niveau à part entière (voir Changelog de version).
Installation et gestion du contenu
La plupart de ces sous-commandes sont enregistrées par MagmaCore via NightbreakPluginBootstrap.registerStandardCommands. Elles sont partagées entre tous les plugins Nightbreak et sont livrées avec EternalTD car MagmaCore est intégré (shaded) dans le plugin.
| Commande | Expéditeur | Fonction actuelle |
|---|---|---|
/etd | Tous | Affiche l'aide rapide d'installation et de contenu. Exige eternaltd.* ; sans cette permission, l'expéditeur reçoit « You do not have permission to run this command! » |
/etd initialize | Joueur | Ouvre le menu de première configuration. Nécessite eternaltd.*. |
/etd setup | Joueur | Ouvre le menu de configuration d'EternalTD (l'explorateur de paquets ainsi que les contrôles partagés de mise à jour du plugin, de plugins recommandés et de mise à jour automatique) |
/etd recommendedplugins | Tous | Ouvre (joueur) ou affiche (console) les plugins compagnons recommandés pour EternalTD |
/etd downloadpluginupdate | Tous | Télécharge une mise à jour du plugin EternalTD si elle est disponible. Elle est utilisée après le prochain redémarrage, sauf si nightbreak.applyPluginUpdatesWithoutRestart l'applique plus tôt |
/etd applypluginupdate | Tous | Applique une mise à jour du plugin EternalTD déjà téléchargée sans redémarrage. EternalTD est désactivé puis réactivé sur le nouveau jar : les niveaux en cours se terminent donc. Refusée lorsqu'aucune mise à jour plus récente n'est en attente, lorsqu'un autre remplacement de plugin est en cours ou lorsqu'un plugin d'un autre auteur dépend d'EternalTD ; si le nouveau jar ne s'active pas, l'ancien jar est rechargé |
/etd downloadall | Tous | Télécharge la mise à jour du plugin EternalTD et tout le contenu disponible |
/etd downloadallcontent | Tous | Télécharge tout le contenu EternalTD disponible (sans mise à jour du plugin) |
/etd updatecontent | Tous | Télécharge les mises à jour du contenu EternalTD obsolète |
/etd updateallcontent | Tous | Alias de /etd updatecontent |
/etd forcereinstallcontent <package|all> | Tous | Retélécharge le contenu via le pipeline normal d'import/rechargement authentifié même lorsque la version installée est déjà à jour. all couvre tous les paquets détectés comme téléchargés ; un slug Nightbreak (complété par tabulation) cible un seul paquet et fonctionne même si ses fichiers sont totalement absents. Utilisez cette commande pour réparer un paquet dont les fichiers ont été supprimés ou corrompus. |
/etd install | Tous | Enregistre le pack officiel auprès de ResourcePackManager et demande son rechargement s'il est disponible. Sinon, télécharge le pack, calcule son empreinte et met à jour server.properties ; cette méthode nécessite un redémarrage du serveur. Un échec d'enregistrement utilise également server.properties. |
/etd reload | Tous | Redémarre EternalTD sur place (cycle complet disable, load, enable) |
Note pour les administrateurs :
- Le
plugin.ymld'EternalTD déclare deux nœuds de permission, tous deuxdefault: op.eternaltd.*donne accès aux commandes d'administration, de configuration et de débogage.eternaltd.match.bypasspermet à un joueur de se téléporter dans le monde de niveau en cours d'un autre joueur sans en être expulsé (voir Règles de la partie). - Toutes les commandes d'administration se ramènent à
eternaltd.*:setup,recommendedplugins,downloadall,downloadallcontent,downloadpluginupdate,applypluginupdate,updatecontent/updateallcontent,forcereinstallcontent,install,reload,cheat,setwave,selectfloor,selectfloorcoordinates,showselection,register,register start,register end, ainsi que/etdseul. (Les commandes MagmaCore partagées répartissent cela entre des permissions « admin », « setup » et « initialize », mais EternalTD transmeteternaltd.*pour les trois, l'exigence effective est donc identique.) - Les deux commandes de compte Nightbreak utilisent leur propre nœud,
nightbreak.login(default: op), que MagmaCore enregistre à l'exécution plutôt que via leplugin.ymld'EternalTD. initializeest enregistré par le bootstrap partagé et nécessite aussieternaltd.*; les modes prédéfinis ne contrôlent pas cet enregistrement.- Seules les commandes destinées aux joueurs sont sans restriction :
hub/lobby,join,start/goetquit/stop. - La complétion par tabulation du premier argument est également filtrée par permission, de sorte que les joueurs sans
eternaltd.*ne voient que les sous-commandes destinées aux joueurs.
Commandes de jeu
| Commande | Expéditeur | Fonction actuelle |
|---|---|---|
/etd join <level> | Joueur | Demande une session depuis un fichier de niveau chargé. Le monde modèle est copié hors du thread principal. Attendez « Created your world! We're ready to go. » avant de commencer ; le message précédent « Joined level! » ne confirme pas la réussite et peut apparaître même après une erreur de préparation. Une seconde demande en attente est refusée, tout comme un joueur déjà dans une partie, y compris celle d'un autre plugin Nightbreak. Une déconnexion, ou 10 minutes sans monde prêt, annule la préparation. |
/etd start | Joueur | Démarre la première vague de la session active |
/etd go | Joueur | Alias de /etd start |
/etd quit | Joueur | Termine votre session de niveau en cours |
/etd stop | Joueur | Alias de /etd quit |
/etd hub | Joueur | Vous ramène au point d'arrivée configuré du hub EternalTD. La session active se termine d'abord : état du joueur restauré, tours retirées et nettoyage de l'instance demandé. Si le hub n'est pas configuré, la commande s'arrête avant de terminer la session. Une téléportation refusée est signalée. |
/etd lobby | Joueur | Alias de /etd hub |
Commandes de débogage et d'administration du jeu
| Commande | Expéditeur | Fonction actuelle |
|---|---|---|
/etd cheat | Joueur | Bascule le mode triche et fixe la monnaie à 10 000 000 et les vies à 1 000 000 à chaque appel, même lors de la désactivation. Marque définitivement la partie comme trichée et l'exclut des records. |
/etd setwave <wave> | Joueur | Définit le compteur de vague enregistré et marque la partie comme trichée. Ne remplace pas les ennemis actuels et ne lance pas immédiatement la vague demandée ; la transition normale suivante utilise le compteur plus un. |
Ce sont des outils de session et de débogage. En mode triche, construire et améliorer ne déduit pas de monnaie, mais les vérifications de fonds suffisants restent actives. Désactiver ce mode ne rétablit pas l'éligibilité aux records. setwave accepte un entier sans vérifier l'existence de la vague correspondante.
Commandes de création de cartes
Ces commandes restent présentes dans le code actuel pour sélectionner le sol et enregistrer les niveaux.
| Commande | Expéditeur | Fonction actuelle |
|---|---|---|
/etd selectfloor | Joueur | Bascule la sélection du sol. Clic gauche sur un bloc pour le coin 1, clic droit pour le coin 2, comme l'indique le message introductif de la commande. Désactiver la sélection l'efface. |
/etd selectfloorcoordinates <x1> <y1> <z1> <x2> <y2> <z2> | Joueur | Définit des coins entiers dans votre monde actuel et soustrait 1 à chaque Y fourni pour sélectionner le sol en dessous. Les deux Y doivent être identiques et les longueurs inclusives X/Z doivent être des multiples de 3. |
/etd showselection <level> | Joueur | Vérifie la sélection du sol et la conserve. Affiche une particule END_ROD, visible par vous seul, au-dessus de chaque case de sol que la sélection enregistrerait. Ne sauvegarde rien. |
/etd register <level> | Joueur | Écrit dans le fichier du niveau une entrée levelLocations par case de sol de la sélection actuelle, en remplaçant la liste existante, puis efface la sélection. Une sélection invalide, ou sans aucune case de sol, n'écrit rien et conserve la sélection. |
/etd register <level> start | Joueur | Ajoute les coordonnées entières actuelles du joueur à startLocation et sauvegarde. Nécessite une entrée de sélection active ; ne soustrait pas 1 à Y. |
/etd register <level> end | Joueur | Ajoute les coordonnées entières actuelles du joueur à endLocation et sauvegarde. Nécessite une entrée de sélection active ; ne soustrait pas 1 à Y. |
Notes de version
MagmaCore enregistre une commande de premier niveau supplémentaire par plugin Nightbreak, nommée d'après la commande racine suivie de changelog :
/etdchangelog
/etdchangelog dismiss
/etdchangelog disable
| Forme | Effet |
|---|---|
/etdchangelog | Ouvre les notes de version des versions d'EternalTD (et des paquets de contenu suivis) que vous n'avez pas encore lues |
/etdchangelog dismiss | Marque comme lues les versions actuellement affichées et passe au lot non lu suivant, s'il y en a un |
/etdchangelog disable | Désactive définitivement l'avis de changelog pour ce joueur |
Comportements à connaître :
- La commande est réservée aux joueurs et aux administrateurs. « Administrateur » signifie ici op,
eternaltd.*, ou n'importe laquelle des permissions admin/setup/initialize de la spécification — les trois étant définies sureternaltd.*par EternalTD. - Les administrateurs qui rejoignent le serveur reçoivent un avis dans le chat avec un bouton cliquable view environ 2 secondes après la connexion, mais uniquement s'il y a quelque chose de non lu et qu'ils n'ont pas exécuté
disable. - L'état lu/ignoré, la version à partir de laquelle le suivi a commencé et le texte de version mis en cache sont stockés dans
plugins/EternalTD/nightbreak-changelogs.yml. - Si un autre plugin possède déjà le libellé
etdchangelog, MagmaCore enregistre à la place une solution de repli avec espace de noms (eternaltd:etdchangelog).
Notes
- Le
plugin.ymld'EternalTD ne déclare que la commande racine et les permissionseternaltd.*eteternaltd.match.bypass. Les sous-commandes sont enregistrées via le gestionnaire de commandes à l'exécution. /etd reloadredémarre EternalTD par désactivation, chargement puis activation. La migration des dossiers, les imports, les packs, les vagues, les niveaux, les modèles de mondes, les PNJ et la configuration du pack de ressources sont relancés. FreeMinecraftModels n'est pas rechargé systématiquement : si l'importateur installe des modèles ou d'autres fichiers dans les dossiers de FMM alors que FMM est activé, l'événement partagé d'installation des modèles appelle son rechargement de contenu.- La complétion des niveaux de
join,showselectionetregisterconsulte le registre actuellement chargé. Les nouveaux niveaux apparaissent donc sans reconstruire le gestionnaire de commandes. L'exécution vérifie elle aussi que le niveau indiqué existe.