Well, first off, your script won't work because it only checks once the player is added, and not constantly.
Second off, exploiters can easily get past an antiexploit like that. If you want any chance of defending your game from something like that, you should track the character's average movement per second.
plrAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(char)
while true do
local oldCharPos = char.HRP.Position
wait(1)
local newCharPos = char.HRP.Position
end
end
end
from there, get the distance between the two positions, and make your judgement from there
3 comments
You just asked for a reply so I guess i'll just say something random since I still don't know scripting but I still need help.
The modifications occur on the Client, which don't replicated to the Server in regulation to FE; the Server-sided Script will not recognize the change. You'll have to use a LocalScript. It's very difficult to maintain structure this way though, as using a RemoteEvent to disconnect the exploiter will also open opportunities for an exploiter to use it maliciously and subsequently disconnect—
—whomever they wish too.