Skip to content

Creatures & NPC AI

Creature templates, behaviour scripts, and the LLM-driven NPC personality system all live under /admin/design/creatures and sister pages.

Creature templates

/admin/design/creatures (world.creature_template) — list with search by name / entry / model, filter by faction, level range, type (humanoid / beast / undead / ...), elite flag.

Detail editor:

  • Identity — entry, name, sub name, model id, faction, level range, family / type, sub-type.
  • Stats — health / mana / armour scaling, damage min/max, attack speed, ranged attack, casting flags.
  • Loot — links to creature_loot, pickpocket_loot, skinning_loot, reference loot — each editable inline via the Loot tuning page.
  • Spells — assigned spells (creature_template_spell), rotation triggers.
  • Movement — spawn distance, run speed, immunities, schools.
  • Quest links — quest givers / enders that target this creature, required-kill quest objectives.

Smart AI

Creatures with AIName = SmartAI get a script row in world.smart_scripts. The designer page renders the script as a visual tree (events → conditions → actions) instead of raw rows, making boss-fight choreography readable.

  • Drag-drop event ordering.
  • Per-event timer / health-percent / aggro-trigger conditions.
  • Per-action target picker (self, victim, random hostile, link, …).

See the Smart AI scripting docs for the full action / event reference.

NPC personalities (LLM)

/admin/design/npc-personalities configures per-NPC LLM prompts that drive in-character dialogue. Each personality row has:

  • Display name + creature entries it applies to.
  • System prompt (with {npc_name} / {race} / {level} / {zone} placeholders the renderer fills in at runtime).
  • Topic guardrails (allowed topics, forbidden topics).
  • Voice tone (formal / casual / sarcastic).

The world worker queries the assigned model (world.llm_assignment[use_case='npc_ai']) when a player whispers the NPC. Replies are moderated through the same LLM moderation pipeline before delivery.

NPC AI dispatcher

/admin/design/npc-ai is the dispatcher across creature personality assignments — bulk-edit which personality powers which entry, A/B test prompts.