An Ability is a discreet action (or series of actions) that are initiated due to some set of rules (user input, scripting, etc).
Abilities themselves are made up of actions called Tasks that are executed along a timeline and according to the rules of the Ability itself.
Abilities come in two flavors:
- Characters are limited to 1 Active Ability at a time.
- Can be Interrupted or Branched out of.
- Examples of an Active Ability are Dodges, Weapon Attacks/Combos, Spells, etc.
- By default, Characters have no limit to the number of Passives on them, although Designers can easily change that behavior through Blueprint scripting.
- Can only be completed naturally (cannot be interrupted or branched out of), or removed through Blueprint scripting.
- Supports the concepts of having a Stack, and various behaviors that go along with it (see below).
- Examples of a Passive Ability are Auras, Buffs / Debuffs, Heals Over Time, Damage Over Time, etc.
- Support Targeting (although it's rare for a Passive to need Targeting, generally you have an Active Ability which uses Targeting to apply a Passive).
- Support having a Cooldown (see below).
- Support Looping (either the whole Ability, or just a section of the Ability).