Define monsters with stats, behaviors, and spawn rules.
Mobs & AI
The Mobs editor lets you create enemies and creatures. Each mob has combat stats, AI behavior, abilities, loot, and a visual appearance.

Creating a Mob
| Property | Description |
|---|---|
| Name | Display name (e.g., "Forest Slime") |
| HP, Mana | Health and mana pools |
| Attack, Defense | Physical combat stats |
| Magic Power, Magic Resist | Magical combat stats |
| Level | Mob level (affects XP granted and difficulty) |
| AI Behavior | How the mob acts (see below) |
| Abilities | Which attacks/spells it can use |
| Loot Table | What items it drops when defeated |
| Sprite | Visual appearance and animations |
| Light Emission | Optional glow effect |
AI Behaviors
| Behavior | Description |
|---|---|
| Passive | Won't attack unless attacked first (the default) |
| Aggressive | Attacks players on sight within its aggro range |
| Territorial | Attacks only players who enter its home area |
| Patrol | Walks a set route, fights if provoked |
How Mob AI Works
Each mob follows a state machine:
- Idle — standing at spawn, looking for targets within its aggro range
- Patrol — walking a predefined route
- Chase — running toward a detected player
- Combat — using abilities via its weighted ability rotation (see below)
- Return — walking back to spawn if it gets too far away (leash range)
- Aggro range — how far the mob can spot players (default 5 tiles)
- Leash range — max distance from spawn before it resets and walks back (default 15 tiles)
Perception & Stealth
When the stealth / encounterAI features are on, mobs use real perception instead of a flat radius. Each mob's perception profile has a sight radius, a sight cone (degrees), a hearing radius, and light sensitivity — so a stealthed player can slip past a mob's back or stay out of its cone and lamplight. This feeds the area-of-interest and aggro checks server-side.
Weighted Ability Rotation
Rather than a fixed rotation, each mob ability carries a weight plus conditions — min/max range, the mob's own HP %, the target's HP %, and a minimum number of targets caught in an AoE. The AI picks among eligible abilities by weight, so casters kite, healers top up allies, and bombers wait for clustered targets.
Element & Status Traits
Mobs can be tuned defensively and offensively:
- Element — an
elementIdplus element rates (resist/weakness multipliers) that plug into the element effectiveness matrix. - Status rates & immunities — per-status susceptibility multipliers and hard immunities (e.g. a slime that can't be poisoned).
Encounter Scripts (Bosses & Packs)
For bosses and coordinated groups, the Encounters editor defines data-driven encounter scripts:
- Phases triggered by HP thresholds or elapsed time
- Actions per phase — cast an ability, spawn adds, play a telegraph, or enrage
- Pack behavior — shared aggro on pull, a leader role, and formation, so a whole camp reacts together
Death VFX
Each mob can select a per-mob Death VFX from the VFX editor. Leave it unset and the mob uses the engine default (default.death_burst), which is itself an editable VFX definition.
Monster Parties
Group up to 5 mobs into a Monster Party with assigned roles:
- Tank — high HP, draws attention
- Damage — high attack, less durable
- Support — heals or buffs other mobs
Spawn Rules
A spawn rule populates one zone with one monster party. Author them in Mobs → Spawn Rules.
| Setting | What it does |
|---|---|
| Zone | Which zone the rule populates |
| Biome | Only spawn on tiles painted with this biome. Accepts several, comma-separated (plains,forest) |
| Max count | How many copies of the whole party live at once. A 3-mob party with max count 4 puts 12 mobs in the zone |
| Respawn interval | Seconds after the party dies before it comes back, at the same spot |
| Time condition | The pack only exists at this time of day |
| Weather condition | The pack only exists during this weather |
How the conditions behave
A rule with a time or weather condition is checked continuously, not just at world start:
- When the condition starts matching, the pack spawns (up to max count) within about ten seconds.
- When it stops matching, the pack is removed — except any mob currently fighting a player. Those finish their fight and simply don't come back.
- A pack that died during its window waits for the window to return instead of respawning outside it. A night-only pack killed at 3am comes back the next night, not at noon.
How the biome filter behaves
The biome is a real constraint: the spawner sweeps the zone for tiles painted with that biome and places the party there, even when the region is a small painted patch on a big map.
The one exception is a zone where the biome isn't painted anywhere — typically an imported map whose tiles carry no biome tags. Rather than leaving the map empty, the pack spawns on any walkable tile and the server log says so:
[MobAI] Spawned 24 mobs in 6 party groups (24 from DB rules, 3 placed outside
their rule biome — the zone has no tiles tagged with that biome (paint biome
regions to constrain them))If you see that line, paint the biome region you meant and re-publish.
Gotchas
- Mobs never spawn on top of you — a candidate tile within 5 tiles of a player, inside a no-spawn land claim, or on unwalkable terrain is skipped.
- Editing rules re-seeds the zone. Publishing spawn-rule changes removes the mobs those rules created and spawns fresh ones; hand-placed and event mobs are untouched.
- World events can scale respawns. A "spawn rate" world event multiplies every rule's interval while it runs.
Equipment
Mobs can equip up to 4 gear pieces, which affect their appearance and stats. Equipped items can also appear in the mob's loot table.