Gameplay cues for periodic gameplay effects get instantly removed

Hello,

while working with Gameplay Effects and GameplayCues, we noticed that a specific combination of settings results in Gameplay Cues not working as expected:

If a gameplay effect is set to have a period, any gameplay cue that is associated with that gameplay effect will be immediately removed again and not persist for the duration of the gameplay effect. As an example, when a fire effect is applied to an object that applied periodic damage as long as it is active, an associated gameplay cue with fire particles will not be visible.

The gameplay effect seems to be immediately removed again. This seems to be the issue also observed here:

To avoid using Full replication mode, a workaround that we have been using so far was to split gameplay effects that have a period into two separate effects: One main state that is associated with the gameplay cue and a linked periodic effect that has tag requirements on the main state effect. This setup works, but is a bit cumbersome.

Is this the expected behavior how gameplay cues would work for periodic effects? Or is this potentially an already known issue?

Thanks,

Oliver

Steps to Reproduce

  • Create a gameplay effect with a duration
  • set a period duration to a value higher than 0
  • add a modifier or execution to the gameplay effect
  • create a new gameplay cue actor (e.g. based on Lyras GameplayCueNotify_Looping)
  • add any visual effect or sound to the gameplay cue that should play for as long as the cue is active
  • create a gameplay tag and associate it with the new gameplay cue
  • add the gameplay cue tag to the GameplayCues array of the previously created gameplay effect
  • apply the gameplay effect to a non player character or other object in the world that is not locally controlled

This is definitely not expected behavior, thanks for pointing it out! We’ve got a few edge cases around mixed replication gameplay cues and your workaround is exactly what I would have suggested as a stopgap until this can be sorted properly.

This is on my list of to-dos for sure, but there are a few other features and bugs that are taking priority at the moment.