I’ve seen many knockbacks in games being smooth without any slight lag within them. One way I’ve seen it done obviously is looping the position of the object / target player.
However, to make it best as possible, I’ve tried making a knockback on the client side using FireAllClients(), using the body movers such as LinearVelocity and AlignPosition. Most of the time they didn’t even work and only sometimes they actually did.
This is the main part that really confuses me, since I can’t think of any other way of doing a knockback on the client side properly. I’m trying not to use the server side either since that can increase the load, so any help to solve this problem would really be appreciated.
It’s a bad idea to handle knockback on the client. I personally use BodyVelocity on the server to achieve a knockback and pull effect when you punch somebody. I use BodyVelocity and not LinearVelocity because it looks like the player is teleporting for other people if I use LinearVelocity. But if you really insist on having knockback on the client, you could use a remote event to fire the client you want to knockback, however this can lead to slight delay depending on the clients connection to the server.