🧠 Abilities Schema

Defines actions or powers available to the player, such as movement, attacks, and passive buffs.

✅ Field Rules & Accepted Values

FieldTypeRequiredNotes
idstring✅ YesUnique internal ID, e.g. 'dash'
displayNamestring✅ YesShown in UI
descriptionstring✅ YesExplains gameplay behavior
effectstring✅ YesEngine-level effect (e.g., 'move_fast_horizontal')
type"movement" | "combat" | "defense" | "utility" | "passive" | "traversal"✅ YesAbility category
keystring❌ NoInput key (e.g. 'X', 'Space') for active abilities
cooldownnumber (float)❌ NoCooldown between uses, in seconds
durationnumber (float)❌ NoDuration of the effect once triggered
target"self" | "enemy" | "area" | "directional"❌ NoEffect target
costobject❌ NoOptional cost (e.g., { energy: 10 })
requiredState"ground" | "air" | "wall" | "any"❌ NoState required to trigger
unlockAtLevelnumber❌ NoAuto-unlocked at player level ≥ value
tagsstring[]❌ NoSearchable labels (e.g. ['speed', 'stealth'])
iconstring❌ NoUI icon path (e.g., 'dash_icon.png')