With the train, no matter what the speed of the train, the server always thinks the train is at rest, except when the train switches ownership, at which point the velocity is synchronized between both peers. When the ownership is set to the server, the client’s value is incorrect.
All I can say is, I really, really hope this agregious bug isn’t going to last all code freeze. It’s broken the sounds in a game that I play a lot of, and a lot of people are complaining to the owner.
I wasn’t able to repro in the simple case, but the last place you linked works.
In the simple repro-place, velocity doesn’t match even with physics interpolation disabled. The Train, place however is mind-boggling, based on the GUI that shows velocity.
I have a simpler repro, can you guys try? This is a much simpler version of what you’re trying to do, but basically there is a body velocity that is moving the client’s part, and based on the print outs you can see that the velocity is replicating.
Okay, I got repro. It’s definitely the case that Velocity doesn’t replicate correctly for non-root parts. Attached a fix repro place. Thanks for the report. Jumping on this ASAP to make this fixed by Wednesday night.