Possess Jitter on Client

Hey guys, so I can’t seem to get this tiny jitter to go away on clients when performing a smooth camera/springarm transition and then possess. As you can see, this is what it looks like on the client:
[video]https://gyazo.com/2d5e450dda1c7b7cfc08ec02f1acc8f1[/video]

But it does work perfectly on the host:
[video]https://gyazo.com/94611fffdfb3992744b8d1f099342b89[/video]

Ok so, say I set the location/rotation of the player’s springarm/camera via a timeline to match the location/rotation of another character’s springarm/camera on a client-side function. Not replicating the position of the components.

When I then call possess on the second character (Server-side), I am seeing a jitter on the possess because the springarm/camera positions aren’t the same on the server. Because if I print out the values client-side they’re the same for the old character and the new character. But if I print them out server-side they’re different.

Any idea how I can remedy that?

I may be wrong here, but I think the reason it only works on the server is because the server knows about every player’s control rotation. When you are a client however, you only know the control rotation of yourself not the others. Maybe you can ask the server for the control rotation of the character that you are possessing?

This could be a really stupid question @STRiFE278, but what would that look like exactly?

@ProjectTallGrass It makes a lot more sense if you understand how multiplayer games work in UE4. Basically, when (as a client) you press W to move forward, you don’t actually move your character forward. You tell the server that “hey, I want to move forward” and so the server moves you forward and replicates the movement back to you. (This is not entirely true, because there are some tricks used inside the movement comp to battle latency, but you get the point.) Another example would be shooting. When the client presses LMB, it tells the server that “hey I want to shoot” and so the server handles shooting and informs the client that “yeah dude you just shot, play some effects”. The server has more information than a client has. When you mark a variable replicated, it basically means that when you set it to some value, the server will tell the clients that this variable changed to x.

Back to your question. I think the “jitter” happens because when you possess a character, the client doesn’t know where that character is looking. Only the server does. So when you are playing as the server everything works fine.