🧟‍♂️ Enemy Schema

Defines enemy types, behaviors, and interactions with the player or world.

✅ Field Rules & Accepted Values

FieldTypeRequiredNotes
idstring✅ YesUnique ID (e.g., 'slime_01')
namestring✅ YesUI display name
healthnumber✅ YesTotal HP
damagenumber✅ YesDamage dealt to player
speednumber❌ NoDefault is 1.0
spritestring✅ YesPath to sprite asset
aiTypestring✅ YesBuilt-in or custom AI logic
abilitiesstring[]❌ NoAbility IDs used by enemy
levelIdnumber❌ NoOptional level restriction
bossboolean❌ NoEnables boss logic and UI
phasesnumber❌ NoNumber of phases (boss only)
phaseTriggersstring[]❌ NoE.g., health_below_50, time_elapsed_30
spawnIfobject❌ NoConditional spawn logic
statusImmunitiesstring[]❌ NoE.g., ['freeze', 'poison']
onDeathstring❌ NoTrigger/event ID on death
onHitstring❌ NoTrigger/event on hit
onAttackstring❌ NoTrigger/event on attack
soundobject❌ NoSound effects for actions
dropsstring[]❌ NoToken/item IDs dropped on death