GAS: why should I use GameplayCues?

Hey everyone,

I’m a bit confused about when to use static GameplayCues with GAS. It seems to me that it is less performant than classic sound/particle cues. Here is how I see things:

Case 1: my GameplayAbility plays a montage on the server. On top of that it also executes a GameplayCues to add a sound and a particle emitter. The gameplay cues are automatically replicated to all clients, which is great, but I see 2 downsides:

  • First we spawn some cosmetics effects on the dedicated server, isn’t it a waste of CPU ressource?
  • Second: the gameplaycues are replicated!! As I said it’s great, but is also takes bandwidth

Case 2: my GameplayAbility plays a montage on the server, nothing else. The montage is replicated to all clients. The montage has AnimNotify to play sound and spawn particles, that way each client handles the cosmetics by itself. No waste of CPU ressource on the server, and no waste of bandwidth to replicate the cues.

I don’t see a case where I would want to pick case 1 over case 2, but I’m probably missing something. What are some scenarios where you would use GameplayCues?

Thanks for your help