Course contentsShow
← Unreal Engine Game Development
Lesson 632 of 8809. Gameplay Ability System (GAS)Free lesson

Implementing Gameplay Cues for Visual Feedback

Create Gameplay Cues to trigger particle effects and sounds automatically in response to gameplay events without writing complex replication logic.

In this lesson, you will learn how to use Gameplay Cues to trigger visual and audio effects automatically through the Gameplay Ability System (GAS) without needing to write custom network replication code.

The Problem with Manual FX

Usually, when you want to trigger a particle effect or a sound when an ability hits, you might try to do it inside your Gameplay Ability’s ActivateAbility function. However, if you do this, you have to manually handle replication to ensure the effect plays on every client. This quickly leads to bloated code and synchronization bugs.

The Gameplay Cue Solution

A GameplayCue acts as a specialized object that listens for specific Gameplay Tags. When an Ability or an Effect applies a tag (e.g., GameplayCue.Hit.Fire), the Cue automatically handles the network-replicated event. It knows how to spawn the particles or play sounds at the target location for all connected clients.

To implement this, you create a Blueprint class derived from GameplayCueNotify_Static (for instantaneous effects like a blood splatter) or GameplayCueNotify_Actor (for looping effects like a burning fire).

Implementing a Static Cue

Once you create your GameplayCueNotify_Static, you set the Gameplay Cue Tag property to match the tag you apply in your Gameplay Effect or Ability. Inside the Blueprint, you override the OnExecute event:

// In your Blueprint Event Graph:
Event OnExecute
    -> Spawn Emitter at Location (YourParticleSystem, HitLocation)
    -> Play Sound at Location (YourSoundCue, HitLocation)

Because the GameplayCueManager handles the distribution, when your Ability applies a GameplayEffect containing the tag GameplayCue.Hit.Fire, the system automatically calls this OnExecute event on every client. You no longer need to check IsLocallyControlled or manually call Multicast functions; the system ensures the visual feedback is consistent across the network while keeping your Ability logic clean and decoupled from visual assets.

Key Takeaway: Gameplay Cues decouple visual and audio presentation from gameplay logic, allowing you to trigger complex effects across the network simply by applying a Gameplay Tag.