Replication Conditions Not Working

Hi
I Have a replicated variable associated with a RepNotifty event that isn’t respecting it’s replication condition, my weapon reference class should be updated on all clients with the repnotify event when it spawns, but when i set the reference to the new weapon spawned on the server only the owner receives the repnotify.

Code:

Weapon Reference and Inventory Declaration

UPROPERTY(ReplicatedUsing = RepNotifyEquipedArray)

AMasterEquip* CurrentlyEquiped;

void AFWCharacter::GetLifetimeReplicatedProps(TArray& OutLifetimeProps) const
{
Super::GetLifetimeReplicatedProps(OutLifetimeProps);

DOREPLIFETIME(AFWCharacter, CurrentlyEquiped);

}

The RepNotify function just prints to the screen for debuging.

UPROPERTY(ReplicatedUsing = RepNotifyEquipedArray)
TArray CurrentlyEquiped;

Not sure if you just wrote this or copy and pasted it, this seems wrong.

It’s unreal standard for ReplicatedUsing to be OnRep_PropertyName,

UPROPERTY(ReplicatedUsing = OnRep_CurrentlyEquipped) 
ASomeItem* CurrentlyEquipped;

like this.

And your lifetime replicated props is ok. this will be replicated to everyone as long as the actor replicating replicates to everyone, if it’s the character it should.

Yes this ended up being named RepNotify because i was changing the code trying to find out if there was a problem with the main function named OnRep_Equiped it replicates fine to the owning client but will never execute on other people i also wrote the wrong variable type before this was a MasterItem pointer.

So apparently it was due to the actor being spawned having bNetUseOwnerRelevancy = true. This flag was preventing the reference from replicating to other clients.