Roblox Script Obfuscation? (To Protect My Scripts From People Trying To Steal My Work)

Hello! I am trying to create a system like @wind_o’s CheckMeIn but I am having trouble when trying to find a good script obfuscator. (I’m Poor So I Need To Find A Free One XD) But, I believe all good obfuscators are paid. Does anyone know a good free obfuscator?

3 Likes

An obfuscator would need to be reversed to execute the code. In the end you have to provide the code to reverse the obfuscation or the code won’t be executed. There’s no real good way to protect your code now that private modules have been removed.

4 Likes

Also apparently obfuscation can cause lag depending on how many characters are used.

1 Like

Obfuscation is just horrible on performance, readability, maintenance and isn’t real security either. That being said, this kind of topic has been raised a couple of times on the DevForum, a quick search of obfuscation in this category would show a lot of threads.

There are a number of developers who share the same sentiment and others, despite the aforementioned pitfalls of obfuscation, choose to do so anyway as one method of “securing” their code before looking at other options such as pulling code from an external resource.

What’s the grand picture you’re looking at? Are you trying to sell one of those systems that developers can purchase and use in their games? I feel it’d have more worth to take up collaboration requests so you’re specifically developing assets tailored to a game and get the chance to both net higher gains and network with other developers, whereas selling loose assets has its own problems like this. Too much of a headache to be worth thinking deeply about as Roblox has no support for closed source sharing.

12 Likes

Do I need to create a .lua file and upload it?

Yes, you upload a lua file and then click the obfuscate button and it will download an obfuscated version of the lua file onto your computer

4 Likes

Is this still working? I tried to use it, but the “Page was not found”.

Yeah. the /Home directory was just moved to the index, so it’s now this

1 Like

I would highly advise no one to be using a free obfuscator online. There is a very high chance they are stealing the scripts themselves and they keep a backlog. As a sidenote, all of these obfuscation techniques which are public have very easy ways to reverse engineer them. So I highly recommend you build your own and learn to build your own.
Obfuscation is not a security it simply is a deterrent. Most experienced exploiters will be able to crack your scripts obfuscation anyways. This is to stop most skiddies from doing the same thing.

Even paid ones will often backlog your scripts.

TDLR: Don’t use premade obfuscators, build your own. Don’t use as security, use as a time waster.

2 Likes

How would you make a script obfuscator, then?

1 Like

Its all mind games. Just keep your exploiter running circles, math and unnecessarily long bits of code for simple things, also keep all strings encoded in a format, I recommend creating a custom base64, or something else.

Theres a reason no one talks about these, and its because if you tell people how to do it your deterrent becomes weaker. I recommend first starting by reverse engineering yourself the above obfuscator. Then learning from it.

1 Like

Also perhaps first learn how to build a custom intepreter, aka a custom loadstring. Once youve got that stuff down can you move into the second stage.

Would you think something free like that would be fine for a small whitelist system that’s just starting out? @Swiiiifty

Why would you need obfuscation for something like that in the first place? The only reason you would need obfuscation is if you were running something client sided which can easily be broken into. If you store that stuff on the server you should be fine.

It’s currently impossible to create a whitelist system on Roblox regardless of scripts being obfuscated or not. If you obfuscate entire code no serious customer is going to want to pay your script where there are the risks of malicious code being ran in the background and inevitable difficulty with updating/modifying existing code.

Assuming your “whitelist” looks something like this – read above. You also run into the problem where if you leave this unobfuscated it can easily be circumvented by removing the conditional statement.

if game.PlaceId == 1234678 then
-- run code
end

Because people will buy a product, and it will have whitelist implemented. If the product gets leaked, people who haven’t bought it (and hence aren’t on the whitelist) won’t be able to use it.

If the script wasn’t obfuscated, they could just remove the whitelist part.

I’m using Trello. When you buy a product, your ROBLOX ID goes onto a Trello card. The script checks for your ID on the Trello list’s cards, and if it’s not there, it destroys the scripts.

That can still be bypassed. It’s the same concept as the example I provided except you’re connecting to a Trello board.

A lot of ‘companies’ who make and sell stuff (e.g lighting fixtures) use whitelisted; and it’s extremely rare that their products are used. Also all their scripts are obfuscated.

Let’s stick with the example of light fixtures. The whitelist script creates fixtures in Workspace. Guess what? Those can be taken and distributed to whoever.

Just because it hasn’t happened yet doesn’t mean it can’t. Whitelisting scripts and products like this on Roblox isn’t possible.