Saída do Resource Pack do FreeMinecraftModels
FreeMinecraftModels atualmente grava seu pack gerado em output, não outputs.
Caminhos de Saída Padrão
O plugin reconstrói esta pasta durante a inicialização e ao executar /fmm reload:
plugins/FreeMinecraftModels/output/FreeMinecraftModels
Em seguida, compacta essa pasta em:
plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip
Esse caminho do zip é o que o ResourcePackManager espera quando se integra com o FreeMinecraftModels.
O Que é Gerado
A pasta gerada sempre inclui:
pack.mcmetapack.pngassets/minecraft/atlases/blocks.jsonassets/freeminecraftmodels/...saída de modelos e texturas
Para Minecraft 1.21.4+, FreeMinecraftModels gera arquivos de definição de item-model em:
assets/freeminecraftmodels/items
Para servidores mais antigos, ele recorre ao caminho legado de modelo de substituição de armadura de cavalo de couro.
Saída de Display Model (1.21.4+)
Quando um modelo tem um arquivo .json de display model irmão (veja Notas de Criação de Modelos), FMM copia esse JSON (com referências de textura reescritas para corresponder às texturas extraídas) para:
assets/freeminecraftmodels/models/display/{modelId}.json
Também gera uma definição de item correspondente em:
assets/freeminecraftmodels/items/display/{modelId}.json
O DisplayModelRegistry rastreia quais modelos têm JSONs de display em runtime para que ItemMeta.setItemModel() possa ser chamado em ItemStacks para dar-lhes a aparência correta na mão e no inventário.
Saída Condicional de Itens de Arco e Besta
Quando FMM detecta um conjunto de modelos de estado de arco ou besta (veja Notas de Criação de Modelos), gera um único JSON de definição de item para o modelo _idle que alterna condicionalmente entre todos os estados no nível do resource pack. Nenhum trabalho de pacotes do lado do servidor é necessário -- o cliente lida com transições de estado nativamente.
Saída de Arco
Para arcos, a definição de item gerada usa minecraft:condition em using_item com um minecraft:range_dispatch em use_duration (escala 0.05):
| Condição | Modelo usado |
|---|---|
| Sem usar o item | _idle |
| Usando, fallback (recém começado) | _draw_start |
Usando, limiar 0.65 | _draw_half |
Usando, limiar 0.9 | _draw_full |
Saída de Besta
Para bestas, a definição de item gerada usa minecraft:select em charge_type. Quando carregada (flecha ou foguete), mostra o modelo _charged. O fallback não carregado usa minecraft:range_dispatch em crossbow/pull:
| Condição | Modelo usado |
|---|---|
| Sem usar, sem carga | _idle |
| Usando, fallback (recém começado) | _draw_start |
Usando, limiar 0.58 | _draw_half |
Usando, limiar 1.0 | _draw_full |
| Carregada (flecha ou foguete) | _charged |
Localização de Saída
A definição condicional de item gerada é escrita junto com outras definições de item em:
assets/freeminecraftmodels/items/display/{baseModelId}_idle.json
Apenas o modelo _idle recebe um arquivo de definição de item. Os modelos de puxar e carregado são referenciados dentro dele como entradas condicionais.
Comportamento de Reload
Quando FreeMinecraftModels recarrega, ele:
- reexecuta a etapa de importação de conteúdo
- reconstrói a pasta
output/FreeMinecraftModels - regenera
output/FreeMinecraftModels.zip - executa
resourcepackmanager reloadse o ResourcePackManager estiver instalado
É por isso que configurações modernas de FMM + ResourcePackManager não precisam mais do antigo fluxo manual de cópia de zip.