Aller au contenu principal

Sortie du resource pack FreeMinecraftModels

FreeMinecraftModels écrit actuellement son pack généré dans output, et non outputs.

Chemins de sortie par défaut

Le plugin reconstruit ce dossier au démarrage et lors de /fmm reload :

plugins/FreeMinecraftModels/output/FreeMinecraftModels

Il compresse ensuite ce dossier dans :

plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip

Ce chemin zip est celui que ResourcePackManager attend lorsqu'il s'intègre avec FreeMinecraftModels.

Ce qui est généré

Le dossier généré inclut toujours :

  • pack.mcmeta
  • pack.png
  • assets/minecraft/atlases/blocks.json
  • assets/freeminecraftmodels/... sortie des modèles et textures

Pour Minecraft 1.21.4+, FreeMinecraftModels génère des fichiers de définition de modèles d'objets sous :

assets/freeminecraftmodels/items

Pour les serveurs plus anciens, il revient au chemin hérité du modèle de remplacement de l'armure de cheval en cuir.

Sortie du Display Model (1.21.4+)

Lorsqu'un modèle possède un fichier .json de display model adjacent (voir Notes de création de modèles), FMM copie ce JSON (avec les références de texture réécrites pour correspondre aux textures extraites) dans :

assets/freeminecraftmodels/models/display/{modelId}.json

Il génère également une définition d'objet correspondante à :

assets/freeminecraftmodels/items/display/{modelId}.json

Le DisplayModelRegistry suit quels modèles ont des JSON de display à l'exécution pour que ItemMeta.setItemModel() puisse être appelé sur les ItemStacks afin de leur donner l'apparence correcte en main et dans l'inventaire.

Sortie conditionnelle d'objets arc et arbalète

Lorsque FMM détecte un ensemble de modèles d'état d'arc ou d'arbalète (voir Notes de création de modèles), il génère un unique JSON de définition d'objet pour le modèle _idle qui bascule conditionnellement entre tous les états au niveau du resource pack. Aucun travail de paquets côté serveur n'est nécessaire -- le client gère les transitions d'état nativement.

Sortie arc

Pour les arcs, la définition d'objet générée utilise minecraft:condition sur using_item avec un minecraft:range_dispatch sur use_duration (échelle 0.05) :

ConditionModèle utilisé
N'utilise pas l'objet_idle
En utilisation, par défaut (vient de commencer)_draw_start
En utilisation, seuil 0.65_draw_half
En utilisation, seuil 0.9_draw_full

Sortie arbalète

Pour les arbalètes, la définition d'objet générée utilise minecraft:select sur charge_type. Lorsque chargée (flèche ou fusée), elle affiche le modèle _charged. Le repli non chargé utilise minecraft:range_dispatch sur crossbow/pull :

ConditionModèle utilisé
Pas en utilisation, pas chargée_idle
En utilisation, par défaut (vient de commencer)_draw_start
En utilisation, seuil 0.58_draw_half
En utilisation, seuil 1.0_draw_full
Chargée (flèche ou fusée)_charged

Emplacement de sortie

La définition conditionnelle d'objet générée est écrite aux côtés des autres définitions d'objets à :

assets/freeminecraftmodels/items/display/{baseModelId}_idle.json

Seul le modèle _idle obtient un fichier de définition d'objet. Les modèles de tir et de charge sont référencés à l'intérieur comme entrées conditionnelles.

Comportement au rechargement

Lorsque FreeMinecraftModels se recharge, il :

  • relance l'étape d'importation du contenu
  • reconstruit le dossier output/FreeMinecraftModels
  • régénère output/FreeMinecraftModels.zip
  • exécute resourcepackmanager reload si ResourcePackManager est installé

C'est pourquoi les configurations modernes FMM + ResourcePackManager n'ont plus besoin de l'ancien flux de travail de copie manuelle du zip.