Entity Overview
Entities are defined using YAML configuration files placed in config/modengine/entities/.
File Structure
Each YAML file can contain multiple entity definitions:
# config/modengine/entities/my_mobs.yml
zombie_variant:
Model: zombie_model
Display: '&cZombie Variant'
Health: 30
Behavior: HOSTILE
friendly_creature:
Model: creature_model
Display: '&aFriendly Creature'
Health: 20
Behavior: PASSIVE
Configuration Sections
| Section | Required | Description |
|---|---|---|
| Model | Yes | The model to use for this entity |
| Display | No | Custom display name |
| Health | No | Maximum health points |
| Damage | No | Base attack damage |
| Style | No | Procedural animation style |
| Behavior | No | AI behavior preset |
| Hitbox | No | Custom hitbox dimensions |
| AIGoals | No | Custom AI goals |
| AITargets | No | Custom targeting behavior |
| Taming | No | Pet/taming behavior |
| HiddenBones | No | Bones hidden by default |
| Drops | No | Custom death loot drops |
| Skills | No | Reactive behaviors |
Model Loading
Models are loaded from config/modengine/entities/models/:
Blockbench (.bbmodel):
models/my_model.bbmodel
GeckoLib (folder):
models/my_model/
├── model.geo.json # Required
├── model.animation.json # Optional
└── default.png # Texture(s)
The model ID is the filename (without extension) or folder name, in lowercase.
Commands
| Command | Description |
|---|---|
/mm spawn <id> | Spawn an entity |
/mm list | List all loaded entities |
/mm reload | Reload all configs |
/mm select | Select entity you're looking at |
/mm debug | Toggle debug overlay |
/mm playanimation <name> | Play animation on selected entity |