Projectile Replication: on the Client the movement is choppy

Yes, but if the OnImpact() function fires on both… then I can filter the Client so only the server will execute it. I **guess **that’s the best way in this case…

Why spawned by the client? Couldn’t I use a NetMulticast function so the SERVER **spawns **and ALL CLIENTS see?

Totally, or you could save some bandwidth by spawning such effects locally. :wink:

Thanks for your time, mate.

Thanks to everyone!

I just had the same problem and while your workaround is valid, I accidentally stumbled upon ForceNetUpdate(). Simply put it in your tick and it’s done :smiley:

Super::Tick( DeltaTime );
ForceNetUpdate();

Edit: yes, this solution doesn’t follow eXi’s steps, but neither does yours - as it doesn’t actually make the ProjectileMovementComponent’s calculations on the client. You have simply found a workaround for its replication, and while this fixes the problem for now, you will find that in poor networking conditions you can still get choppy movement. You might try ticking the PMC manually though (I haven’t yet)

In the actor’s “Class Defaults”, under “Replication”, there is an arrow to open up extra options. In there is “Replicated Movement”. You could try changing the options as follows.

Location Quantization: Round to two decimals
Velocity Quantization: Round to two decimals

If these options are what they look like then they should provide smoother movement on the client. The rotation option doesn’t appear relevant to you but it looks like you’d get smoother rotations if it is set to use shorts.