I have a sprint script that makes you run by toggling Left Control. The script used to rely on the client to change WalkSpeed and soon got rid of it by using a RemoteEvent as the client sends a number, and if number is modified the server will not allow the change the exploiter has done.
But there is a problem, exploiters can just ignore the curse of CTRL (since modifying the LocalScript is useless because the server sees that the number exceeded) and just use the client to change the WalkSpeed and JumpPower.
I cannot use RemoteEvents for this because exploiters can just destroy the existence of LocalScript that the Script wants to hear the message of what is going on. Obfuscation is bad for performance...
I also think of using loops but it is also a bad idea, is there any techniques?
I'm not really asking for an anti-exploit script in the client, I'm looking for ways to avoid the curse of the exploiters who use the client to change WalkSpeed or JumpPower.
Couldn't you use a while true loop and determine how far they've walked in 'x' period of time by using magnitude from the starting position to a new one? If it's way too far (with the checks of HumanoidStates, etc obviously) then you could teleport them back?