I am making a simple melee/combat system thats reliant on some strong knockback, and I was curious (mostly from the concern of exploiter/security and fluidity/gameplay) should I try to use,
:ApplyImpulse() on the client?
or VectorForce from the server?
Or any other ideas of how I should tackle knockback?
I recommend using LinearVelocity as it makes sure the person getting knocked back doesn’t get flung however it is a bit confusing to use at first
about exploiting and security I don’t think it really matters if you render the knockback on the server or client
Exploiters can only manipulate things on their client but usually never the server
A good example would be Rocket Launcher with a 5 second cooldown
– Bad Solution –
Client sends RemoteEvent to Server to Shoot the Rocket Launcher
After shot Client handles the Cooldown and ‘halts’ all input to do with the Rocket Launcher
(If the server doesn’t have any checks then the Exploiter can just spam the Shoot event as much as they want)
– Good Solution –
Client sends RemoteEvent to Server to Shoot the Rocket Launcher
After shot Server handles the Cooldown and halts all attempts to Shoot until the Cooldown is finished
That’s a brief explanation of exploit proof code however if you need something more detailed I recommend you research yourself