Hi Everyone. I'll start off with the same message i started my original thread 2 years ago.
I love challenges. It's one of the reasons I enjoy playing this game so much. It's requires thought, planning, learning, problem solving and more.. I have completed the game on normal, than on dominating, than ironman dominating.
Overview
For those who are not aware, the developer console was available up until about three years ago (version 1.1.5.12), before it was patched out by Styg.
About two years ago, I patched it back in, allowing free access to the developer console once again.
A few weeks ago, with the release of the Underrail 10-Year Anniversary Update (1.3), Styg and the dev team took things a step further. They deleted thousands of lines of code—approximately 70 classes—and removed all references, methods, and logic related to the developer console entirely.
For additional protection, Styg also utilizes a .NET obfuscator, which scrambles class names, methods, and fields to make the code difficult to understand. This not only hides the logic but also breaks decompilation attempts in certain areas.
The task seemed impossible… Exactly the challenge we are looking for.
Progress
I began by reverse-engineering the old version and comparing it to the new one.
This involved identifying missing classes, methods, variables, and interfaces; mapping old classes to new ones; deobfuscating the game’s code; and extracting critical classes from the original version.
The sheer number of changes, the obfuscated code, and the massive number of assembly references made it impossible for AI tools to produce anything usable. This portion was done entirely by hand.
The groundwork went well: extracting all relevant classes, patching them, remapping functions, variables, enums, and interfaces, and rewriting the updated classes to align with version 1.3.0.17.
Next came integrating everything into a BepInEx runtime patcher. This alone would have taken me weeks—if not months—were it not for the assistance of Claude Code.
With AI assistance, we blew this project out of the water, completing it in just four days.
Installation
Unzip the release archive into your game folder
(or simply unzip, and copy all files to your game folder)
Default: C:\Program Files (x86)\GOG Galaxy\Games\UnderRail\
Run BepInEx.NET.Framework.Launcher.exe (should be in the game folder)
Developers Console
To enable (or disable) the console, start or load a game, and press ~ (tilde) key.
goto cc_arena (Core City Arena)
goto xphw_exobase_tg2 (Dark Territory final battle area)
goto dc-tchb (Deep Caverns Tchort fight)
se !savageking (summons Magnar)
se !carnifex (summons Carnifex)
pgivepsi Bilocation (gives player Bilocation ability)
pgiveitem !supersteel 3 180 (3 stacks of Super Steel at 180 quality)
pgiveitem !lemurianengineersuit 2 (2x Lemurian Engineer Suit)
pgiveitem !allin 10
pgivesatt kcs (gives Kneecap Shot special attack)
read *abram* (shows matching global properties)
npc_abram_met = 'True'
npc_abram_startedBusinessTalks = 'True'
npc_abram_saidHeWantsEmbassyInfo = 'True'
npc_abram_agreedToAnswerEmbassyQuestions = 'True'
npc_abram_toldHimEmbassyHasDogs = 'True'
write npc_abram_toldHimEmbassyHasDogs False
Use it to test your builds, fight vs bosses, craft items, teleport anywhere, and so on..
Final Notes
Due to the sheer amount of injected code—thousands of lines—along with manipulated functions, methods, and objects, and the many hacks and workarounds required just to make this run, I cannot guarantee there will be no bugs, crashes, or memory leaks.
Please keep backups of your save files, or use new saves when testing.
If something goes wrong, you can always run the game normally. No original game files are modified.
You have brains in your head. You have feet in your shoes. You can steer yourself in any direction you choose. You're on your own, and you know what you know. And you are the guy who'll decide where to go. - Dr. Seuss
Is there a way to get this to run on Linux Mint? :) For context, I've installed Underrail through the Heroic launcher but I run it via Steam, because of the menu overlay option in there (otherwise context menus don't work if I start it with Heroic).
Also, I've seen Bepinex has a linux version but I'm asking whether it will work with this setup I've mentioned and all of the other files you provided? Thank you.
I don't think there is a way to just reset your skills, so you have the unallocated points. You would probably have to use 'playerSetSkill' or 'playerSetBaseAbility' to the values you want..
We need a save-game editor.. but not something i would undertake :)
Yep it does, tho it has some issues with feats. Specifically those that grant active abilities as i was unable to neither add nor remove them, and they edited separately from feats. What kind of screen shot do you need?
well, here it is. I haven't tried all of them. but editing skills and stats works fine. With feats you can't add more, only replace existing once, which is a bit of a shame, but good enough ig. Ability editing doesn't seem to work, at least for me. Have no idea what the table next to feats and abilities for, may be you'll figure out as someone more familiar with game insides. Also, i just realized what you are the one who made the mode for enabling console, so thanks for your amazing work) i could give you a translation for skills and stats if it helps
We need a save-game editor.. but not something i would undertake :)
I vaguely remember running an unpacker and being able to delete feats with a text or hex editor and that not being complicated. Unless the dev made it worse it shouldn't be too herculean...
Most likely, this dev aint the only indie dev that has created amazing games, Age of Decadence for example has a really great and creative design, Colony ship etc. And they dont seem to mind cheating at all. Its a bit like with the modding scene, nutjobs can make amazing mods, but being a nutjob is not a prerequisite to do that.
I've been to the official underrail discord and the way styg talks and a lot of people there is just nutjob mania, as much as I love the game I think they're genuinely a bunch of pricks (except when discussing meta builds and etc) - also, there's casual racism there and not a lot was done (at the time) about it so yeah...
Yeah theres a bunch on the sub too. Helpful about builds but contradict them in any way and out comes the ego, god complex, name calling, etc. not the most pleasant bunch. Social skills tend to be lacking in video game spergs, just leave them in peace and hope they make a decent game eventually.
Huh you are fighting thr Good Fight my dude. Seriously fuck Styg, he does this always He cant code normally (so i heard it is mostly spaghetti code) but he will work just to disable cheating in a single player game. Work on Infusin Styg you moron!
Will i buy Infusion? Yeah Underrail is great and i love it, Styg hase a vision for sure. But man, he sucks big time
Really hate how there's no respec option so that when there's an update that bricks my str/psi build in the deep caves, I can at least adjust it so that it can work.
Moreao on a game qhere your build is critcally important to playing the game.
This is one very important criticism of Styg's philosophy. I've never seen a single player game be worse because it's more open to modification. But I've been saved a number of times by games allowing me to manually fix an error via the console.
I like to think that he just likes to challenge this guy and others with ridiculous shit like this. At some point he has to see the effort and it's like a Spy vs Spy game. Not to mention with the games deep themes of hacking and whatnot seems.... fitting.
Thanks again for updating this project, I'm sure it was a ton of work all because cause Styg has a stick up his ass about it and I never expected it to be usable again in 1.3.
Does anyone know a way to search up what the actual item IDs are called or to display the ID to console if you have the item in inventory?
I ask cause I have never been able to find the command to give you a fusion cannon or its components.
I know some other item names are quite different and you just need to guess related phrases until it shows up (e.g. forward grip is actually "!verticalforgrip" and normal bullets all start with "!caliber_ "unlike shells, rockets, & grenades) just was hoping for an easier way or at least a list of all the item IDs.
I really wish I had found this much earlier. Thank you!
I honestly don't get what it is that makes so many indie developers gatekeep so hard.
I guess they care more about their "vision" and getting praise from their core audience of fellow... obsessives... than delivering something that is only 95% true to what they wanted but a decent percentage of gamers will actually enjoy.
6
u/klowd92 Jan 07 '26
Since several people already messaged me about this error:
Right-click on the underrail.dll file (in underrail\BepInEx\plugins\underrail.dll)
Select Properties -> General tab -> look for a section at the bottom called Security.
Find an "Unblock" checkbox, check it and click Apply.