How would i make an anti jumphack exploit?

This is what I’m doing kinda but instead of negative it just minuses the current y with the old y and if it’s above my desired unallowed y then it will teleport them back to old pos

But now what I want is to check if exploiter goes down

Look man, you’ll never be able to exterminate exploitation, I personally suggest you to renforce your data saving system to make sure even there could be hackers in your game nobody will lose any data if they leave the game

I don’t understand, how can hackers hack server side if it’s handled in the server side?

Yes, no anti exploits are unbypassable, but I see it effective.

Also data saving is unrelated; I’m talking about anti exploits here.

I made it, but it dosent work as it should, script

task.spawn(function()
			task.wait(2) -- for spawn locations
			local currentPos
			while true do
				currentPos = char.HumanoidRootPart.Position
				task.wait(settingsforantiexploit.AntiJumpHackSettings.checktime)
				if (Vector3.new(0,char.HumanoidRootPart.Position.Y,0) - Vector3.new(0,currentPos.Y,0)) >= settingsforantiexploit.AntiJumpHackSettings.UnallowedY then
					settingsforantiexploit.AntiJumpHackSettings.Punishment(char,currentPos)
				end
			end
		end)

Saving data is indeed very important. If somebody hacks the game, the most important thing that you’ll want to protect is the player’s data.

You can already do that by leaving? It’s notlike the exploiter can modify players data

Look, exploiters can kill you in certain games that cause the player to lose data. For example Da Hood or other city games. You’d want to keep that.

Yeah but if they play with killing other players that could cause serious data problems, for example resetting the player’s cash etc

That’s why the player’s data should be stored in somewhere safer ASAP

Wouldn’t an client-side anti-cheat be kinda useless :thinking:

My game is not da hood lmao. Just stop, Client sided exploits can’t access datastore, I literally tried it with knrl it dosent work.

Pointless trying to make client-sided Anti-Cheats as they will always be able to be bypassed. For the jump-power, I’d recommend making a server-script which detects if their HRP’s Y value changes by an unachievable amount (increments only) in X amount of time.

My anti cheat is serversided and does not depend on client at all. But if I check if it’s in an unacceptable Y I won’t be able to be on tall buildings. Thus it won’t be working well because the exploiter could make their jumppower high but below the y amount.

That’s not what I’m saying. You’d need to make comparisons every X amount of time to its previous value, not add a height limit. If you have teleport scripts to a place higher, then you’d have to add a bypass, such as a Boolean deciding if the player is currently teleporting or not, to stop the script from returning a false-positive.

Ok I get it. But it would require for it to fire so fast and would cause server ping, because if your jumppower is 100 you get down quickly

Not necessarily, you could just detect when the player’s position has changed. It’s certainly not the most efficient way but it should be fine depending on your intended server sizes:

Also, even if they do get down quickly, then what are they even achieving? It’d still be detected if they didn’t go back down to their original position, therefore the script would still be useful if not firing 100 times a second.

Okay wait, I already found a solution from your solution, I can just use him.Jumped so I don’t need to fire 100 times a second. Thanks for the help.

No! Look, if a player in Bloxburg is building, the hacker killed him, boom, progress lost. That’s the problem. Same with the case in many games

bro my game detects if player died soo

You can simply check if the humanoid’s health isn’t at 0.

if player.Character.Humanoid.Health > 0 then