An Ability is a discreet action (or series of actions) that occur according to some input (a button being pressed, Blueprints, etc).
Abilities come in two flavors:
Active
- 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.
Passive
- 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.
Both
- 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).