Skip to main content
A mob is declared in any .yml file under plugins/LodeEntities/Mobs/, one top-level key per mob (a folder per mob, with its model beside it, keeps things tidy). Only base is required; model is optional, and every other field is optional too. Leaving a field out means “keep the vanilla default”, which is why most mobs are four lines long.

Identity

Stats

Stat fields only apply to living bases. An armor_stand base ignores health, damage, armor and speed; the flags below still work on anything.

Behaviour and presence

Sections

Some fields are sections rather than single values:

Animation speed

How fast the model’s automatic animations play, by name: idle, walk, idle_fly, walk_fly, spawn, death, damage, jump.
Walking still speeds up and slows down with Speed and Slowness on top of this. /le reload applies it to mobs already in the world, without respawning them.

Spawn eggs

A mob’s egg (from /le gui, the editor, or one in flight) looks like a vanilla spawn egg in the mob’s own colours, read off its model’s textures when the pack is built: the colour most of the model is made of becomes the egg, its most noticeable other colour the spots. It stays a real egg, and throwing it is what spawns the mob. Override it with an egg: block. The first of these that is set wins:
  • colors takes effect on the next egg made; no pack rebuild needed.
  • texture must sit in Mobs/, beside the mob’s file or under it. Aim for 16x16; other sizes are padded to a power-of-two square. /le reload bakes it in.
  • model is used as is: the pack that defines it is yours to load.
  • A mob without a model gets its base entity’s vanilla spawn egg. A base with no spawn egg of its own gets a chicken egg with a glint.
  • Clients older than 1.21.4 see a chicken egg either way.

Breeding

Feed two of a mob and what appears is the mob it declares as its child, not a vanilla baby:
Without this, a custom mob’s lifecycle leaks back to vanilla at the one moment it matters most: two of your modelled, named, statted hogs are fed wheat and out comes a plain baby pig, because the base entity is all vanilla knows about. Declaring the child as a mob gives the baby its own model, stats and effects — and lets it grow back into its parent on the ordinary timer.
  • Both parents must be the same mob. Crossing two different custom mobs has no answer anyone could predict, and neither does crossing one with a vanilla animal — those keep vanilla’s own behaviour.
  • The experience the vanilla baby would have dropped is dropped anyway. The parents have already paid for it.
  • A plugin that forbids breeding — region protection, a farm limiter — has its say first, and no mob is spawned into a “no”.
  • Leave child out and vanilla decides, which for a modelled mob means a plain baby of the base entity.

A full example

Editing without opening a file

Every field on this page except effects and skin can be set in game from the Entities menu: left-click a mob to open its editor, left-click a stat to type a value, right-click a stat to clear it back to the default. Equipment opens a screen of its own where you dress the mob from your inventory. Changes are written straight back into the YAML the mob came from, so the file stays the source of truth.

Notes

  • Field names are read with - and _ interchangeably, and case-insensitively.
  • Values are checked when they load: a number out of range, an entity that can’t be spawned, and a misspelled field are all reported by /le debug with the file and the reason, rather than silently ignored.
  • A mob whose model isn’t loaded (deleted, renamed, or skipped for its file name) is disabled: it disappears from /le gui, autocomplete and the API, and commands say why. Put the model back and /le reload re-enables it.
  • The mob id may contain letters, digits, _, - and ., but no spaces: it is typed as one command argument.
  • Field names follow MythicMobs, simplified: base is Type, display is Display, speed is Options.MovementSpeed, persistent is the opposite of Options.Despawn. A MythicMobs mob file converts on load; see MythicMobs.
  • Ids are global. Two mobs in different files — or different subfolders — still cannot share an id, and you get a duplicate warning if they do.