Skills & Abilities

Monsterion has two parallel skill systems: the per-leader active/passive skills (RTS heritage) and the universal mobile MOBA abilities (built for touch).

Per-leader active skills

Named active skills attached to specific leaders via scene instancing:

SkillLeader
Aura of CourageArthur
Guard BreakArthur
Critical SlashBokuden
MultishotRobin
TraderOsman

Skills are attached to a unit's behavior/abilities node in the leader scene. Passive skills (e.g. cleave AOE, pierce armor-penetration) are wired through the behavior / modifier system.

Known gap: several named skills in active_skills.gd (Guard Break, Cleave, Dash, Battle Call, …) have empty effects: [] arrays, so on the desktop build they enter cooldown but run no effect. Many leaders have no per-leader skill entries at all. This is the main reason the mobile build uses a universal ability set instead.

Universal MOBA abilities (mobile)

On the mobile/web build, every leader gets the same three self-contained abilities — they don't depend on the per-leader skill dict, so they work for the whole roster.

AbilityIconEffectCooldown
SprintLightning (blue)+50 speed for 4 s8 s
Battle CrySword (purple)+25 damage for 5 s12 s
HealPlus / star (green)Instant +200 HP10 s

Implementation notes:

  • Effects ride the Behavior.modifiers add/remove system with a stable mod name ("moba_skill"), so re-pressing mid-duration is stack-safe (the previous modifier is removed first).
  • The cooldown countdown is drawn directly on the button face.
  • All numeric tunables are const at the top of the skill-button script.
  • Icons are vector primitives, easy to swap for SVG/PNG later.

Core scripts

FilePurpose
Behavior.gdLeader/unit behavior and skill assignment
skills/active_skills.gdActive ability implementation
skills/passive_skills.gdPassive ability framework
skills/modifiers.gdStat and effect modifiers

Building new VFX skills

New literal-3D spell/ability VFX (novas, beams, AoEs) are rendered in a pooled private SubViewport at the hero's angled look and composited into the 2D world — a real 3D effect layered onto the flat MOBA camera at low runtime cost.