Ability
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:
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).
Base Properties
Length
The time, in seconds, that it takes for the Ability to complete.
Cooldown (Optional)
How long, in seconds, before the Character can re-activate this Ability.
Passive Properties
Is Passive
Marks the Ability as a Passive Ability.
Max Stacks
The total number of "Stacks" allowed for this Ability.
Can be controlled / queried from Blueprints to allow Designers full control.
Refresh Duration On New Stack (optional)
If true, the Ability duration will be reset back to 0 every time a Stack is successfully applied.
Always Refresh Duration (optional)
if true, the Ability duration will always be reset to 0 every time a Stack is attempted to be added (whether successful, e.g. due to max stack limit, or not).
Only Refresh Loop Time (optional)
if true, instead of resetting the Ability duration to 0, it'll reset the duration to the Loop Start time.
Loop Properties
Is Looping
Marks the Ability as Looping.
Loop Start
When Looping, this is the time value, in seconds, where our Loop will begin at each iteration.
Loop End
When Looping, this is the time value, in seconds, where our Loop will end at each iteration.
Max Iterations
The total amount of Loop iterations allowed for this Looping Ability (0 = Infinite).
Targeting Properties
Requires Targeting (Optional)
If true, if the Target Logic fails to find at least 1 Target - the Ability will not execute.
Target Logic
See Targeting
Channeling Properties
Is Channeled
Marks the Ability as a Channeled Ability.
Channel Conditions
See Channel Conditions
Must Pass All Conditions
If true, all the conditions supplied must be passed each frame to avoid failing the channel.
Failed Channel Result
If the channel fails, this option tells the Ability system how to treat the failure internally. By default, it's treated as an Interrupt.
Tag Properties
Tag Container
A set of UE4 Gameplay Tags that can be queried from Blueprint scripting.