How to properly launch a projectile on the server so that it flies smoothly?

Hello, I have some problem. I can’t figure out how to get the projectile flight system right.
I want to make it safe (as far as possible) and smooth.
Unfortunately, I was able to achieve only one of the options at a time.

What is the essence: the client (player) chooses where to launch the projectile, sends this information to the server, and from there there are two ways:

  1. The server launches the projectile on its own.
    The advantage of this option is safety, because. The client cannot interfere with the work of the projectile in any way. But the main disadvantage follows from this: the projectile moves in jerks, not smoothly.

  2. The server transfers the flight of the projectile to the client by using the SetNetworkOwnership() function.
    The advantage of this method is its smoothness. But here lies the minus - the server cannot adequately consider the position of the projectile, which is very bad. In addition, as far as I know, the projectile will fly only for one player.

Here we come to the point of this topic. I need to find an ultimate solution that will help maintain both the smoothness of the projectile and the safety of its operation. In addition, the projectile must be displayed at once on all clients without exception.

SetNetworkOwner just applies ownership to something

Network Ownership is automatically Applied between the Server, and the Players, and that is usually why its not smooth. using SetNetworkOwner just sets a Owner without Automatically changing it.

It doesnt change what Client it runs for, It controls how the Physics are Handled and Distributed between each Client

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.