I’m going to start by mentioning that the Ability System is still a work in progress and I don’t encourage anyone to use it yet. You aren’t going to find good examples or documentation about it and things you’re relying on may change without notice.
How are you storing the attribute set? If the attribute set itself isn’t replicated then none of its members will be. We generally store them as standard pointers and create them in the Actor’s constructor with something like this:
UPROPERTY(Category=Attributes, VisibleAnywhere, BlueprintReadOnly)
URTS_UnitAttributeSet* UnitAttributeSet;
UnitAttributeSet = ObjectInitializer.CreateDefaultSubobject<URTS_UnitAttributeSet>(this, TEXT("UnitAttributeSet"));