How to deal with soccer ball replication?

I am making a soccer game that is comparable to Rocket League. There are two teams and one ball involved in the game. I want to deal with synchronizing the ball as best as I can.

The interactions with the ball are always a little bit delayed from the client’s point of view as shown in the video below. This is expected behaviour due to networkownership, but I wonder if there is a way to improve the speed at which the ball reacts to the client.

The ball interaction might appear slower than it actually is, cause I used BasePart.ApplyImpulse and BasePart.ApplyAngularImpulse.

I have not really tried any solutions so far.

It’s not super easy, and is usually mostly faked.

More information can be found here: Custom Character Replication Research - #2 by nicemike40


The rocket league talk is probably the most relevant to you. You probably don’t need something that sophisticated but it’ll give you some ideas.


This is so much harder than I thought, but it looks like a really fun project to me.

1 Like