Configuration


Model Engine

This section is responsible for the in-game behaviors while Model Engine is running.

Default Animations

Configure the animation names for all default animations.
Some default animations are planned but not fully implemented yet. Don't tell anyone :p

Whether warning messages should be printed when an error occurred on a script keyframe.

Use State Machine

Whether to use the new state machine animation system by default.
Although defaulted to false, it is recommended to migrate all models to using this system.

Engine Threads

The initial amount of threads used to processing model animations.

Max Engine Threads

The maximum amount of threads Model Engine can create to process model animations. The amount must be more than the value set at Engine Threads.

Sync Client Tick End

Whether client desync detection should be timed off the client's tick-end packet instead of the client's movement packet. When enabled, Model Engine records the client sync time from the ClientTickEnd packet; when disabled, it uses the player movement packet instead.

Load On World Load

Whether models in a world should be loaded automatically when that world is loaded.

Unload On World Unload

Whether models in a world should be unloaded automatically when that world is unloaded.

Manual Translucency Order

Whether to manually control the render order of translucent parts. This only takes effect when Force Custom Model Data is disabled, in which case translucent parts use a different base item to influence their sorting against opaque parts.

Default Animation Priority

The default priority assigned to the state machine animation handler.

Client Sync Interval

The interval, in milliseconds, between client desync checks. A desync test is only run again once this much time has passed since the last test.

Lower Scale Limit

The smallest absolute scale value a bone is allowed to have. Scale components with a magnitude below this limit are snapped to zero, which also serves to hide near-zero scaled bones.

Force Custom Model Data

Whether generated bone items should be created using real Custom Model Data items. When disabled, Model Engine instead uses a placeholder base item carrying the bone's item model and color component.

Process Empty Timeline

Whether keyframe channels with no value should be treated as zero instead of being left unanimated. When enabled, a missing keyframe value defaults to zero.

Render Fire On Model

Whether the fire overlay should be rendered on models when the base entity is on fire. This is the default value and can be overridden per Active Model.

MineSkin API Key

The API key used to enable MineSkin-based skin generation. If left empty, MineSkin skin generation is disabled.

User Limb

Configures the default player skins used for the player limb bone behavior, and how those skins are generated.

Key Description Default
Eager-Generate-Skins Whether a joining player's skin limbs should be generated ahead of time when they join. true
Default-Classic-Skin The name of the default skin (from Default-Skins) used for the classic (Steve) player model. Steve
Default-Slim-Skin The name of the default skin (from Default-Skins) used for the slim (Alex) player model. Alex
Default-Skins The named skins registered on start up. Each entry supplies skin data via base64, url, path, username, or uuid, and an optional slim flag. Steve, Alex

Model Generator

This section configures the assets generation settings ran on server start up or model reimport.

Delete Old

Whether the previously generated resource pack folder should be deleted before assets are regenerated.

Register Post Server

Should the models register after server start up.
If set the false, the server will hang until all models are registered.
Otherwise, the server will be joinable before all models are imported, and all subsequent process will also be run after server start up.

Assets Post Server

Should the resource pack be generated after server start up.
If set the false, the server will hang until all assets are generated.

Compile Post Server

Should the resource pack be zipped after server start up.
If set the false, the server will hang until all assets are generated.

Enable Error

Should model error messages be printed.

Debug Level

Set the debug level of the Model Engine logger. May sometimes reveal useful information.

Log Only Error Models

Whether the error collector should only log models that actually have errors, suppressing log output for models that imported without any errors.

Namespace

Set the namespace of the generated resource pack.

Texture Path

The sub-folder inside the resource pack's texture directory where generated model textures are placed.

Create Zip

Should Model Engine zip the resource pack automatically.

Create Atlas

Should Model Engine create an atlas file automatically.

Create Shader

Should Model Engine create the shaders used for player limb bone behavior.

Create MC-META

Should Model Engine generate MC-META files for animated textures.
This does NOT stop generation if the model contains metadata saved through the MC-META blockbench plugin, which we highly recommend using.

Item Model

The item model used to create overrides for all generated models.
Here is a list of usable items. All items shown here are colorable:

Item
FILLED_MAP
LEATHER_BOOTS
LEATHER_CHESTPLATE
LEATHER_HORSE_ARMOR
LEATHER_LEGGINGS
LINGERING_POTION
POTION
SPLASH_POTION
TIPPED_ARROW

Item Models

A list of base items used to create overrides for all generated models, using the same items listed under Item Model. When this list is non-empty, it replaces the single Item Model value, allowing generated models to be spread across multiple base items. When left empty, the single Item Model is used.

Max Generator Threads

The maximum number of threads used to generate the resource pack. A negative value uses the number of available processor cores.

Use New Rotation

Whether the model generator uses the alternative bone rotation handling when generating models.


Network Optimization

This section allows adjustment to the network optimizations Model Engine provides.
It is highly recommended to have all optimizations enabled, as they greatly reduce network load, and all optimizations are configurable on a per-Active Model basis.

Bundle Everything

Should all packets send by Model Engine be bundled and sent in one go.
This optimization utilize the new Bundle packet introduced in 1.19.4. In theory, this will massively reduce overhead caused by sending packets separately.

Bundle Size

Maximum amount of packets allowed in a bundle.
Since packets wrapped in a bundle are forced to be processed in the same tick, too many packets in a bundle may cause the client to lag.
Minecraft by default only allow up to 4096 packets in a single bundle.

Cull Interval

The culling interval of an Active Model. Smaller value means more frequent detection but more calculations.

Culling Threads

The initial amount of threads used to processing model culling.

Max Culling Threads

The maximum amount of threads Model Engine can create to process model culling. The amount must be more than the value set at Culling Threads.

Vertical Render Distance

Culls the model when the vertical distance between the model's render hitbox and the eye position of the view exceeds a certain threshold.

Key Description Default
Enabled Whether this culling method is on. true
Vertical-Render-Distance Vertical render distance in blocks 32
Cull-Type Culling behavior CULLED

Skip Models Behind Viewer

Culls the model when angle between the viewer and the model exceeds the configured threshold.

Key Description Default
Enabled Whether this culling method is on. true
View-Angle The view angle of the viewer in degrees, where the model **does not get culled.**
Setting to 360 effectively disables this culling method.
180
Force-Render-Radius Minimum distance between the viewer and the model for it the be culled in blocks. 5
Cull-Type Culling behavior MOVEMENT_ONLY

Skip Blocked Models

Culls the model when the model is being blocked by view-occluding blocks.

Key Description Default
Enabled Whether this culling method is on. true
Force-Render-Radius Minimum distance between the viewer and the model for it the be culled in blocks. 5
Force-Render-Size > Width Minimum render hitbox width to give up on culling. 32
Force-Render-Size > Height Minimum render hitbox height to give up on culling. 32
Cull-Type Culling behavior CULLED
Use-Paper-Clip-Method Whether the culling method should use the paper variant of the raytrace method. false

Reduce Update When Far

Reduces how often animation updates are sent to a player as the model gets further away, lowering network load for distant models. The update rate falls off with distance and is clamped between the configured minimum and maximum rate multipliers.

Key Description Default
Enabled Whether this optimization is enabled. true
Active-By-Default Whether this optimization is active for a player by default when they are registered. true
Falloff-Length The distance, in blocks, over which the rate multiplier decays by one factor of Falloff-Multiplier. 8
Falloff-Multiplier The multiplier applied to the update rate per Falloff-Length of distance beyond the full-update range. Smaller values fall off faster. 0.65
Full-Update-Distance The distance, in blocks, within which models always receive full-rate updates. 8
Full-Update-Distance-Multiplier-By-Size Multiplier scaling the full-update distance by the model's render hitbox size, so larger models keep full updates from further away. 1
Max-Rate-Multiplier The upper clamp on the update rate multiplier. 1
Min-Rate-Multiplier The lower clamp on the update rate multiplier, preventing very distant models from stopping updates entirely. 0.05

Override Move To Method

Whether Model Engine overrides the navigation moveTo method for modeled mobs. When disabled, the wrapped navigation falls back to the vanilla movement behavior.

Updated Aug 19, 2026