Aller au contenu principal

Configuration d'EternalTD

Le flux de configuration actuel d'EternalTD repose sur du contenu géré par Nightbreak, un support optionnel de modèles via FreeMinecraftModels et une commande d'aide pour le pack de ressources.

Prérequis

  • EternalTD 1.7.1
  • 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.

Ce qu'EternalTD crée

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.

Flux recommandé pour la première installation

  1. Installez EternalTD et démarrez le serveur une fois.
  2. Liez votre compte Nightbreak avec /nightbreaklogin <token>.
  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 <token> 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 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,
  • 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).

Comportement du spawn et du hub

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). Cela est également activable en jeu depuis le bouton « Automatic Updates » du menu /etd setup.

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.
  • FreeMinecraftModels n'est pas rechargé par /etd reload. Rechargez le contenu de FMM avec sa propre commande si vous avez importé des ressources de modèles à la main.

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.