COWMODSКаталог модов
Easy Model Entities

ВЕРСИИ (211)

release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.72Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.160Minecraft: 1.20.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.86Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.1.262, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.150Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.1.262, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.41Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.1.262, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.132Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.11.48, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.27Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.11.48, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.23Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 21.11.48, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.156Minecraft: 26.3fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.3.0.83, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.39Minecraft: 26.3forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.3.0.83, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.35Minecraft: 26.3neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.3.0.83, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.88Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.2.0.93, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.34Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.2.0.93, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.41Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.2.0.93, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.60Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.1.2.120, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.50Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.1.2.120, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.6.0

2.6.0
16 окт. 2026 г.44Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.6.0 - Fixed NeoForge servers crashing when a player without the mod is near an animated model. - Fixed NeoForge servers crashing when a player without the mod is near a shoulder model. - Fixed flying aquatic models, like a ray gliding above the water, flopping as if stranded on land. - Fixed NeoForge reporting the version as 0.0NONE, so other mods could not require a minimum. - Added `animation get` to show the animation set on an entity or block entity. - Added `behavior get` to show whether a host entity is frozen. - Added `profile get` to show the profile of an entity or block entity. - Added `profile set block` to switch the profile of a placed block entity. - Added `shoulder offset` to move a single entity on the shoulder, on top of the profile offset. - Updated the tested NeoForge version to 26.1.2.120, which fixes three network vulnerabilities. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.24Minecraft: 26.3fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.14Minecraft: 26.3forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.16Minecraft: 26.3neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.16Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.24Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.5.0

2.5.0
13 окт. 2026 г.12Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.12Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.21Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.10Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.27Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.6Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.9Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.51Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.46Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.15Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Changed the minimum Forge version to 52.1.8; older Forge versions are rejected. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.30Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.5.0

2.5.0
12 окт. 2026 г.107Minecraft: 1.20.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.5.0 - Fixed models playing `fly` instead of `swim` while diving or surfacing. - Fixed the game tests getting in the way of game tests from other mods. - Fixed models without a `root` group sinking into the ground; `root` is now optional. - Fixed `inflate`, `export: false`, inverted cubes and texture paths not matching Blockbench. - Changed textures to come from the model; render profile `texture` and `textures` override them. - Changed `swim`, `hurt`, `death` and `sit` clips to play automatically when they apply. - Changed aquatic models without a `walk` clip to flop on land like fish. - Changed `behavior set … auto` to keep static models without AI. - Changed placed block entities to face the player; existing ones keep their direction. - Added shoulder sitting like a parrot, with its own clip, render profile settings and API. - Added server API calls for animations, textures, opacity, light level and freezing. - Added an opt-in interface so commands and the API can control models of other mods. - Added item sockets and client API calls to render items and find model part positions. - Added playback speed, a `hold` play mode and weighted clip variants. - Added double-sided textures, face UV rotation and a scarecrow block entity example. - Improved warnings and errors for textures and duplicate group names. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
26 сент. 2026 г.111Minecraft: 26.3fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.4.0

2.4.0
26 сент. 2026 г.35Minecraft: 26.3neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.4.0

2.4.0
26 сент. 2026 г.37Minecraft: 26.3forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.3 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.3
release

Easy Model Entities 2.4.0

2.4.0
19 сент. 2026 г.133Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.4.0

2.4.0
19 сент. 2026 г.35Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.4.0

2.4.0
19 сент. 2026 г.50Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.4.0

2.4.0
12 сент. 2026 г.55Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.4.0

2.4.0
12 сент. 2026 г.84Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.4.0

2.4.0
12 сент. 2026 г.55Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.38Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.167Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.33Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.251Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.34Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
10 сент. 2026 г.123Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
7 сент. 2026 г.470Minecraft: 1.20.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.4.0

2.4.0
7 сент. 2026 г.95Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.4.0 - Fixed `body_type: static` and `animation.mode: none` ignoring an explicitly played or set clip. - Added `animation play <target> sequence "<clips>"` to chain up to 16 clips in one run. - Added `playAnimationSequence` to the client and server API, sending a whole chain as one request. - Added `emissive` as texture blend, so a slot renders fullbright and keeps its transparency. Emissive slots are never backface culled. - Added hand item rendering to the render options, off unless a mod opts in. - Added `left_item`, `right_item`, `left_hand` and `right_hand` as recognized model part names. - Added an automatic item anchor fallback to the arm, head or body when a model has no hand bone. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
23 авг. 2026 г.174Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.3.0

2.3.0
23 авг. 2026 г.32Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.3.0

2.3.0
23 авг. 2026 г.46Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.21Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.43Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.31Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.29Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.93Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.29Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.110Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.30Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
22 авг. 2026 г.55Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
21 авг. 2026 г.138Minecraft: 1.20.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.3.0

2.3.0
21 авг. 2026 г.59Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.3.0 - Changed models rendered by another mod to show the hurt and death overlay, which they never did. - Changed `texture query` to `texture get`, matching vanilla commands; the old name no longer works. - Changed the chat feedback of `behavior set` and `texture get` to match the other commands. - Added a server API call to read the texture override of an entity or block entity. - Added `display opacity set`, `clear` and `get` to fade a model out at runtime. - Added `display light set`, `clear` and `get` to give a model its own minimum block light. - Added opacity and light level as saved, synchronized state, so both survive a reload and relog. - Added `rendering.opacity` to the render profile as the default a model starts with. - Added opacity, light level and overlay to the render options and to the server API. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.45Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.30Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.20Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.25Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.20Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.2.0

2.2.0
19 авг. 2026 г.26Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.10Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.24Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.19Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.40Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.37Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.15Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.29Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.2.0

2.2.0
18 авг. 2026 г.51Minecraft: 1.20.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.2.0 - Fixed Forge entity data serializers using load-order-dependent IDs when other mods register their own serializers. - Fixed hurt, flash, and shader overlays being dropped by entity, block entity, and item renderers. - Fixed offset or rotated models being culled with incorrect visibility bounds. - Fixed touching faces disappearing from models whose textures can contain transparent pixels. - Improved compatibility with EntityCulling for entities and block entities using extended model bounds. - Removed the unsupported NeoForge loader declaration from the Forge release metadata. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
15 авг. 2026 г.47Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.1.0

2.1.0
15 авг. 2026 г.44Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.1.0

2.1.0
15 авг. 2026 г.32Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.29Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.22Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.16Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.36Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.45Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.24Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.25Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.29Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.30Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.34Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.1.0

2.1.0
14 авг. 2026 г.58Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.1.0 - Fixed a model whose only clips are numbered variants, such as `idle_2` and `idle_3`, silently falling back to the procedural animation. - Changed the clip limit of a model from 16 to 64, with a warning above 32. - Changed numbered clips to rotate by default; `animation.variant_mode: none` keeps one clip. - Changed a numbered variant such as `walk_2` to count as a standard clip, not a custom one. - Added `texture set`, `clear` and `query` to swap the texture of a single model slot at runtime. - Added the texture override as saved, synchronized state, so it survives a reload and relog. - Added a texture option to the render options, so a mod can swap a slot without a command. - Added `texture blend … translucent` so a half-transparent texture is no longer drawn opaque. - Added client API calls to list the texture slots of a model and the textures next to a slot. - Added random clip variants: clips named `idle`, `idle_2`, `idle_3` form one group and EME picks a different one each cycle, controlled by `animation.variant_mode` in the render profile. - Added `animation play … random "<clips>"` to pick one clip of a list on the server, so every player sees the same animation. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.1

2.0.1
7 авг. 2026 г.62Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.0.1

2.0.1
7 авг. 2026 г.26Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.0.1

2.0.1
7 авг. 2026 г.32Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.32Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.28Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.102Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.23Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.62Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.1

2.0.1
6 авг. 2026 г.18Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.1 - Fixed block entities `animation play`, `stop`, and `restart` never reached the screen. - Fixed the render options for scale and part animation being dropped by custom renderers. - Added `extractRenderState` and `submit` to both render delegates, so other mods can show manual animations again. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.9Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.20Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.16Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.76Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.60Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
5 авг. 2026 г.20Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
4 авг. 2026 г.76Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 2.0.0

2.0.0
4 авг. 2026 г.59Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 2.0.0 - Fixed the command auto-completion never offering the UUID of the entity in the crosshair. - Changed the command auto-completion to drop `@a`, `@p`, `@r` and player names, which can never select a model entity. - Changed every public signature to use stable API types and enums instead of internal classes. - Changed the numeric animation states and named clips into the type-safe `EasyModelAnimation`. - Changed the animation of an entity or block entity into saved, synchronized state, so it survives a reload and reaches players who arrive later. - Changed render and model values to reject invalid input before it reaches rendering. - Changed an invalid transform to show a reloadable placeholder instead of dropping the model. - Changed the minimum Forge, Fabric Loader, and Fabric API versions; older loaders are rejected. - Changed animations to keep their own clock, so a finished animation no longer jumps back. - Removed `set_animation`; use `animation set entity <targets> <state>`, which does the same and also accepts named clips and `loop` or `once`. - Added `behavior set` to freeze the movement of a host entity, so a `sit` or `death` animation no longer plays while the entity walks away. - Added named Blockbench clips and host hooks for custom animations without a fixed state. - Added `sit` as a standard animation state and Blockbench clip for all body types. - Added animation discovery and metadata to list the clips of a model with their length. - Added playback modes, transitions, repeats, and duration limits for controlled animations. - Added `animation set` to give a lasting animation, with `clip`, `loop`, or `once` deciding whether it repeats. - Added `animation play`, `stop`, and `restart` for one-off animations on everyone watching. - Improved the migration from schema `0.1.0` to `0.2.0` to keep the existing render profile. - Improved playback queues, missing-clip warnings, and loops to stay bounded in long sessions. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.46Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.24Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.27Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.18Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.23Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.17Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.51Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.57Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
1 авг. 2026 г.19Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
31 июл. 2026 г.59Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
31 июл. 2026 г.78Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
31 июл. 2026 г.19Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
31 июл. 2026 г.20Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
31 июл. 2026 г.44Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed the head of an entity never turning towards what it looks at. - Fixed cubes outside of an outliner group being dropped without any message. - Fixed profiles without an explicit `texture` staying inactive because of a wrong texture path. - Fixed a single minor finding, such as an unknown behavior mode, deactivating a whole server profile. - Fixed repaired models being reported only once, because the log suppression survived a resource reload. - Fixed `modded_entity` models never deriving a texture path from the model file itself. - Fixed the profiles of a single player world staying active after leaving it, which could break the models on a server joined afterwards. - Changed a model with a missing texture to render its own shape with a pink placeholder texture instead of a pink box. - Changed the creative tabs to hide render profiles from unexpected folders and models the server does not know. - Removed eight example entities that only mirrored another example with different presets or numbers. - Added a head look render option, so another mod can supply its own look direction. - Added warnings for unknown fields, a missing `schema_version`, a one-sided `version` declaration and cubes that are fully covered by other cubes. - Added detailed log and `validate_profiles` output for every skipped or failed profile, including the reason and the affected field. - Added `scale`, a part pose listener and a forced animation state to the block entity render options, so block entities support the same integration as entities. - Improved error messages to name the underlying parser message and the affected texture file. - Improved render performance by resolving bone names once while baking and by reusing the entity render data per frame. - Improved the render cache to drop only the least recently used entries instead of emptying itself completely. - Improved the profile and render profile parsers to share their field handling, so both report the same problems in the same way. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.54Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.23Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.26Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.7Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.36Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.13Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.18Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.41Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.23Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.22Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.16Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.59Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.107Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
release

Easy Model Entities 1.7.0

1.7.0
21 июл. 2026 г.55Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.7.0 - Fixed profiles without an explicit `texture` falling back to a duplicated `entity/entity/` texture path, which left the profile inactive and hid its spawn item from the creative tabs. - Changed missing textures to be reported as an error instead of a warning by `validate_profiles`, because a model without a texture cannot be rendered at all. - Changed a version mismatch between data pack and resource pack to be reported as a warning instead of an error, because the entity still renders with the fallback model. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
15 июл. 2026 г.52Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.6.0

1.6.0
15 июл. 2026 г.22Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.6.0

1.6.0
15 июл. 2026 г.7Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.7Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.10Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.7Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.13Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.19Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.10Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.30Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.8Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
14 июл. 2026 г.14Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
13 июл. 2026 г.49Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.6.0

1.6.0
13 июл. 2026 г.19Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.6.0 - Added an `attack` animation state with standard Blockbench `attack` clip support for all body types, driven by the entity's attack swing progress. - Added a procedural vanilla-style arm swing for biped and winged humanoid models that lack an `attack` clip. - Added a part pose capture API (`EasyModelPartPoseListener` / `EasyModelPartPose` via `EasyModelEntityRenderOptions.withPartPoseListener`) so integrations can anchor held items or attachments to animated model parts. - Added `EasyModelEntitiesClientApi.getItemAnchor(profileId, arm)` with cached anchor resolution (dedicated `right_item`/`left_item` anchor parts take precedence over the `*_hand`/`*_arm` fallback). - Added `EasyModelEntityRenderOptions.withAnimationState(int)` to force an animation state without implementing `EasyModelRenderable`. - Improved performance by 10%. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.19Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.21Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.5Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.4Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.6Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.6Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.6Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.16Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.1

1.5.1
11 июл. 2026 г.4Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.18Minecraft: 26.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.8Minecraft: 26.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.8Minecraft: 26.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.5Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.6Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.6Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.4Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.5Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.2Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.13Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.10Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
7 июл. 2026 г.6Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
6 июл. 2026 г.15Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.5.0

1.5.0
6 июл. 2026 г.16Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.5.0 - Fixed the entity and block-entity creative tabs being empty on dedicated clients by building them from the client render profiles instead of the server-only profile registry. - Fixed the spawn item icons rendering nothing on dedicated clients by falling back to the client render profile when no server profile is available. - Added a stateless render-by-profile-id API with `scale`, displayed bounds, and body type lookups for mod integrations. - Added `EasyModelEntitiesClientApi.listRenderableProfileIds()` so integrations such as Easy NPC can list and preview available models on a dedicated client without server profiles. - Changed the example render profiles to align their IDs with the server profile IDs (`render_profiles/entity/<id>` and `render_profiles/block_entity/<id>`), so the model type is derived from the profile ID prefix on the client. - Bumped `schema_version` to `0.2.0` and removed the server profile `client.render_profile`. - Code refactoring and cleanup to improve maintainability and readability. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.14Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.9Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.3Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.3Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.7Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.4Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.7Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.13Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.4Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.17Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.4.0

1.4.0
2 июл. 2026 г.7Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.4.0 (beta) - Fixed choppy body rotation of walking host entities by using the interpolated body rotation. - Added playback of standard Blockbench keyframe animations (`idle`, `walk`, `swim`, `fly`) with linear interpolation and automatic clip selection. - Added `set_animation` command to force an animation state on host entities for testing and command block setups. - Added `swim` and `fly` animation states to the API. - Added standard `idle`/`walk`/`swim`/`fly` animations to the little explorer, stone turtle, dawn sparrow, and coral drifter examples. - Added entity and block entity spawn items for all example profiles. - Added offset, rotation, and scale to the `ModelPart` definition to allow complex model definitions. - Improved spawn item tooltips to show the behavior mode and movement type of entities. - Improved render performance by caching resolved render states and fallback models per profile. - Improved api support for mod integrations. - Code refactoring and cleanup to improve maintainability and readability. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.15Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.11Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.7Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.5Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.17Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
24 июн. 2026 г.9Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
23 июн. 2026 г.20Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
23 июн. 2026 г.14Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
23 июн. 2026 г.8Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
23 июн. 2026 г.16Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.3.0

1.3.0
23 июн. 2026 г.10Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.3.0 (beta) - Added a stable API for mod integrations that lists all limits, types, and status codes. - Added a generated JSON file that documents these limits, types, and status codes per version. - Added a test that fails if the documented values and the actual code values no longer match. - Added an optional `asset_fingerprint` so resource packs can ship alternate model styles. - Added a migration hook to handle profiles from older `schema_version`s. - Improved server and client `version` matching to only report a mismatch when both sides are set and differ. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.5Minecraft: 26.1.2neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.5Minecraft: 26.1.2fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.6Minecraft: 26.1.2forge
Скачать
Что нового
# Changelog for Easy Model Entities 26.1.2 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/26.1.2
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.8Minecraft: 1.21.11forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.4Minecraft: 1.21.11fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
20 июн. 2026 г.3Minecraft: 1.21.11neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.11 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
18 июн. 2026 г.5Minecraft: 1.21.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
18 июн. 2026 г.4Minecraft: 1.21.1neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
18 июн. 2026 г.7Minecraft: 1.21.1forge
Скачать
Что нового
# Changelog for Easy Model Entities 1.21.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.2.0

1.2.0
18 июн. 2026 г.8Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.2.0 (beta) - Added read-only profile catalog API (listProfiles, listProfiles by body type, listProfileIds) for mod integrations. - Added still and custom example presets covering all body types, plus a fast-moving example. - Added case-insensitive bone name matching so `Body`, `body`, and `BODY` all resolve to `body`. - Fixed profile attributes max_health and follow_range not being applied to host entities. - Removed unused mixins. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.1.0

1.1.0
17 июн. 2026 г.7Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.1.0

1.1.0
17 июн. 2026 г.8Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.1.0 (beta) - Fixed wrong UV mapping for some model parts. - Fixed wrong block placements. - Fixed rendering edge case with multiple texture definitions. - Added UV mapping record to define UV mapping for model parts in a more structured way. - Added ModelPartTypes enum to replace strings for model part names to avoid typos and errors. - Added Vec3f enum to replace unnamed float parameter for Vec3f types to avoid typos and errors. - Added additional model examples for different entity types. - Added automatic face culling and model optimization to improve performance. - Added better aquatic and ambient entity support. - Improved performance by pre-building and adding additional cache. - Improved example models and textures for better demonstration of features and capabilities. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.0.0

1.0.0
15 июн. 2026 г.7Minecraft: 1.20.1forge, neoforge
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1
beta

Easy Model Entities 1.0.0

1.0.0
15 июн. 2026 г.11Minecraft: 1.20.1fabric, quilt
Скачать
Что нового
# Changelog for Easy Model Entities 1.20.1 ## Note This change log includes the summarized changes. For the full changelog, please go to the [GitHub History][history] instead. ### 1.0.0 (beta) 🚀 - Initial release for Minecraft 1.20.1. [history]: https://github.com/MarkusBordihn/BOs-Easy-Model-Entities/commits/1.20.1