Interpolation for custom character replication

Hello, I’m trying to make a very hacky fast custom character replication script for my combat game based on this video, which currently works like this:

  • The client anchors every other player’s humanoid root part

  • Every frame, the client fires a remote event containing its character’s pivot CFrame

  • The server fires the pivot CFrame to every other client

  • The other players move the client’s character by using :PivotTo()

This eliminates the very noticeable default character replication delay, but the characters’ movements are noticeably more jittery; the solution for this is probably interpolation, but I don’t know how to do it. I’d also like to reduce network usage somehow.

this will slow down your game massively because of the amount of requests sent through the remote event, and theres still a delay between a remote client/server fire and a server/client receive

Basically to reduce network usage. Send less. Instead of every frame, send it every .1 seconds or so. And to interpolate you’ll basically just use tween service to update the CFrame or something like that.