Skip to main content

Resource

Gameplay Ability System

Reference GAS abilities, effects, attributes, cues, execution calculations, prediction, and the component architecture introduced in UE 5.3.

Start here

The essentials

GAS is wide, but it rests on a handful of ideas. Skim these eight, then drop into the reference below when you need the exact class, signature, or policy name.

01

The five pieces

GAS has five core pieces: the ASC, abilities, effects, attributes, and tags. Everything else on this page is one of these or the connection between them.

02

Ability System Component

The Ability System Component (ASC) holds the abilities, effects, attributes, and tags for one actor. Each GAS actor has exactly one, and it's where you grant abilities and apply effects.

03

Gameplay abilities

A UGameplayAbility is granted first, then activated. Commit its cost and cooldown inside ActivateAbility; if you don't commit, the cost and cooldown are never applied.

04

Gameplay effects

Gameplay effects are data assets, not code, and are the intended way to change an attribute. Use Instant for one-off changes, Duration for timed buffs, and Infinite for passives.

05

Attributes

An attribute is defined in a UAttributeSet and has a base value and a current value. The base value is permanent; active modifiers stack on top to produce the current value.

06

Gameplay tags

Gameplay tags control what can activate, what gets blocked, what cancels what, and which cues fire. Most GAS logic is tag matching rather than branching code.

07

Gameplay cues

Gameplay cues handle visuals and audio: hit flashes, looping particles, and sounds. They run on clients but not on a dedicated server, and are decoupled from the gameplay logic that triggers them.

08

Client prediction

The client predicts an ability's effects and shows them immediately, then the server confirms or rolls them back. This hides latency while the server stays authoritative.

Reference

Unreal Directive is free and ad-free.

If it saved you time, you can help keep it that way.

Donate