Jump to content


Photo

Game Maker Obfuscator - Protect your GM source


  • Please log in to reply
994 replies to this topic

#61 OpticalLiam

OpticalLiam

    GMC Member

  • New Member
  • 782 posts

Posted 02 May 2008 - 02:59 PM

Excellent work Shreib, I have been waiting for something like this. One thing, I got an error message about the obfuscator being confused and all it said was "At line: 37". Line 37 where?

Also, I just ran the same file through the obfuscator again and this time it is confused at "Line: 1" at only 28% (it got to around 60% the first time).

Edited by OpticalLiam, 02 May 2008 - 03:08 PM.

  • 0

#62 Mordi

Mordi

    Maker of Menus

  • New Member
  • 3635 posts

Posted 02 May 2008 - 03:03 PM

Excellent. Now, all we need is a GM7 version.
  • 0

#63 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 02 May 2008 - 03:08 PM

OpticalLiam; Line 37 in the resource it was trying to obfuscate. That could be an object, a timeline or a script. So if it's in an object, you'll have to look through all events to find it. I might considering simplifying this.

Edit; At 28%? Can you please PM me your file? I need to look through this.

Edited by Schreib, 02 May 2008 - 03:08 PM.

  • 0

#64 OpticalLiam

OpticalLiam

    GMC Member

  • New Member
  • 782 posts

Posted 02 May 2008 - 03:13 PM

OpticalLiam; Line 37 in the resource it was trying to obfuscate. That could be an object, a timeline or a script. So if it's in an object, you'll have to look through all events to find it. I might considering simplifying this.


I gathered, but how do I know which one it was? The process bar underneath said it was processing some crazilly named (obfuscated) script. So I had no idea where to look. The thing is this game contains a collosal amount of scripts and code.
  • 0

#65 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 02 May 2008 - 04:17 PM

We've looked through the script in question and found that a /* comment in his code was not concluded with a */. I'll fix this for the next version.

Edit; This is a list of things or fixes of which I plan to have in the new version.

  • Fix bug above
  • Add the "default" statement as non-permitted replacement
  • Add warning to overwriting original file
  • Add GMK support. This is ONLY done with YoYoGames' consent, which I have PM:ed for.
  • Add a list of variables, functions, resources and the like which the obfuscator will not replace
  • FileChooser remembers old location

Edited by Schreib, 02 May 2008 - 07:12 PM.

  • 0

#66 jsmithLMSL

jsmithLMSL

    Katamari Devotee

  • GMC Member
  • 1328 posts

Posted 02 May 2008 - 07:24 PM

Add GMK support. This is ONLY done with YoYoGames' consent, which I have PM:ed for.


(I read through from page 1) Very cool little program. Provided you recieve approval to move forth with the above statement, I'll be looking forward to running this on my own creations though I doubt anyone would ever want to decompile them for anything. Regardless, as mentioned a lot through the posts of this string, this is a nice change of pace to the normal discussion on decompiling and it's neat to see an offered solution supported by all including mods. Bravo.

Edited by jsmithLMSL, 02 May 2008 - 07:27 PM.

  • 0

#67 Tahnok

Tahnok

    Friendly Madman

  • GMC Member
  • 1821 posts
  • Version:Unknown

Posted 02 May 2008 - 08:20 PM

You may want to have a look over this post, Schreib:
http://ismavatar.pro...i...&thread=483

It makes some good points regarding the legality of using GMK files. Of course, I respect that you want to actually get formal permission first.

Also, as long as you're adding a list of variables that should not be changed, would it be possible to add a list of variables that should be changed (whether they are within a string or not)? In my current project I mostly use variable_local_exists when creating certain objects. The idea is that objects' variables can go to a default value (which is what happens if they don't exist) or they get set after creation from the creating object. Without the check to see if they exist or not the default values always override the ones passed in. Finding all occurrences of the variables within a string should be easy, because all the variable names are already there in one piece.
  • 0

#68 HiroLord

HiroLord

    GMC Member

  • GMC Member
  • 255 posts

Posted 02 May 2008 - 09:56 PM

Meh, stupid IE. It makes it download as a .zip file. Anyway, it looks great. I got it from a friend, and its awesome. i hope you can make a gmk version :D

BTW, opening the ZIP, this made me laugh:
Posted Image
  • 0

#69 drazzke

drazzke

    GMC Member

  • New Member
  • 1084 posts

Posted 02 May 2008 - 10:57 PM

This will be very useful, although sadly I will not be using it until there is a release for .gmk files, as I no longer use GM6.
Nice job :D
  • 0

#70 Pie Person!

Pie Person!

    GM 6+ Lover

  • GMC Member
  • 1973 posts

Posted 02 May 2008 - 11:53 PM

Umm... Why do you want to release the source of code in the first place?
  • 0

#71 Dmaster270

Dmaster270

    GMC Member

  • New Member
  • 1736 posts

Posted 02 May 2008 - 11:57 PM

Umm... Why do you want to release the source of code in the first place?

You don't. This is incase someone Decompiles it. They'll get confused.
  • 0

#72 skinnyeddy

skinnyeddy

    GMC Member

  • GMC Member
  • 311 posts
  • Version:GM:Studio

Posted 03 May 2008 - 12:52 AM

I fully support this and the (possible) GM7 version. Anything that helps people to protect their games. Keep up the Good work! :D
  • 0

#73 Jay Da Master

Jay Da Master

    Block: Coming Soon...

  • New Member
  • 242 posts

Posted 03 May 2008 - 02:39 AM

This looks really good and useful, great work. It's probably the closest we'll get to making gm games un-decompilable. I hope to see gm7 support in the near future.
  • 0

#74 mme

mme

    MME

  • GMC Member
  • 1008 posts

Posted 03 May 2008 - 02:57 AM

This is very nice, just waiting for a .gmk one now :D
  • 0

#75 David Dark

David Dark

    GMC Member

  • New Member
  • 154 posts

Posted 03 May 2008 - 08:07 AM

woohoo! \o/ we are safe!
  • 0

#76 Bob 11500k

Bob 11500k

    GMC Member

  • New Member
  • 320 posts

Posted 03 May 2008 - 09:25 AM

Maybe after you've obfuscatored your own game, you could try decompiling it. But if it's illeagal to decompile your own game, then never mind what I just said.

I can't download due to a something that's wrong with my computer (I know it's my computer) but reading what everybody else has posted it looks like it's going well.

Keep up the good (obfuscured) work :D .

~Bob - 11500k :whistle:
  • 0

#77 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 03 May 2008 - 03:32 PM

Meh, stupid IE. It makes it download as a .zip file. Anyway, it looks great. I got it from a friend, and its awesome. i hope you can make a gmk version -_-

BTW, opening the ZIP, this made me laugh:
Posted Image

Hahah, I forgot that I hade created the manifest file inside the JAR and chose a rather unsuitable name.
  • 0

#78 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 03 May 2008 - 10:45 PM

Here is a screenshot of the upcoming version;

Posted Image
  • 0

#79 name

name

    GMC Member

  • GMC Member
  • 1427 posts

Posted 03 May 2008 - 11:24 PM

Lookin good.
-_-
  • 0

#80 Tahnok

Tahnok

    Friendly Madman

  • GMC Member
  • 1821 posts
  • Version:Unknown

Posted 04 May 2008 - 02:39 AM

Very cool. I'm so glad to see that GMK radio button.

One thing I noticed is that I don't see any way to load a text file full of variable names. It's going to get rather old having to reenter the entire list every time a new version of a game is released and the source has to be run through the program.
  • 0

#81 IsmAvatar

IsmAvatar

    Good Samaritan

  • GMC Member
  • 2411 posts
  • Version:GM8

Posted 04 May 2008 - 06:50 AM

You can easily determine if a file is a GM6 or a GMK file by viewing bytes 4 through 7 of the file (with initial offset of 0). Thus, the user should not have to manually choose if it's a GMK or a GM6, the program should automatically detect it.
  • 0

#82 HiroLord

HiroLord

    GMC Member

  • GMC Member
  • 255 posts

Posted 04 May 2008 - 11:48 AM

Here is a screenshot of the upcoming version;

Posted Image


I see that GMK part... Does this mean there WILL be gmk support? Or is it just for show?
  • 0

#83 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 04 May 2008 - 12:05 PM

Very cool. I'm so glad to see that GMK radio button.

One thing I noticed is that I don't see any way to load a text file full of variable names. It's going to get rather old having to reenter the entire list every time a new version of a game is released and the source has to be run through the program.

Another thing added to the list, I suppose.

I'm definately going to work on GMK support, but I'm still waiting for YoYo's consent. Meaning that if they don't like it, I've worked for nothing, but whatehell.

Ism, you're right, really. What it does now is read through the first bytes determining if it's a GM6 file. If it is, it sets the radio button automatically to GM6, otherwise GMK. But it's probably superfluous.

Edited by Schreib, 04 May 2008 - 12:06 PM.

  • 0

#84 Blijbol

Blijbol

    Happy business

  • GMC Member
  • 313 posts

Posted 04 May 2008 - 01:08 PM

Maybe you can also make the program output an HTML file with a table of the obfuscated names and the original names, so we can still decipher error messages after the release.

Meaning that if they don't like it, I've worked for nothing, but whatehell.

If they don't like this project, then we don't like YoYo Games. They've not released any patch yet to protect against the decompiler, if they do not support you then it actually looks like they support that the decompiler is being used.

Edited by Blijbol, 04 May 2008 - 01:08 PM.

  • 0

#85 HiroLord

HiroLord

    GMC Member

  • GMC Member
  • 255 posts

Posted 04 May 2008 - 01:30 PM

Maybe you can also make the program output an HTML file with a table of the obfuscated names and the original names, so we can still decipher error messages after the release.

Meaning that if they don't like it, I've worked for nothing, but whatehell.

If they don't like this project, then we don't like YoYo Games. They've not released any patch yet to protect against the decompiler, if they do not support you then it actually looks like they support that the decompiler is being used.


Very true. Since there is no actual way to prevent it from being decompiled (well, no software or update) then this is the only solution. Sadly, I use GM7 for all my games, so it wouldn't be useful to me and many many others if there is no released GMK support. YoYoGames must give consent, and we all hope they do!

EDIT:
Sorry :D

Edited by HiroLord, 04 May 2008 - 04:45 PM.

  • 0

#86 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 04 May 2008 - 03:11 PM

Thanks for all your support, people.

Tahnok, your wish is my command.
Posted Image

I replaced the radio buttons with little symbols.
  • 0

#87 Blijbol

Blijbol

    Happy business

  • GMC Member
  • 313 posts

Posted 04 May 2008 - 04:32 PM

Tahnok, your wish is my command.
Posted Image

Can we also save the list so we have something to load? :D That doesn't look like a list of variables by the way, does this also apply to strings now?

Edited by Blijbol, 04 May 2008 - 04:34 PM.

  • 0

#88 GrayAvocado

GrayAvocado

    A big bad Wolf

  • GMC Member
  • 1226 posts

Posted 04 May 2008 - 04:39 PM

Edit..


Well, i can't test it but i think it is great :D

Edited by -wolfprograming-, 04 May 2008 - 04:54 PM.

  • 0

#89 Schreib

Schreib

    Valen Shadowbreath

  • GMC Member
  • 1457 posts
  • Version:Unknown

Posted 04 May 2008 - 04:39 PM

It's IsmAvatar's text file with the GM7 raw documentation.

They are strings. Simply add a string to the list, and variables and resource names with the string's name will not be renamed.
  • 0

#90 HiroLord

HiroLord

    GMC Member

  • GMC Member
  • 255 posts

Posted 04 May 2008 - 04:46 PM

then we don't like YoYo Games.

Why should we like them now? Almost every post that has the word Decompiler is deleted. This thread is rare. If we cant post about it, how can we post against it? I have a secret to beat the decompiler. But every time I post it, my post gets deleted.

So I ask you. Why should we like them now?

Ehhh?

YoYo is NOT the gmc. The moderators and admins here has no connection to the YoYo staff.


Sorry, edited post :D

Anyway, any news from YoYo Games?
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users