Skip to main content

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

SectionRequiredDescription
ModelYesThe model to use for this entity
DisplayNoCustom display name
HealthNoMaximum health points
DamageNoBase attack damage
StyleNoProcedural animation style
BehaviorNoAI behavior preset
HitboxNoCustom hitbox dimensions
AIGoalsNoCustom AI goals
AITargetsNoCustom targeting behavior
TamingNoPet/taming behavior
HiddenBonesNoBones hidden by default
DropsNoCustom death loot drops
SkillsNoReactive 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

CommandDescription
/mm spawn <id>Spawn an entity
/mm listList all loaded entities
/mm reloadReload all configs
/mm selectSelect entity you're looking at
/mm debugToggle debug overlay
/mm playanimation <name>Play animation on selected entity