For the past 2 days I’ve been messing around with my code trying to figure out the best way to do network ownership for my combat based game.
My first issue was that when a player is ragdolled on hit, the network ownership change from one player to the next would make the player attacking have a silky smooth experience and the player being hit would seem to be almost teleporting ( on their client ) as they were hit a far distance away from the player hitting them in ragdoll.
Since I encountered my first issue, I decided “let me do it how most other games do it like Rogue Lineage”. I then went on to make the server the network owner if a player was being ragdolled or hit back by another player so both players would have a semi-smooth experience. Since I did that, the experience is more smooth but still very “laggy” when you are hitting a player but it’s a noticeable difference.
Summary: Is there any way to do network ownership where when a play is hit by another player (ragdolled or not since the same issue applies) the knockback and hit will be silky smooth for both players instead of both having a delay or one having a massive delay so the other has a good experience?? Thanks.
What you could do is have multiple ragdolls. One for the player being hit, one for the player hitting, and one for everyone else(and maybe substitute one of the previous ones for this if you want players to see the same effect). This way, you don’t need to worry about network ownership. Just have each client do what they want and have the server give network ownership to whoever has the better system for everyone else. You might need to clone, delete, and reparent on one client if you experience twitching as clients fight for control over the ragdoll.
As I said in my main post, regardless of ragdoll, I’ve even taken it out of the game now, the network ownership is still an issue with velocities and such because the hit is delayed for whoever doesn’t have ownership and if the server have ownership there is still a delay just not as bad.