Printing a rotator variable simultaneously to the server and client shows that the client can not show negative values in a rotator while the server can.
This only occurs when the variable was set on server only, but then why is the client printing it differently?
Is it a bug? If not, why?
I know that the positive and negative values ultimately give the same rotation, I just came across it while troubleshooting issues in my wall running blueprint, but I doubt this is the cause…
My guess is that for network performance the rotation values are truncated to the interval -180, 180 before being sent from server to client. It may have been a decision to do this because conceptually it doesn’t matter whether the value passed is -90 or +270, while a network protocol for transferring values between -180 and 180 can save some bits.
Look at it this way: a floating point is usually 32 bits which allow it to have a huge value range. If you know before hand that the value to send between server and client is between -180 and 180, you may only need 16 bits? -> Huge savings on bandwidth usage when transferring FRotators.