A client locally selects velocity and calls a server function with the velocity value as one of the parameters;
The server spawns the replicated projectile. What I’m trying to do is use SpawnActorDeferred(), then set the Initial Speed of the Projectile Movement Component, then FinishSpawning();
The Projectile Movement Component is set to be replicated as well; but the result is, the server projectile flies with the set speed, but the client projectile flies with the default speed that was set manually in the projectile blueprint.
So what should I do to have the projectile have the same initial speed across all the players?
On client, because the client velocity is different from the server velocity, and it tries to fly faster, but the replicated location pulls it back every replication tick.