How does the character class handle replication?

Hi, I’m very curios about this subject, it affect cheating and the player perceptionand and I couldn’t find the answer anywhere, so the builtin Character class using its standard node for movement ‘AddMovementInput’:

- Does simulate the movement on the client, then send the update position to the server? (cheating problems)

- Or it simulates on the client, then send the input to the server to make a simulating too, then multicast it to all others clients?

- Or it send the input to the server and the server does the simulate and send back the update position to the player and to all other clients? (perception delay problems)

Thanks in advance.

Thanks @cancel, this is good to know. just to be very clear, the local client also simulates the movement? so it won’t feel the delay between press W to walk forward and actually see its character move forward?