Contents
Unreal Engine 5.8 · System guide
GAS Abilities
Build reliable network-ready GAS abilities
On this page
Choose a task
Choose an approach
Build and understand
Troubleshoot
Workflow and boundaries
Use these checks when a task crosses several systems. The focused references above contain the specific actions.
Establish the GAS boundary
Read references/architecture.md before implementation.
- Put the Ability System Component on the Pawn/Character when abilities should reset with that avatar.
- Put it on PlayerState when abilities, attributes, or cooldowns must survive pawn death or replacement; initialize Owner Actor and Avatar Actor correctly on server and owning client.
- Grant and remove abilities on authority. Store returned ability spec handles when later removal or mutation is required.
- Route attribute/effect work to
$unreal-gas-attributes-effectsand taxonomy/query work to$unreal-gameplay-tags.
Execute the lifecycle
- Define activation trigger, ownership, instancing policy, net execution policy, tags, cost, cooldown, targeting, and cancellation behavior.
- Request activation through
TryActivateAbility, a Gameplay Event, or the project's input-to-ability mapping. Do not callCallActivateAbilityas a normal public entry. - Let GAS run activation checks. Add custom checks only for conditions not represented by tags, costs, cooldowns, or target requirements.
- In
ActivateAbility, commit at the intended point. IfCommitAbilityfails, end the ability without applying authoritative gameplay. - Use Ability Tasks for multi-frame waits, animation, input, targeting, and events.
- Apply authoritative effects on the server or through a supported predicted path.
- Handle success, cancel, interruption, failed targeting, and montage interruption.
- Call
EndAbilityon every terminal path and undo non-effect side effects.
Read references/ability-lifecycle.md for the ordered
flow, references/patterns.md for concrete ability shapes, and
references/networking.md before choosing prediction.
Hard rules
- Grant abilities only on the authoritative server.
- Do not put mutable execution state on a non-instanced ability.
- Do not assume local prediction makes arbitrary spawned actors or instant damage reversible.
- Do not use Gameplay Cues for authoritative gameplay; they are cosmetic and not reliably replicated.
- Do not omit
EndAbility. - Do not commit a cost/cooldown before the design's true commitment point by accident.
- Keep ability input identifiers separate from semantic ability and state tags.
Use references/troubleshooting.md when activation fails,
fires twice, desynchronizes, ignores cancellation, or leaves an ability active. See
references/sources.md for the UE 5.8 source trail.
Version and evidence
Targets Unreal Engine 5.8 documentation. This label does not establish that every procedure was tested in an editor or packaged build.
Read the documentation sources and verification notes →