Hello, Is there a way to make an Anti-Dex explorer? How does SCP:Roleplay do it?
Please help me out.
if game:FindFirstChild("exploit_gui_name", true) then
It’ll be able to reach into game.CoreGui without elevated permissions and attempt to grab the target GUI by name.
Previous advice used to work specifically around 2020, I never really experimented with the method itself long term to realize that it no longer works.
would I have to do game.DescendantAdded?
No, using the FindFirstChild thing should work.
So in starter player scripts, can I do something like:
if game:FindFirstChild("RemoteDebugWindow", true) then
--Frame inside of dex, dex screen GUI has a random hash name
game.Players.LocalPlayer:Kick("Dont use dex!")
end
Roblox patched that method im 90% sure
That should work good, I also recommend you to put it in a loop just in case they run it later in time.
while true do
if game:FindFirstChild("RemoteDebugWindow", true) then
--Frame inside of dex, dex screen GUI has a random hash name
game.Players.LocalPlayer:Kick("Dont use dex!")
break
end
task.wait()
end
If this method works for you, make sure to mark @GetGlobals post as a solution.
The problem with most exploits is that they change the names quite often, so the only “foolproof” method I can think of is just to list all names of the items expected to be in your game. This method is incredibly manual and might also affect your game’s performance.
still doesnt work when I attach dex
Could you show a screenshot of CoreGui when it was ran?
I suggest you don’t do that (or say that) just in case a roblox mod is watching
Its in my own game and for development purposes only
Alright, so it seems like this one is able to avoid it by randomizing the name.
If you wanted to test the theory that it could work you can try detecting ThemeProvider or PurchasePrompt
game.DescendantsAdded would also be a valid alternative.
That’s not a good idea… looping through every descendant of the game that often? That will 100% cause performance issues…
It’s very rare to come across a good dex detection, but the ones listed here do not work. The most common ‘detection’ is a memory check but that’s a horrible thing to add into a laggy/big game. Just make sure you secure your remotes and your game.
As I said, exploits often change their names, which make them so hard to detect. The only way to detect injected items is to check if anything in a specific instance is not supposed to be there.
I agree with @SnoopyLG
Your best bet is to work on your game, some exploits you can’t reliably patch. Anything they can take with Dex is already on their client and can be stolen or seen. Just don’t store anything in containers like ReplicatedStorage
if you don’t need to, or don’t want them stolen.
Besides, most exploits put their GUIs under CoreGui or straight up not on the Roblox client
To anyone that may stumble on this post: FINDFIRSTCHILD DOES NOT BYPASS THE ROBLOX LOCK. IT WORKS IN YOUR COMMAND BAR BUT THAT IS IT. IT WILL NOT WORK IN SERVER SCRIPTS.
Bro who ever thought FindFirstChild worked still living in 2020 , it doesn’t neither does DescendantAdded.