Syncronize movement?

If I play with a dedicated server running in the editor, movement becomes out of sync and weird.

Here’s my setup:

Each tick, if “wants to jump” bool is true, it checks if the player is touching the floor, if they are it adds an upwards velocity and sets their movement mode to falling

Assume the ‘wants to jump’ is always kept true. If there isn’t a dedicated server running, the player keeps jumping each time they land as expected. If there IS a server running, there’s a time delay between them landing and jumping (like it’s waiting for the server to tell them they’ve got a new velocity).

I’ve tried various combinations of replication / run on server etc. and nothing seems to work. I want the client to predict their velocity change (instantly) and the server to do the same calculation (when it sees the player is on the ground) and end up with the same result. But it seems things get out of sync and there’s a delay.

Any ideas?

It even goes out of sync when your not using dedicated server, i have the same problem where my ships location are out of sync and dont show in the correct places anymore to people, i fixed it by forcing the movment to happen on the server and trasmitting it to clients using multcast, but it wasent an ideal fix though, and as of yet i still dont know the work around !

I was just testing in the editor and so without the dedicated server option, the local player is the server (I presume?) so everything works as expected. But with that ticked, all velocity changes have a slight delay and snap etc.

I know the goal is to request the move on the server then make the move on the client instantly (and the calculations should match), but that appears not to be the case.

In my example, it seems like the player gets ‘stuck’ to the floor for a short time.