Basically, I wanna know how adonis made anti-kick patch and I don’t understand how it works. How can you detect someone using anti-kick?
Adonis abused the fact that people’s metamethod hooks did not check self, basically they were checking for any __namecall with “Kick” and blocking it, but you can detect it like this
local a,b = pcall(function() workspace:Kick() end)
if a then
–detected
end
same thing with localPlayer.Kick, just call it on a non-player instance
localPlayer.Kick(workspace)
Wouldn’t the pcall return b
either way since workspace isn’t a kickable instance?
no because they were detouring the function so it would return true because exploiters and brain cells do not mix
Ohh, thanks! Got a much better understanding at this.
no problem, here’s an actual example of the hooks they use
namecall is basically the internal function that roblox uses for well, namecall, but to keep it short, anything that is done on an instance with :functionName() goes through namecall
exploiters can replace namecall with their own function that detours certain scenarios, localPlayer:Kick() does
Index → Player
Namecall → kickFunction(Player,Reason)
Player here is Self, which there are explanations of everywhere because its the same concept as tables
They are checking if namecall is calling kickFunction, and if it is, they block the call and just make it return nil
Because they suck at blocking calls very much, you can call kickFunction on anything that will not usually be kickiable and check if it is nil, because they aren’t making it error, you can catch it in a pcall and check if the player is detouring the function
Ohh. So I can basically just use .Kick(anythingHere, “”) and it will catch it?
pretty much, if you are trying to do .Kick, you will have to do localPlayer.Kick(workspace,"")
workspace can be replaced with anything but do not make it localPlayer because it will actually kick them
you can check the adonis source on github to see exactly what they are doing if you want a better explanation
I see. Thanks for the help. Will look into it!