Aller au contenu principal

Packs de contenu FreeMinecraftModels

Le contenu officiel de FMM est désormais disponible sous forme de packs gérés par Nightbreak.

Packs officiels actuels​

Le plugin actuel définit cinq packs officiels prêts à l'emploi, mêlant contenu prop et objet :

PackTypeNom du fichier de configNom de dossierSlug Nightbreak
Basic Furniture PackPropsbasic_furniture_packBasic Furniture Packbasic-furniture-pack
BetterStructures Prop PackPropsbetterstructures_prop_packbs prop packbetterstructures-prop-pack
EliteMobs Prop PackPropselitemobs_prop_packem_dungeon_prop_packelitemobs-prop-pack
Craftenmine's Weapons Item PackObjets personnaliséscraftenmines_weapons_item_packfmm_craftenmine_weapons_items_packcraftenmines-weapons-item-pack
Craftenmine Tools Item PackObjets personnaliséscraftenmine_tools_item_packfmm_craftenmine_tools_items_packcraftenmine-tools-item-pack

Le nom du fichier de config identifie l'entrée .yml sous plugins/FreeMinecraftModels/content_packages/. Le nom de dossier identifie le répertoire des modèles du pack dans models/ ou models_disabled/. Les préfixes se configurent séparément, comme décrit ci-dessous.

Chaque pack possède un nom de dossier local, un slug Nightbreak, un champ de version et un état activé ou désactivé dans content_packages. Les deux packs Craftenmine fournissent des objets tenus avec des définitions material: et des enchantements utilisant des espaces de noms. Les anciennes versions contenant des scripts: d'objets équipés nécessitent un contenu mis à jour : ces définitions sont ignorées.

Ce que gère le menu d'installation​

/fmm setup affiche l'état des packs à partir de la configuration locale, des fichiers détectés et des informations Nightbreak en cache. Le menu distingue :

  • les packs installés
  • les packs téléchargés mais actuellement désactivés
  • les packs obsolètes
  • les packs qui nécessitent un accès Nightbreak

Le menu déclenche des vérifications de version et d'accès en arrière-plan, avec un délai minimal de cinq minutes entre les rafraîchissements. Les versions sont vérifiées pour les packs détectés comme installés. Un indicateur d'installation signifie que le pack est activé et qu'une entrée de modèle gérée existe ; il ne prouve ni le chargement de tous les modèles ni la réception du resource pack par les clients. Vérifiez aussi /fmm admin, la console et la livraison aux clients.

Comportement des dossiers​

Le plugin utilise des déplacements de dossier basés sur l'état du pack pour le contenu activé et désactivé :

  • les dossiers de modèles activés se trouvent dans models/<folderName>
  • les dossiers de modèles désactivés se trouvent dans models_disabled/<folderName>
  • les fichiers de scripts activés se trouvent dans scripts/
  • les fichiers de scripts désactivés se trouvent dans scripts_disabled/

Du contenu téléchargé peut exister sur disque sans être actif. L'installation ou la désinstallation déplace les entrées correspondantes de modèles, scripts et enchantements, enregistre l'état activé, puis demande un rechargement. Ces déplacements sont séquentiels, sans transaction atomique : un échec de déplacement ou d'enregistrement peut laisser une modification partielle. Vérifiez la console et les deux emplacements avant de réessayer. Les deux actions exigent une entrée de modèle gérée dans leur dossier source ; des fichiers contenant seulement des scripts ou enchantements peuvent compter comme téléchargés sans rendre le pack installable par cette action.

Les anciennes installations peuvent utiliser Models ou Models_disabled. Le chemin actif préfère models en minuscules, tandis que le chemin désactivé préfère un dossier Models_disabled existant. Consultez les notes de création des modèles avant de regrouper des répertoires sensibles à la casse.

Préfixes de fichiers​

Les configurations possèdent contentFilePrefixes et scriptFilePrefixes. Les cinq définitions intégrées initialisent ces deux listes vides ; elles n'utilisent pas automatiquement folderName comme préfixe. Examinez les valeurs fournies dans la configuration installée.

Pour les modèles et enchantements, FMM sélectionne l'entrée exacte folderName ainsi que les entrées à la racine dont le nom commence par une valeur de contentFilePrefixes. Pour les scripts, il sélectionne les entrées à la racine correspondant à scriptFilePrefixes, sans correspondance supplémentaire sur le nom de dossier. Les préfixes ignorent la casse et peuvent sélectionner des fichiers ou des répertoires entiers ; ils ne recherchent pas récursivement des fichiers dans des répertoires sans rapport. Utilisez des préfixes distincts et conservez les fichiers référencés dans les entrées sélectionnées.

Téléchargement et installation​

Il y a deux étapes distinctes :

  1. Téléchargez le contenu du pack. Les téléchargements arrivent dans plugins/FreeMinecraftModels/imports. Un téléchargement géré réussi enregistre l'état activé avant de demander un rechargement et une importation.
  2. Maintenez le pack activé ou désactivé. Le menu d'installation installe et désinstalle les packs en déplaçant leurs dossiers entre models et models_disabled.

Les opérations en masse suivent le même modèle :

  • /fmm downloadall télécharge la mise à jour du jar du plugin puis chaque pack accessible manquant ou obsolète. Le contenu peut être appliqué par le rechargement de suivi de FMM ; le jar du plugin lui-même prend effet après un redémarrage ou après /fmm applypluginupdate
  • /fmm downloadallcontent effectue la même recherche de contenu sans mettre à jour le jar du plugin
  • /fmm updatecontent (alias /fmm updateallcontent) rafraîchit les informations de version et d'accès, puis met à jour les packs marqués comme obsolètes ; les vérifications de version couvrent actuellement les packs installés

Les opérations groupées traitent les packs séquentiellement et distinguent les téléchargements et préparations réussis des échecs. Si au moins un pack aboutit, elles planifient un rechargement 20 ticks plus tard, même si d'autres échouent. Sans réussite, aucun rechargement n'a lieu ; une installation sans travail signale l'absence de nouveau contenu, tandis qu'une mise à jour vide signale l'absence de mises à jour en attente. Un téléchargement réussi ne prouve pas la réussite de l'importation, du chargement des modèles ou de la livraison aux clients qui suivent.

Les opérations groupées de contenu partagent une protection qui bloque une seconde exécution jusqu'à la fin de la première ou au début de son rechargement. Elles exigent un jeton Nightbreak lié et s'arrêtent sur une erreur d'authentification. Les échecs ordinaires de packs sont signalés et le traitement des autres continue. Si le joueur à l'origine de l'opération se déconnecte, le traitement continue avec des messages en console. L'arrêt du plugin invalide la publication des téléchargements en attente et les rappels de ce cycle d'exécution.

Réparer un pack​

La sélection habituelle utilise les fichiers détectés et l'état des versions, sans contrôler l'intégrité des fichiers. Un pack partiellement endommagé peut encore sembler à jour et être ignoré. /fmm forcereinstallcontent <package|all> télécharge de nouveau le contenu sélectionné quelle que soit sa version, puis demande un rechargement après les téléchargements réussis. Cette opération ne force pas l'activation d'un pack désactivé.

  • L'autocomplétion propose all ainsi que le slug Nightbreak de chaque pack (basic-furniture-pack, betterstructures-prop-pack, elitemobs-prop-pack, craftenmines-weapons-item-pack, craftenmine-tools-item-pack).
  • all sélectionne les packs détectés comme téléchargés, installés ou marqués comme obsolètes. Si aucun ne correspond, le message est No downloaded content was detected. Specify a package slug directly if its files are completely missing. Indiquez directement le slug d'un pack entièrement absent.
  • Un sélecteur inconnu signale Unknown Nightbreak content package: <name>.
  • Elle partage la même protection contre les exécutions simultanées que les autres opérations en masse, et nécessite freeminecraftmodels.*.

Contenu provenant d'autres packs​

Un pack de contenu de n'importe quel plugin Nightbreak, par exemple un pack EliteMobs ou BetterStructures placé dans le dossier imports de ce plugin, peut transporter du contenu FreeMinecraftModels dans un dossier freeminecraftmodels/ de premier niveau, organisé comme plugins/FreeMinecraftModels/. Par exemple, freeminecraftmodels/enchantments/ fournit les enchantements freeminecraftmodels: utilisés par les objets du pack, et freeminecraftmodels/models/ est fusionné dans le dossier de modèles lu par FMM (models en minuscules, ou un ancien dossier Models s'il existe). Les dossiers models/ et scripts/ de premier niveau d'un pack sont également envoyés vers FMM. Un dossier enchantments/ de premier niveau suit la plateforme du pack, indiquée par pack.meta (ou, à défaut, le plugin dont le dossier imports contient le pack) : un pack FreeMinecraftModels l'installe dans FMM, tandis que les packs EliteMobs et BetterStructures l'installent dans EliteMobs.

Lorsque l'import d'un autre plugin place des fichiers dans le dossier de FMM, FMM lance ensuite son rechargement du contenu importé. Ce rechargement reconstruit les modèles, objets, enchantements, scripts de props, recettes et le resource pack, mais ne relit ni config.yml ni shop_config.yml.

Navigateur de contenu administrateur​

/fmm admin ouvre un navigateur en jeu pour les modèles chargés et les objets personnalisés enregistrés. Il affiche :

  • les packs activés avec du contenu chargé (avec des comptes séparés pour les props et les objets)
  • les dossiers de modèles hors pack (avec des comptes séparés pour les props et les objets)
  • les modèles de props individuels
  • les objets personnalisés enregistrés avec succès

Les props utilisent un style jaune et une icône de papier. Les objets personnalisés utilisent leur matériau et leur nom configurés, avec un nom violet par défaut. L'affichage dépend de l'enregistrement réussi de l'objet, pas de la seule présence de material: dans un fichier ; une définition rejetée n'apparaît pas comme un objet personnalisé fonctionnel.

Les entrées de packs et de dossiers ouvrent leurs listes de contenu. Cliquer sur un prop ou objet individuel en ajoute une copie à l'inventaire. Les objets personnalisés incluent le matériau configuré, les enchantements, le lore et le tag fmm_item_id ; les props donnent des objets de placement en papier. Gardez de la place : ces gestionnaires administrateur ne déposent pas le surplus au sol. Les erreurs de création d'objet sont signalées dans le chat. L'enregistrement et une entrée visible dans le menu ne prouvent pas un rendu correct côté client.

Contenu d'enchantements​

L'activation et la désactivation incluent les fichiers YAML/Lua des enchantements gérés, les modèles et les scripts de props. Le contenu actif se trouve dans enchantments/ et le contenu désactivé dans enchantments_disabled/. La sélection suit les règles de nom de dossier et de préfixes de contenu ci-dessus : conservez les définitions des fournisseurs et leurs scripts référencés dans les entrées sélectionnées. L'ancien moteur de scripts d'objets ne remplace pas un fournisseur d'enchantements manquant.