Description

This was reported from https://udn.unrealengine.com/questions/323255/bugfix-onactive-not-triggering-for-gameplaycues-on.html

In some case it looks like OnActive gameplay cues are not working properly on standalone servers. Note:

I haven't been able to figure out what the correct fix would be, but here's the info I've got. UAbilitySystemComponent::InternalTryActivateAbility creates a new ScopedPredictionKey on line 1165:

bool bCreateNewServerKey = NetMode == ROLE_Authority &&
(!InPredictionKey.IsValidKey() ||
(Ability->GetNetExecutionPolicy() == EGameplayAbilityNetExecutionPolicy::ServerInitiated ||
Ability->GetNetExecutionPolicy() == EGameplayAbilityNetExecutionPolicy::ServerOnly));

UAbilitySystemComponent::AddGameplayCue_Internal does not generate a new prediction key, as GameplayCueContainer.bMinimalReplication is false. NetMulticast_InvokeGameplayCueAdded_WithParams_Implementation then hits that early return, as the key is server instantiated (from ::InternalTryActivateAbility) and the actor is locally controlled (listen server/single player case).

Steps to Reproduce

In UDN, difficult repro to see normally

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-39077 in the post.

0
Login to Vote

Fixed
ComponentUE - Gameplay
Affects Versions4.14
Target Fix4.15
Fix Commit3215326
Main Commit3227721
CreatedNov 28, 2016
ResolvedNov 30, 2016
UpdatedApr 27, 2018