FreeMinecraftModels
FreeMinecraftModels es tanto un runtime de modelos personalizados como una API orientada a desarrolladores.
El plugin actual ya no es solo un flujo de trabajo de "carpeta imports más /fmm reload". La base de código actual añade:
- un flujo de configuración inicial y un recordatorio al unirse hasta que la configuración se marque como completa
- un menú de configuración respaldado por Nightbreak para instalar y actualizar paquetes de modelos oficiales
- una carpeta de resource pack generado en
plugins/FreeMinecraftModels/output/FreeMinecraftModels - un artefacto de pack comprimido en
plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip - una superficie de comandos más amplia para configuración, actualizaciones de contenido, generación, disfraces, props y depuración
- huesos de punto de montaje -- los huesos cuyo nombre comienza con
mount_crean puntos de asiento montables en un modelo, permitiendo a los jugadores montar entidades personalizadas - JSON de modelo de visualización personalizado -- coloca un archivo
.jsonhermano (exportación de display-item de Blockbench) junto a un.bbmodelpara sobreescribir la apariencia del objeto en el juego (requiere 1.21.4+) - objetos personalizados con scripts -- los modelos cuya configuración YML establece
material:se convierten en objetos portables con soporte completo de scripting Lua y 22 hooks de objetos - explorador de contenido de administrador (
/fmm admin) -- un menú de inventario para que los administradores exploren paquetes instalados, carpetas, modelos y objetos personalizados - menú de objetos fabricables para jugadores (
/fmm) -- un menú de inventario que muestra todos los objetos fabricables con sus recetas; hacer clic en un objeto muestra la cuadrícula espacial 3x3 con flecha y resultado - API de UI de jugador -- los scripts Lua pueden mostrar barras de jefe, barras de acción y títulos a los jugadores
Empieza Aquí
Scripting Lua
FreeMinecraftModels incluye soporte de scripting Lua tanto para props como para objetos personalizados, impulsado por el motor de scripting MagmaCore 2.0. Los scripts se ubican en plugins/FreeMinecraftModels/scripts/.
Hooks de Prop (8)
Los scripts de props pueden responder a los siguientes hooks:
| Hook | Activador |
|---|---|
on_spawn | El prop aparece en el mundo |
on_game_tick | Cada tick del juego mientras el prop está activo |
on_zone_enter | Un jugador entra en la zona de interacción del prop |
on_zone_leave | Un jugador sale de la zona de interacción del prop |
on_destroy | El prop es eliminado del mundo |
on_left_click | Un jugador hace clic izquierdo en el prop |
on_right_click | Un jugador hace clic derecho en el prop |
on_projectile_hit | Un proyectil impacta en el prop |
Los scripts de props reciben una tabla context.prop con campos como model_id y current_location, y métodos como play_animation(name) y stop_animation().
Hooks de Objeto (22)
Los scripts de objetos personalizados (para modelos con material: establecido en su YML) pueden responder a los siguientes hooks:
| Hook | Activador |
|---|---|
on_equip | El objeto se equipa (entra en una ranura activa) |
on_unequip | El objeto se desequipa (sale de una ranura activa) |
on_attack_entity | El jugador ataca una entidad mientras sostiene el objeto |
on_kill_entity | El jugador mata una entidad mientras sostiene el objeto |
on_take_damage | El jugador recibe daño mientras el objeto está equipado |
on_shield_block | El jugador bloquea daño con un escudo |
on_shoot_bow | El jugador dispara un arco |
on_projectile_hit | Un proyectil disparado por el jugador impacta algo |
on_projectile_launch | El jugador lanza un proyectil |
on_right_click | El jugador hace clic derecho mientras sostiene el objeto |
on_left_click | El jugador hace clic izquierdo mientras sostiene el objeto |
on_shift_right_click | Shift + clic derecho mientras se sostiene |
on_shift_left_click | Shift + clic izquierdo mientras se sostiene |
on_interact_entity | El jugador hace clic derecho en una entidad mientras sostiene |
on_swap_hands | El objeto se cambia entre manos |
on_drop | El jugador suelta el objeto |
on_break_block | El jugador rompe un bloque mientras sostiene el objeto |
on_consume | El objeto se consume (comida/poción) |
on_item_damage | El objeto recibe daño de durabilidad |
on_fish | El jugador usa una caña de pescar |
on_death | El jugador muere mientras el objeto está equipado |
on_game_tick | Cada tick del servidor mientras el objeto está equipado |
Los scripts de objetos reciben una tabla context.item con campos y métodos relevantes para el objeto sostenido y el jugador que lo lleva. Los scripts Lua también pueden usar la API de UI de jugador para mostrar barras de jefe, barras de acción y títulos.
Notas Actuales
- Los paquetes oficiales actuales gestionados por Nightbreak integrados en el plugin son
Basic Furniture Pack,BetterStructures Prop PackyEliteMobs Prop Pack. - FreeMinecraftModels reconstruye la salida de su resource pack durante el inicio y con
/fmm reload. - ResourcePackManager sigue siendo la forma recomendada de distribuir el pack generado automáticamente a los clientes.