Traits
Traits are passive properties that are always active on your entity. Unlike AI goals (which involve decision-making), traits define what your entity is.
Syntax
Traits:
- sunburn
- climbing
- fireimmune
Available Traits
sunburn
Makes the entity burn in direct sunlight (like zombies and skeletons).
Traits:
- sunburn
Behavior:
- Entity catches fire when exposed to direct sunlight
- Wearing a helmet protects from burning (helmet takes durability damage)
- Works during daytime when the sky is visible
Combine with restrictsun and fleesun AI goals for complete undead behavior:
Traits:
- sunburn
AIGoals:
- restrictsun
- fleesun{speed=1.2}
climbing
Allows the entity to climb walls (like spiders).
Traits:
- climbing
Behavior:
- Entity can walk up vertical surfaces when touching them
- Works on any solid block
- No special animation required (entity walks up walls)
fireimmune
Makes the entity immune to all fire damage.
Traits:
- fireimmune
Behavior:
- Immune to fire damage
- Immune to lava damage
- Cannot be set on fire
- Useful for nether mobs or fire elementals
waterbreathing
Allows the entity to breathe underwater indefinitely.
Traits:
- waterbreathing
Behavior:
- No drowning damage
- Can stay underwater forever
- Useful for aquatic or amphibious mobs
freezeimmune
Makes the entity immune to freezing in powder snow.
Traits:
- freezeimmune
Behavior:
- No freeze damage from powder snow
- Freeze meter doesn't accumulate
- Useful for ice/snow themed mobs
amphibious
Gives the entity amphibious pathfinding (can walk on land and swim in water).
Traits:
- amphibious
- waterbreathing
Behavior:
- Uses AmphibiousPathNavigation (like turtles and frogs)
- Can pathfind both on land and through water
- Required for
tryfindwatergoal to work properly - Usually combined with
waterbreathing
This is essential for mobs that need to move between land and water:
Traits:
- amphibious
- waterbreathing
AIGoals:
- float
- tryfindwater
- randomswim
- wateravoidingrandomstroll
aquatic
Gives the entity water-only pathfinding (stays in water like fish).
Traits:
- aquatic
- waterbreathing
Behavior:
- Uses WaterBoundPathNavigation (like dolphins and fish)
- Can only pathfind through water
- Entity will struggle on land
- Usually combined with
waterbreathing
Examples
Undead Mob
my_zombie:
Model: zombie_model
AnimationStyle: Zombie
Traits:
- sunburn
AIGoals:
- float
- restrictsun
- fleesun{speed=1.2}
- meleeattack
- wateravoidingrandomstroll
AITargets:
- nearestplayer
Spider-like Mob
wall_crawler:
Model: spider_model
AnimationStyle: Spider
Traits:
- climbing
AIGoals:
- float
- leapattarget{leapheight=0.4}
- meleeattack
- wateravoidingrandomstroll
AITargets:
- nearestplayer
Nether Mob
fire_demon:
Model: demon_model
AnimationStyle: Humanoid
Traits:
- fireimmune
AIGoals:
- float
- meleeattack{speed=1.2}
- randomstroll
AITargets:
- nearestplayer
Aquatic Mob
sea_creature:
Model: fish_model
AnimationStyle: Humanoid
Traits:
- waterbreathing
AIGoals:
- randomswim{speed=1.2}
- tryfindwater
AITargets: []
Multi-Trait Mob
frost_spider:
Model: ice_spider
AnimationStyle: Spider
Traits:
- climbing
- freezeimmune
- waterbreathing
AIGoals:
- float
- leapattarget
- meleeattack
- wateravoidingrandomstroll
AITargets:
- nearestplayer
Traits vs AI Goals
| Concept | Purpose | Examples |
|---|---|---|
| Traits | What the entity IS (passive properties) | sunburn, climbing, fireimmune |
| AI Goals | What the entity DOES (active decisions) | meleeattack, randomstroll, fleesun |
Traits are always active and don't require AI decision-making. For example, the climbing trait allows wall climbing whenever the entity touches a wall - no goal needed.
Combining with Presets
If you use a Preset, the preset's traits apply unless you override them:
# Uses skeleton preset's sunburn trait
my_skeleton:
Model: bone_knight
Preset: skeleton
# Override with custom traits (replaces preset's traits)
my_skeleton:
Model: bone_knight
Preset: skeleton
Traits:
- climbing
- fireimmune