Page 1 of 1

How can I circumvent a game crashing when changing a value?

Posted: Sun Oct 11, 2020 7:55 pm
by nolljd
Hello,

I am a complete CE novice -- I've used the program for years to change values in simpler games, but otherwise my knowledge is superficial.

I am trying to edit my players rep on "Descenders" for game pass, but when I do so, the game crashes stating "Unauthorized modifications detected. Closing game."

I know that server sided values cannot be changed, but I don't think this value is server sided. Another cheating website that I shall not name has a trainer for the game that modifies the rep. Why can't I?

I know, there are a ton of CE resources at my finger tips that could surely help, but it's hard to find anything that might actually help. Maybe hacking this game is just too ambitious for someone of my skill set. Does anyone have any advice?

Re: How can I circumvent a game crashing when changing a value?

Posted: Fri Oct 16, 2020 3:58 pm
by Geordan9
With a quick glance, it's a Unity game written in C# and runs with Mono. C# can easily be decompiled to code close to the source. The main code for the game can be found in the "Descenders_Data\Managed\Assembly-CSharp.dll" file. You can also see that through Cheat Engine's Mono features and dissect the code, navigate through the classes, and jump to the methods. Something else to note is the code is obfuscated so certain methods and variable names are random characters. A nice tool you could use to decompile the dll and view the code would be "dnSpy".

So your main tools would be Cheat Engine's value scanner, debugger, and Mono features with a separate software for decompiling.

I would imagine the main code you'd want to be looking at would be the methods in the classes of the "CodeStage.AntiCheat" namespace. So it's safe to say value scanning alone won't help in solving the issue since you'll want to try and make a script to patch the code that checks for modifications.

I imagine the trainer has been designed to patch this stuff or modify other values related to the way the AntiCheat works. This is all assumed by my theory of it being handled by the "AntiCheat". Up to you if you think you're ready to jump into this kind of stuff.