If you are a game developer using the YoyoGames Game Maker tool you might be interested in protecting your games against mischievous people who wants to selfishly steal your game’s resources which apparently took you months to prepare or the programming codes that almost drove you into insanity. No matter what kind of game you made, no matter if it is inferior to other games, whether commercial or freeware, you always have the right to decide whether you want protect your games… provided, if all resources has been created solely by you, by your development team members, or by some other fellow you come to terms with creating resources for you.
The most feared piece of program by the developers around the GM community in the last 4 years is the so-called “GM decompiler”, If you’re not familiar with the word decompiler, well it is some program that is used to somewhat reverse the compiling process (compiling; which turns your game from a source file into an executable file). In other words, it turns an unprotected software back into its editable state, by doing so you can have access to everything as to how the game is made up, you can have access to every resources that the game used like programming scripts, sprites, images, background, sounds, music, etc. This means you can modify the game and make something new from it, but if the decompiled game is not made by you then you are considered doing something wrong, you are considered stealing someone’s work. Actually the creator of the GM decompiler stated that he intentionally made the program so anyone who unfortunately lost their lost the editable file of their game can use the decompiler to bring their games back into their editable state. But the program is powerful enough and can easily be abused to steal someone’s work.
Fortunately for those who are consciously obsessed about protecting their games against decompilers, well, GM decompilers are those kinds of program that needs to chase the most updated version of Game Maker itself… since every updates of GM contain some type of security enough for the decompiler creators to spend some more time to reverse engineer it. Now that Game Maker have accelerated its updates every year and applying some security efforts then GM decompilers will be hard to come by these days.
Another hacking tool that can be used to extract resources from your editable game files are what they called Memory Editors. These programs can access the memory in which your GM game stores temporary data which is its primary use (Allows for cheating in the game by for example freezing the value of your health bar in the game), basically GM games also stores in memory the scripts it uses, this is a very potential security hole as scripts can be modified, this means, you can reprogram the script and run it in the game, as a hacker you can conjure and command the game, you can do what you want, for example let the game executable extracts all its resources inside it.
Now let’s see these available tools we can use to protect our GM games today…
Ok, so how about those games made in previous versions of Game Maker? Fortunately, there is this Anti-Decompiler program which basically blocks the access of the notorious decompiler to the Game Maker executable files. It works by encrypting the game data using random keys (Also has an extremely small decryption time), moves game data to a random position, overwrites all version info with random data, integrates itself into the game EXE – doesn’t extract any DLLs, doesn’t save any temporary files. I used this on some of my GM programs on it does works to confuse the Decompiler effectively, making the decompiler completely unusable. Unfortunately, Anti-decompiler does not perfectly work with the most updated versions of Game Maker. For more details about Anti-Decompiler for GM please click here.
The GM Obfuscator
Apart from the Anti-decompiler, there is another program available to further strengthen your game file security. I introduce you the GM Obfuscator made by Schreib of the Game Maker Community. So what does obfuscation do? Obfuscation means the darkening or obscuring the sight of something, in other words, it is something applied to confuse someone trying to read the intended meaning of something, it tries to conceal the correct message rendering it unreadable. Now, there is a GM Obfuscator which works to take a Game Maker editable file (.gm5, .gm6, .gmk, .gm81) and spit out a new source with the code, resources and variables completely unreadable and in-understandable. Even sprites and backgrounds resources are obfuscated which is a great feature. One thing to note though is that this program does not protect your game against decompilers… although it doesn’t matter anyway, if people decompiled your game they will just end up getting an enigmatic version of your game’s editable file, it will gonna take a more experienced hacker to de-obfuscate it. For more information about GM Obfuscator please click here.
The Script Hider
Script Hider is an extension module (.dll) which you can use like a plugin in your GM games. You can try this one if you want your game to have some security against memory editors, which means you can avoid cheaters and resource thiefs. I haven’t tried this one personally, but I think it’s worth a try. Made by 39ster who brought the famous 39dll. To read more specific details about the Script Hider please click here.
Commercial Software Protection Systems
If you are really investing from your games to make money for you, these can also mean you are far more serious about the anti-piracy and anti-cracking of your games. The more popular your game is the more potential hackers it can attract… in that case, you might need to invest on protecting your game software. There are several commercial software protection in the market but these 4 are the ones on the list.
- Armadillo Software Protection : A powerful software protection system. It wraps around your program like an armored shell, defending your work from pirates and program crackers with state-of-the-art encryption, data compression, and other security features. It allows you to design and add a complete software protection andregistration-key system to your existing programs in five minutes or less, with no changes to your program’s code! And it works with any language that produces a 32-bit Windows EXE file.
- Themida ® : Advanced Windows software protection system, developed for software developers who wish to protect their applications against advanced reverse engineering and software cracking.
- Obsidium Software Protection System : Obsidium is a feature-rich software protection and licensing system that was designed as an affordable and easy to implement, yet reliable and non-invasive way to protect your 32- and 64-bit Windows software applications and games from reverse engineering, unauthorized modifications (“cracking”) and redistribution (“software piracy”) while providing a secure and flexible licensing/registration system.
- EXECryptor : is a software protection system for protect programs from reverse engineering, analysis, modifications and cracking. EXECryptor has powerful anticrack, antidebug, antitrace and import code protection features for stop the latest cracking software. and crackers issues.
- eXPressor : Software Protection System and PE Compressor used as a compressor this tool can compress EXE files to half their normal size. Once compressed, the files execute just like normal. As a protector It is designed to protect applications against crackers; also can help developers in creation of uncrackable registration keys, and implementation of trial version for protected software.