How to properly apply a velocity to a player

I’m creating a battlegrounds game. I would like it if when you punch someone, they move back a little. The effect can probably be achieved with a linear velocity, vector force, etc (idk yet)
Here’s an example:


My main question isn’t about how I’m going to push the player but how to do it properly. If I hit another player, should I apply this velocity on the client of the victim or on the server.

On the server it would be faster but I want to make my game very network efficient. Thank you!

What games like the Strongest do is apply velocity for punching and knock back server side. The client still handles movement but it’s better to handle on the server especially for complex combat systems. Knockback in battleground games i’ve learned is just with body velocity and they delete it after .1 seconds.

1 Like

Ok, so on the server. I don’t want to use body velocity because it is deprecated though. I’m gonna mark this as the answer because this is what I’m looking for. Thank you

I know for a fact that tsb uses body velocity. you can try linear velocity but it has weird replication issues when done on the server. i spent hours reverse engineering all these games for my own combat system since there isn’t much info on making good combat.