Pular para o conteúdo principal

FreeMinecraftModels

FreeMinecraftModels é tanto um runtime de modelos customizados quanto uma API voltada para desenvolvedores.

O plugin atual não é mais apenas um fluxo de trabalho de "pasta imports mais /fmm reload". A base de código atual adiciona:

  • um fluxo de configuração inicial e lembrete ao entrar até que a configuração seja marcada como concluída
  • um menu de configuração gerenciado pelo Nightbreak para instalação e atualização de pacotes oficiais de modelos
  • uma pasta de resource pack gerado em plugins/FreeMinecraftModels/output/FreeMinecraftModels
  • um artefato de pack compactado em plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip
  • uma superfície de comandos mais ampla para configuração, atualizações de conteúdo, spawn, disfarces, props e depuração
  • bones de ponto de montaria — bones cujo nome começa com mount_ criam pontos de assento montáveis em um modelo, permitindo que jogadores montem entidades customizadas
  • JSON de modelo de exibição customizado — coloque um arquivo .json irmão (exportação de display-item do Blockbench) ao lado de um .bbmodel para substituir a aparência do item no jogo (requer 1.21.4+)
  • itens customizados programáveis — modelos cuja configuração YML define material: tornam-se itens seguráveis customizados com suporte completo a scripting Lua e 22 hooks de item
  • navegador de conteúdo para admins (/fmm admin) — um menu de inventário para admins navegarem pacotes instalados, pastas, modelos e itens customizados
  • menu de itens craftáveis para jogadores (/fmm) — um menu de inventário mostrando todos os itens craftáveis com suas receitas; clicar em um item mostra a grade espacial 3x3 com seta e resultado
  • API de UI para jogadores — scripts Lua podem exibir boss bars, action bars e títulos para jogadores

Comece Aqui

Scripting Lua

FreeMinecraftModels inclui suporte a scripting Lua tanto para props quanto para itens customizados, alimentado pelo motor de scripting MagmaCore 2.0. Os scripts ficam em plugins/FreeMinecraftModels/scripts/.

Hooks de Prop (8)

Scripts de props podem responder aos seguintes hooks:

HookGatilho
on_spawnProp é gerado no mundo
on_game_tickA cada tick de jogo enquanto o prop está vivo
on_zone_enterUm jogador entra na zona de interação do prop
on_zone_leaveUm jogador sai da zona de interação do prop
on_destroyProp é removido do mundo
on_left_clickUm jogador clica com o botão esquerdo no prop
on_right_clickUm jogador clica com o botão direito no prop
on_projectile_hitUm projétil atinge o prop

Scripts de props recebem uma tabela context.prop com campos como model_id e current_location, e métodos como play_animation(name) e stop_animation().

Hooks de Item (22)

Scripts de itens customizados (para modelos com material: definido no seu YML) podem responder aos seguintes hooks:

HookGatilho
on_equipItem é equipado (entra em um slot ativo)
on_unequipItem é desequipado (sai de um slot ativo)
on_attack_entityJogador ataca uma entidade enquanto segura o item
on_kill_entityJogador mata uma entidade enquanto segura o item
on_take_damageJogador recebe dano enquanto o item está equipado
on_shield_blockJogador bloqueia dano com um escudo
on_shoot_bowJogador dispara um arco
on_projectile_hitUm projétil disparado pelo jogador atinge algo
on_projectile_launchJogador lança um projétil
on_right_clickJogador clica com o botão direito enquanto segura o item
on_left_clickJogador clica com o botão esquerdo enquanto segura o item
on_shift_right_clickShift + clique direito enquanto segura
on_shift_left_clickShift + clique esquerdo enquanto segura
on_interact_entityJogador clica com o botão direito em uma entidade enquanto segura
on_swap_handsItem é trocado entre as mãos
on_dropJogador descarta o item
on_break_blockJogador quebra um bloco enquanto segura o item
on_consumeItem é consumido (comida/poção)
on_item_damageItem sofre dano de durabilidade
on_fishJogador usa uma vara de pesca
on_deathJogador morre enquanto o item está equipado
on_game_tickA cada tick do servidor enquanto o item está equipado

Scripts de itens recebem uma tabela context.item com campos e métodos relevantes ao item segurado e ao jogador que o segura. Scripts Lua também podem usar a API de UI do jogador para exibir boss bars, action bars e títulos.

Notas Atuais

  • Os pacotes oficiais gerenciados pelo Nightbreak incluídos no plugin atualmente são Basic Furniture Pack, BetterStructures Prop Pack e EliteMobs Prop Pack.
  • FreeMinecraftModels reconstrói sua saída de resource pack durante a inicialização e ao executar /fmm reload.
  • ResourcePackManager ainda é a forma recomendada de distribuir o pack gerado automaticamente para os clientes.