Aller au contenu principal

Installation d'EternalTD

L'installation actuelle d'EternalTD repose sur du contenu géré par Nightbreak, des modèles facultatifs fournis par FreeMinecraftModels et une commande de configuration du pack de ressources.

Prérequis​

  • EternalTD ; ces instructions suivent le code source actuel 1.7.8
  • Java 21
  • Un serveur compatible Paper/Spigot sur la ligne API 1.21.4 actuelle

Intégrations optionnelles :

  • FreeMinecraftModels pour les modèles personnalisés d'EternalTD
  • ResourcePackManager si vous souhaitez qu'EternalTD enregistre son pack de ressources officiel là-bas au lieu d'écrire dans server.properties
  • floodgate et LibsDisguises sont des dépendances optionnelles (soft-depends), pas des prérequis de configuration pour le flux de configuration actuel

Le plugin.yml déclare exactement quatre soft-depends : FreeMinecraftModels, LibsDisguises, floodgate et ResourcePackManager. ModelEngine n'est plus référencé nulle part dans le plugin.

Fichiers créés par EternalTD​

Au démarrage, EternalTD initialise ou utilise ces chemins :

plugins/EternalTD/config.yml
plugins/EternalTD/content_packages/
plugins/EternalTD/imports/
plugins/EternalTD/levels/
plugins/EternalTD/waves/
plugins/EternalTD/npcs/
plugins/EternalTD/worlds/

Note sur les versions antérieures :

  • Le plugin traite désormais levels/ et npcs/ comme noms de dossier canoniques.
  • Au démarrage et au rechargement, il migre automatiquement les anciens dossiers Levels/ et NPCs/ vers les chemins en minuscules.
  • La migration n'écrase jamais un fichier. Si le dossier en minuscules contient déjà un fichier portant le même nom, le déplacement s'arrête, les fichiers non déplacés restent dans l'ancien dossier ou dans levels_migration/ (npcs_migration/), et EternalTD journalise un échec d'initialisation. Fusionnez les fichiers à la main, puis redémarrez.
  1. Installez EternalTD et démarrez le serveur une fois.
  2. Liez votre compte Nightbreak avec /nightbreaklogin, puis approuvez le serveur via le lien affiché.
  3. Exécutez /etd downloadall pour télécharger tous les paquets EternalTD accessibles dans plugins/EternalTD/imports.
  4. Exécutez /etd install pour appliquer la configuration officielle du pack de ressources EternalTD.
  5. Exécutez /etd setup à tout moment pour parcourir, activer, désactiver ou mettre à jour des paquets individuels.

/nightbreaklogin fait partie du flux de compte partagé Nightbreak/MagmaCore, ce n'est pas une commande déclarée dans le plugin.yml d'EternalTD.

Le menu /etd initialize​

Tant que setupDone vaut false, les joueurs possédant eternaltd.* reçoivent un rappel de configuration 10 secondes après leur connexion. Il renvoie vers /etd initialize et /etd setup.

/etd initialize ouvre le menu de première configuration. Ses trois choix définissent tous setupDone: true, ce qui arrête le rappel :

  • Recommended Setup affiche les étapes de configuration guidée et, si le serveur n'est pas encore lié, lance pour vous une liaison /nightbreaklogin.
  • Manual Setup vous laisse gérer les paquets vous-même et vous rappelle d'exécuter /etd install.
  • Use Current Content conserve tels quels vos dossiers de contenu EternalTD existants.

Le menu /etd setup​

/etd setup ouvre le menu de configuration partagé de MagmaCore. En plus des paquets de contenu EternalTD (filtrés par Free Content, Premium Packs et Resources), le menu expose également ces contrôles standard de MagmaCore :

  • une entrée Plugin Update qui affiche la version d'EternalTD installée par rapport à la dernière et télécharge une mise à jour du plugin lorsqu'elle est disponible (appliquée au redémarrage, ou plus tôt si nightbreak.applyPluginUpdatesWithoutRestart le permet),
  • une entrée Recommended Plugins qui ouvre la vue des recommandations de plugins compagnons (également accessible avec /etd recommendedplugins),
  • un bouton bascule Automatic Updates qui active ou désactive la valeur de configuration nightbreak.autoDownloadPluginUpdates,
  • une entrée Download All qui exécute /etd downloadall (mise à jour du plugin plus tout le contenu disponible).

Point d'apparition et accueil​

config.yml inclut actuellement :

  • setupDone — indicateur suivant si les conseils de configuration initiale ont été complétés (par défaut false).
  • spawnLocations — par défaut etd_spawn,0,65,0,0,0 et toujours écrit dans la configuration. EternalTD ne le résout et ne l'utilise que lorsque le monde etd_spawn existe.
  • manageSpawn — par défaut true. Téléporte les joueurs qui se connectent vers le monde hub d'EternalTD lorsqu'il est disponible.
  • playerGuide — le texte du livre guide en jeu.
  • nightbreak.autoDownloadPluginUpdates — par défaut false. Paramètre partagé de MagmaCore ; lorsque true, le plugin télécharge automatiquement les mises à jour disponibles du plugin et du contenu au démarrage (utilisées après le prochain redémarrage, sauf si nightbreak.applyPluginUpdatesWithoutRestart applique plus tôt la mise à jour du plugin). Cela est également activable en jeu depuis le bouton « Automatic Updates » du menu /etd setup.
  • nightbreak.applyPluginUpdatesWithoutRestart (par défaut never) est un paramètre partagé de MagmaCore qui détermine quand une mise à jour du plugin téléchargée est appliquée sans redémarrage : never attend le prochain redémarrage, when-empty l'applique dès qu'aucun joueur n'est connecté, et immediately l'applique dès la fin du téléchargement. Toute autre valeur compte comme never. Appliquer une mise à jour désactive puis réactive EternalTD : les niveaux en cours se terminent donc. /etd applypluginupdate applique à la demande une mise à jour téléchargée.

Lorsque manageSpawn: true et que le monde etd_spawn existe, les joueurs qui se connectent sont téléportés à l'emplacement de spawn EternalTD configuré.

Le paquet hub officiel est suivi séparément des cartes de jeu et est installé en tant que monde etd_spawn dans le conteneur de mondes du serveur.

Sur Paper 26.1 et versions ultérieures, les mondes sont migrés hors de la racine du conteneur de mondes vers <level-name>/dimensions/minecraft/<world>. EternalTD recherche etd_spawn à la fois à la racine héritée et à l'emplacement migré, un hub migré est donc toujours détecté comme installé et chargé. Les résidus de migration incomplète sont mis en quarantaine avant la création du monde, car la migration de Paper refuse de fusionner une copie héritée située à côté d'une copie migrée.

Rechargement après les importations​

Utilisez /etd reload après des importations manuelles ou un nettoyage manuel de fichiers.

/etd reload est un redémarrage complet du plugin sur place — il exécute le chemin disable, load puis enable d'EternalTD — donc tout ce que fait le démarrage se reproduit :

  • les anciens dossiers Levels/ et NPCs/ sont migrés en minuscules
  • l'importateur est relancé
  • les paquets de contenu, les vagues, les niveaux, les modèles de monde et les NPCs sont rechargés
  • l'état de mise à jour/accès des paquets est rafraîchi
  • l'aide du pack de ressources est réinitialisée

Deux conséquences à connaître :

  • Toute session de niveau en cours est démantelée, car le rechargement passe par l'arrêt normal du plugin.
  • Si ce rechargement importe des modèles ou d'autres fichiers dans les dossiers de FreeMinecraftModels (comme scripts) et que FreeMinecraftModels est activé, l'importateur partagé déclenche le rechargement du contenu de FMM. Si vous modifiez ou copiez des fichiers directement dans les dossiers de FMM, utilisez sa propre commande de rechargement.

Joueurs déjà connectés​

manageSpawn téléporte normalement les joueurs vers le hub à la connexion, mais les joueurs qui se connectent pendant qu'EternalTD s'initialise encore n'en bénéficient pas (le monde hub et l'écouteur de connexion n'existent qu'une fois l'initialisation terminée). À la fin de l'initialisation, EternalTD balaie tous les joueurs déjà en ligne et téléporte vers le spawn configuré tous ceux qui ne sont pas déjà dans le monde hub.

Dépannage​

  • Impossible de rejoindre un niveau. Consultez la console pour repérer les erreurs concernant le fichier de ce niveau, son fichier de vagues ou son modèle de monde, et confirmez dans /etd setup que le paquet est installé et activé. Les messages affichés en rejoignant un niveau et au démarrage de la session sont listés sous Cycle de vie du monde et Validation au démarrage de la session.
  • Les tours apparaissent comme des mobs vanilla, ou les modèles n'ont pas de textures. Vérifiez séparément les deux moitiés. Les modèles nécessitent FreeMinecraftModels et le paquet EternalTD Custom Models. Les textures nécessitent que le pack de ressources parvienne au joueur ; voir Modèles et pack de ressources.
  • Avant de mettre à jour le contenu, sauvegardez tout fichier de niveau, de vagues ou de PNJ fourni dans un paquet que vous avez modifié. Une mise à jour de contenu écrit les fichiers du paquet par-dessus vos copies modifiées.

Lorsque vous demandez de l'aide, indiquez les versions d'EternalTD et du serveur, le niveau concerné, les fichiers de configuration pertinents et le journal complet du serveur. /logify téléverse le journal et renvoie un lien.