Is this Multiplayer movement logic correct?

Command is executed in the same frame on the client side.
If you set in the Event:
Client max speed -> then Set it on the server or
first Set it on the server -> then on the client is the same. :slight_smile:

Both commands will be executed locally first (in the same frame of tick). You can even print out and debug it and you will see that it will be executed in the same frame (for instance RPC in tick for test purposes).
If you want to execute/simulate with 125ms delay because the client is local and theres no delay, you can use Client command -> delay 0.125 -> RPC, otherwise it will be executed in the same frame.
For instance:
1 frame: client walk
10 frame: client press Sprint button -> client will set max speed and send RPC in this frame (Same event, does not matter order in this case)
11 frame: delay
12 frame: delay…
21 frame:…delay, server received request from that client, processing and response
40 frame: client(s) receive response from the server
(for example)
The point is that there is no difference what is put first in this case, and even if there is, it will not affect the accuracy or incorrect position prediction or the like.
I hope I am not wrong :slight_smile: