[Tool] GD save file editor

I’m always hesitant to use community executable tools since no one is accountable if it turns up being malicious. It’s not that I think that developers of these tools could do it intentionally, but there are risks like, for example, accounts being stolen and posts modified to point to malicious tools instead of clean tools. That being said, I really like this tools since I can use virtualization and shared folders to run it on guest Linux environment.

If there is interest, I could write up a guide how to set up virtual machine and set up the game folders so that they are accessible to the tool inside the virtual machine.

I like the functionality of the tool as well, seems very capabable. The latest addition of find command saves a lot of time.

I totally agree. It takes quite a bit of trust to run some random exe posted on some random corner of the internet. The source code for the editor is available here: https://github.com/Odie/gd-edit

The repo receives very few mentions here simply because I don’t think anyone would be interested. I had imagined people would rather get back to playing the game. :slight_smile: The repo also doesn’t make any effort to explain how to build or run the tool from source. If you’d like, I can add better dependency and build instructions.

That being said, I really like this tools since I can use virtualization and shared folders to run it on guest Linux environment.

If there is interest, I could write up a guide how to set up virtual machine and set up the game folders so that they are accessible to the tool inside the virtual machine.

Yeah, why not? I think that would help people who are security minded.

I like the functionality of the tool as well, seems very capabable. The latest addition of find command saves a lot of time.

Please do let me know about any pain points you have in working with the editor! I’m always happy to add new features to make it easier to use. :slight_smile:

Hey!

I was wondering if you can use the program to change your reputation with the different factions in the game, both positive rep with the friendlies and negative rep to get to the nemesis bosses.

You sure can!

Here’s a short blurb on what you’ll want to do:
https://odie.github.io/gd-edit-docs/faq/#how-to-i-change-my-faction-alignment

You’ll eventually want to enter something like:


set faction-values/6/faction-value 24990

Of course, if you know the faction you want to change the alignment for, you can also use the “find” command first.

Thank you very much sir :slight_smile:

Not sure what has changed - but gd-edit.exe is now hitting a windows defender wall. Catching it as Trojan:Win32/Fuerboos.B!cl

Howdy!

That sounds bad. I always build the binary in osx, so I’m not sure how a piece of windows malware could have made it into the binary. It might be a false positive, but I’ll investigate!

Thanks for letting me know!

Hi Wylker,

I looked into this briefly. As far as I can tell, both Avast and Windows Defender did not find any problems with the binary on my machine.

You can also see a virus scan report of the binary here:
https://www.virustotal.com/#/file/3108e5d3d3d60b6a5790619ab315349201cee077fa97bf21b01c9fdf09b89076/detection

The latest binary gave the following checksums:
sha-1 “6d106c66fc7416d9d2cee024c66dde16bae40449”
sha-256 “3108e5d3d3d60b6a5790619ab315349201cee077fa97bf21b01c9fdf09b89076”

Please check the SHA checksum of your copy. If you have 7zip installed, the context menu shown when you right click on the editor binary should have a “CRC SHA” menu. Choose the “SHA1” (or “SHA256”) item to have 7zip compute the SHA checksum of the file for you.

If the your checksum doesn’t match the checksum posted above, that might mean:

  • you don’t have the latest version yet
  • some program somewhere has secretly altered the program after it is downloaded

In either case, you’ll want to re-download the editor using the link in the first post, check the checksum again before attempting to run it.

Please do let me know how this turns out. =)

Have the same problem Odie: Trojan:Win32/Fuerboos.B!cl detected by Windows Defender and download blocked.

Yikes… do you have the sha256 checksum on that file? :frowning:

I cannot dowload the file, it’s instant blocked and deleted by Windows defender.

And i need 3 message in this forum to send you a PM with the possible explanation… or post links.

Oh wow. I hadn’t realized windows defender won’t even let people download the file. I’m not sure how to proceed here. I’ll look into disabling avast, I guess? Presumably, windows defender would kick in and I will be able to see the same quarantine messages. I guess there would be some magic button that will then allow me to submit the exe for analysis.

https://www.microsoft.com/en-us/wdsi/filesubmission - maybe you could submit here. I send a PM to you for the problem, here’s the link to a conversation on the same issue: https://github.com/crazy-max/WindowsSpyBlocker/issues/82

Thanks for all the useful info, Ogremoch! I really appreciate all the help!

I’ve submitted the binary for malware analysis.

Looks like the file has been scanned automatically and is just waiting for someone at MS to take a look at it.

Hope to hear back from them soon!

Quick update. The binary has now been declared as “not malware”.

Please let me know if windows defender is still putting the file in quarantine.
Thanks!

It works. Good job!

Odie, got this error for every items i try to put in inventory. The inventory 1 is empty right now. Can’t find a solution.

Caught exception: For input string: “Siegebreaker”
java.lang.NumberFormatException: For input string: “Siegebreaker”
at java.lang.NumberFormatException.forInputString (:-1)
java.lang.Integer.parseInt (:-1)
java.lang.Integer.parseInt (:-1)
gd_edit.commands.item$set_item_handler.invokeStatic (item.clj:500)
gd_edit.commands.item$set_item_handler.invoke (item.clj:492)
gd_edit.command_handlers$set_handler.invokeStatic (command_handlers.clj:706)
gd_edit.command_handlers$set_handler.invoke (command_handlers.clj:660)
gd_edit.core$fn__14133.invokeStatic (core.clj:62)
gd_edit.core/fn (core.clj:62)
gd_edit.core$repl_eval.invokeStatic (core.clj:185)
gd_edit.core$repl_eval.invoke (core.clj:149)
gd_edit.core$repl_iter.invokeStatic (core.clj:205)
gd_edit.core$repl_iter.invoke (core.clj:199)
gd_edit.core$repl$fn__14217.invoke (core.clj:213)
gd_edit.core$repl.invokeStatic (core.clj:212)
gd_edit.core$repl.invoke (core.clj:208)
gd_edit.core$start_editor.invokeStatic (core.clj:510)
gd_edit.core$start_editor.invoke (core.clj:502)
gd_edit.core$_main.invokeStatic (core.clj:537)
gd_edit.core$_main.doInvoke (core.clj:519)
clojure.lang.RestFn.invoke (RestFn.java:397)
clojure.lang.AFn.applyToHelper (AFn.java:152)
clojure.lang.RestFn.applyTo (RestFn.java:132)
gd_edit.core.main (:-1)

Hi there,

What’s the full command you entered?

set inv/1/items Mythical Siegebreaker 100