In late 2018 I started creating my own Garry’s Mod DRM to replace the terrible Lua-based DRMs created for the game. Previously developers were using ScriptEnforcer before it’s demise, so another DRM by the name of SecureGMod took its place. Unfortunately, both had severe issues, making it hard for developers to justify paying for or using them.
ScriptEnfocer was the first well-known DRM created by Phoenix and well used by the Garry’s Mod developer community. A few years later, the company suddenly shut down with no warning and caused a huge uproar and dislike for DRMs by the Garry’s Mod community.
A few weeks later, after the demise of ScriptEnfocer, a new DRM named SecureGMod was announced to take its place. Boasting new features and better security than its predecessor, it was gaining support. Unfortunately, it had a few massive flaws that prevented it from being well adopted. One of them was Lua code would break a lot, which caused end-users and developers plenty of headaches; the other was how it handled licensing and server activations.
Originally I started this as a proof-of-concept and something for my portfolio; however, I decided to go all out and make it a full-blown production-ready-service with all the backend infrastructure to support thousands of servers and requests. Going this route was to test my skills and grow them while making something to replace SecureGMod since I had a few interested people.
I created Neutronium with a few key features in mind. It should never allow the user to capture the responses by manipulating the Lua code. It should keep the Lua scripts in memory long enough to inject it into the Lua engine, and last but not least, it needs to be dumb enough for the average end-user to understand and utilize.
Neutronium uses a C++ Dynamic Link Library (DLL) compatible with UNIX/Linux and Windows Operating Systems to allow for Linux or Windows-based server hosting usage.
Aside from being cross-platform ready, I also wanted it to be usable with other games like Onset so that developers or end-users could use the DRM for other games.
My lack of math skills only hinders my fascination with Cryptography. However, that doesn’t stop me from making a 500kb fort-knocks. I created Neutronium with plenty of things to make decryption or capture of the scripts hard; no DRM will ever be un-crackable, but I can sure as hell make it unrelenting and time-consuming!
Now to what makes Neutronium better than ScriptEnfocer and SecureGMod.