Whitelist System

  1. What do you want to achieve? Keep it simple and clear!
    I need a script that will make a script or scripts in a certain model to only function if the game is under my group. Adding on to this, I wish that that same script would :Destroy() the model the second said player loads into the game.
  2. What is the issue? Include screenshots / videos if possible!
    Recently, my game has been exploited regardless of Hyperion and I need a solution to keep them from using my scripts. Now when you do use the exploit, it doesn’t save scripts, but I have module scripts and local scripts that both will function.
  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub?
    I’ve tried some anti-cheats but haven’t fully rolled out my game after what happened, so I’m not sure if it will help.

To summarize, you want to implement a copyright guard in your script(s) that destroys the model if it’s not used in a game under its creator? This can be done, but it is easily disarmed by exploiters. Your scripts’ source (human-readable) code is stolen alongside the model, which makes it clear to the thief what parts of the code are anti-theft measures

TL;DR: This is a fruitless endeavour. Cope

2 Likes

Would doing require() with a module script work any better?

Actually, I’m not sure. You may be able to require the module via an asset ID using the “MainModule” scheme. My theory, inspired by the documentation, is that your game would be the only one capable of requiring the module due to Roblox’s asset privacy policies. Other games would receive an error stating permission must be granted for the use of the asset

I think Private Modules can still get used so long as they have the Module’s ID. But they won’t be able to see the module itself i guess

They would not be able to alter its code, which re-enables OP’s previous idea. But then again, the code might not even run in the first place

Why not just use a ban script? Otherwise if you want to somehow hide your code you can obfuscate it.

To my knowledge, you aren’t allowed to obfuscate code and distribute it on the marketplace.

Ohhhh, he wanted to put it on the marketplace, my bad

Wait, my bad, I didn’t realize he wasn’t trying to distribute it. Lol.

1 Like

When reading his post I was kinda having a hard time understanding it, poorly written imo. But what I got from it is that he wants to hide his scripts, he really only needs to hide client scripts.

I’m a bit confused. If your game gets exploited, that’s mostly because you did not secure it properly. I don’t understand why nor what you want to do as the explanations are a bit shadowy.

To be clear, as long as your asset is in the marketplace, and with the current system, you cannot prevent someone from reading your code at all. Whether you want to add an “auto delete on runtime” behavior, or anything else, everything ends up getting bypassable. Obfuscation is your best option, albeit bypassable too. It remains the best solution because it is definitely hard to reverse obfuscated code, it’s not impossible though.

Now, about your exploiter problem, if the exploit is “light” (speed hacks, fly hacks, …), then aside from a few things to reteleport // kick the user if their speed exceed a threshold, you can’t do more than that.

If you see someone manipulating anchored parts, or properties that should not be manipulated, then you probably have a script that gives access to the server context to exploiters. Note that unanchored parts can be easily exploited if network ownership is not changed (aka its default beavior is used)

He’s referring to stealing instances via saveinstance or the like

Well, whenever something gets replicated, the client can grab the data it uses so that’s kind of bad