It seems like if replication is re-enabled for a given property, its state should be force synced (depending on replication conditions). Otherwise, the state will remain "out of sync" for an indeterminate amount of time (until the property is changed again).
The controls for the project are as follows:
1 -> Possess the first pawn.
2 -> Possess the second pawn.
6 -> Posses Original pawn (i.e. pawn spawned with client).
Shift + 1 -> Randomize the values for the first pawn.
Shift + 2 -> Randomize the values for the second pawn.
Shift + 6 -> Randomize the values for the Original pawn.
Shift + 7 -> Randomize the values for all non-Original pawns.
Shift + 0 -> Randomize the values for the currently possessed pawn.
Shift + Ctrl + 1 -> Print the values for the first pawn.
Shift + Ctrl + 2 -> Print the values for the second pawn.
Shift + Ctrl + 6 -> Print the values for the Original Pawn.
Shift + Ctrl + 0 -> Print values for the currently possessed pawn.
EXPECTED:
Printing Values will show non-default values for Client1, but default values for Client2.
OnReps will have been called corresponding to the values that were updated on Client1.
No OnReps will have been called on Client2.
ACTUAL:
Printing Values will show default values.
OnReps will not be called on either Client1 or 2.
EXPECTED:
Printing Values will show non-default values.
OnReps will have been called corresponding to the values that were updated.
ACTUAL:
Printing Values will show default values.
OnReps will not be called.
EXPECTED:
OnReps for Pawn1 will have been called on Client2 when the values were randomized.
OnReps for Pawn2 will have been called on Client1 when the values were randomized.
Before Swapping, PrintValues for Pawn1 will show up to date values for Client2, and out of date values for Client1.
Before Swapping, PrintValues for Pawn2 will show up to date values for Client1, and out of date values for Client2.
After Swapping, OnReps for Pawn1 will have been called on Client1.
After Swapping, OnReps for Pawn2 will have been called on Client2.
After Swapping, PrintValues for Pawn1 and Pawn2 will show up to date values for both Client1 and Client2.
ACTUAL:
OnReps for Pawn1 will have been called on Client2 when the values were randomized.
OnReps for Pawn2 will have been called on Client1 when the values were randomized.
Before Swapping, PrintValues for Pawn1 will show up to date values for Client2, and out of date values for Client1.
Before Swapping, PrintValues for Pawn2 will show up to date values for Client1, and out of date values for Client2.
After Swapping, OnReps for Pawn1 will *NOT* have been called on Client1.
After Swapping, OnReps for Pawn2 will *NOT* have been called on Client2.
After Swapping, PrintValues for Pawn1 will *ONLY* show up to date values for Client2.
After Swapping, PrintValues for Pawn2 will *ONLY* show up to date values for Client1.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-43135 in the post.
6 |
Component | UE - Networking |
---|---|
Affects Versions | 4.14, 4.15, 4.16 |
Target Fix | 4.22 |
Created | Mar 21, 2017 |
---|---|
Resolved | Jan 16, 2019 |
Updated | Oct 19, 2020 |
5353 - cajoebestrotheray |