goatfungus / NMSSaveEditor

No Man's Sky - Save Editor
1.87k stars 238 forks source link

So 4.0 Compatibility? #657

Closed jaqdaw closed 1 year ago

jaqdaw commented 2 years ago

So because of the inventory changes in 4.0 I had a look-see, started NMSSaveEditor and saw warnings against the save files in the DOS box ...

"WARNING: cannot read file metadata: mf_save5.hg"

Didn't try to change anything obviously. Will you be updating NMSSaveEditor please?

crazyisco commented 2 years ago

i'm also waiting for it!

JoseGomezCereto commented 2 years ago

Yeah, BC 4.0 almost destroyed my savegame I was willing to do a fresh start and stuff, but the thing is I won't be able to attend to Twitch Drops and I would like to add them to my account. Let's wait until goatfungus update the NMSSaveEditor.

phendrena commented 2 years ago

I would assume our reliable friend will be updating the save editor.

Consider this polite request to those that are curious about updates to the save editor....

Let's not harass, bug or pester GoatFungus by constantly asking when it'll be updated. It will take time, a few days, a week, longer maybe. We don't know how much has changed in the file structure or the games code. We don't know what GoatFungus is doing in the real world, or what their personal situation is.

Let us all be relaxed about this and wait, patiently and with respect.

Edited 07/10/22 18:!3 - Added the text in italics.

jdm12983 commented 2 years ago

I wouldn't call it harassing just to ask -- but I am wondering if it will get updated at all. Seeing as the editor hasn't been updated for the last few patches.

jaqdaw commented 2 years ago

I did ask politely I think :-) tbh I've only been using it for the last few weeks so I've no idea what the update cadence is. I'll be patient.

phendrena commented 2 years ago

My comment was poorly worded, and I apologise.

It isn't directed at anyone and is more of a general statement in anticipation of the usual flow of "wHen UPdaTe" requests that will arrive. Many people are impatient and can be rather demanding and frankly I am amazed @goatfungus has kept going at times when people pester him as they can do.

Mike-Blackwell commented 2 years ago

Guy's the update just dropped... to Brendon's defense he has updated the SaveEditor for every NMS update, as was mentioned earlier, we will have to be patient, a new update will happen.

Unrelated Note: the new format kind of sucks (MTC) and I also noticed that the Suit expansion modules have disappeared from my inventory which means I either will have to do a bunch of dupe glitch to get multiple bites at the vendors suit expansion option (Nexus) or wait for the new SaveEditor... all of the technologies in your general storage have been converted back to modules and will have to be reinstalled but the tech overload is still in effect....

bleep13 commented 2 years ago

""time... is on my side. yes it is." Brendon has a pretty good track record. "i just can't wait."... but i will!

goatfungus commented 2 years ago

So update has just dropped, and it contains some pretty significant changes to the save format itself. Reverse engineering this will be pretty complicated, so I'm not sure how long it will take to get a working version ready.

At the moment, only older saves can be viewed/edited, and once you open them in game they get saved in a new format.

areithropos commented 2 years ago

Oh yes, it took time in the past and now they changed quite a bit. No hurry, it was no need as far as I know for the past updates, the editor does not need an update every time a small update arrives, was my assumption correct?

Oh, I did find an issue with the freighter modules, but I forgot to report it, well, I wonder if they changed something and have to look again.

Anyway, thank you for your lasting development of this editor!

metalgearsvt commented 2 years ago

Hey man thanks for your work on this, I've been loving using it to fix the oddities I've lost to multiplayer and fixing random glitches and stuff. Really helped me enjoy my first playthrough with minimal frustration.

david-ford commented 2 years ago

I imagine this one will take a bit longer to update. It looks like they made a lot of changes to the save structure, so parsing that out is going to need more than the usual update of just changing a few mappings. Also, they changed max size on inventories, inventory structure, etc, so there's a few things that will have to change in the UI as well as the validation for those inputs. I don't know what goat's schedule looks like, but if I were to hazard a guess at a couple hours a night working on this update, I wouldn't expect to see an update before next week.

JonDum commented 2 years ago

@goatfungus do you have a donation site? Would love to pitch in a few bucks for your effort. I'm sure others would too

goatfungus commented 2 years ago

Ok, so a bit of a status update....

I have managed to get a bunch of things working in the save editor for version 4.0, however there are still a few issues, notably:

This process is going a lot slower than I had hoped :(

NVMdamit commented 2 years ago

i have read comments on steam community so i thought i will log in the game without saving just to check on my stuff, i found that my game is a mess and they removed the general storage tab that i was holding a lot of stuff in it, not knowing that there is an autosave feature on, my save editor cant see the save files anymore. waiting for the guys to update the save editor, ty guys.

irateSquirrel commented 2 years ago

Very excited for the update but also, no pressure. With all the buzz and people being annoyed about the inventory, there is also the risk that they'll tweak some things.

JB2021-81 commented 2 years ago

All of my ships are nerfed at 100 LY of travel, the only way to get around is my freighter. Anyone else want this save editor as badly as I do?

JonDum commented 2 years ago
  • The mf_saveX.hg file has been completely changed to a new encrypted binary format which I haven't figured out yet.

If it's actually encrypted we're fucked, sans knowing the encryption method and key. Hopefully it's just a binary json format.

I tried several to help narrow it down:

Binary JData (bjd): Nope bjdata: Unrecognized type tag � at offset 0. BSON: Nope BSONError: buffer length 360 must === bson size 259319263 CBOR: Nope Error: Unknown fixed value: 5 MessagePack: Nope Error: BUFFER_SHORTAGE UBJSON: Nope Error: Cannot parse unknown type marker '223' (decimal)

So no luck there.

Dragonsire commented 2 years ago

The regular hg data is the same format, just compressed with new stuff Example save16.hg, don't recall what the mf_save do...just time stamp and verification aren't they?

merlokk commented 2 years ago

for me, all the hg_* files have 360 bytes size. it strange)

Mike-Blackwell commented 2 years ago

@goatfungus do you have a donation site? Would love to pitch in a few bucks for your effort. I'm sure others would too

@JonDum you can donate via the link is Patreon: https://www.patreon.com/goatfungus, I've donated as this app and Brendon's efforts makes NMS much more fun and useful for those of us who use Blender.

goatfungus commented 2 years ago

I have just released a new version, 1.11.0 which should make the editor work on NMS 4.0 saves now.

However, since this is a very complicated save format change, I suggest you back up ALL of your saves before using this.

EDIT: For those who are wondering, I have changed the editor to ignore the manifest file for now, and changes to the save file appear to work fine without touching it. This is only a temporary measure hopefully.

goatfungus commented 2 years ago

If it's actually encrypted we're fucked, sans knowing the encryption method and key. Hopefully it's just a binary json format.

The old format was encrypted, but the key and algorithm were worked out a long time ago. This new format is most likely encrypted as well, since subsequent saves in game produce a completely different output. I'm guessing it's a similar hash to the last version, just with a lot more data in it.

steve02081504 commented 2 years ago

I've heard that there are tools on github for ai or algorithms to deduce encryption methods and decryption keys, wonder if this would help

JB2021-81 commented 2 years ago

@goatfungus I Just DL'ed the new editor update, it doesn't see my saves, just shows EMPTY, hmm.

Edit, after selecting backups the save editor works now. IDK

olderbuffalo commented 2 years ago

@goatfungus I Just DL'ed the new editor update, it doesn't see my saves, just shows EMPTY, hmm.

Edit, after selecting backups the save editor works now. IDK

I have trouble opening it on any 4.03 patch saves from today. It opens the 4.00 games fine. They show as empty like you show.

BrickyMouse commented 2 years ago

I have trouble opening it on any 4.03 patch saves from today. It opens the 4.00 games fine. They show as empty like you show.

Same.

olderbuffalo commented 2 years ago

I have trouble opening it on any 4.03 patch saves from today. It opens the 4.00 games fine. They show as empty like you show.

Same.

I imagine there will be another patch pretty soon anyway. The tech inventories can be upgraded 99 slots in 4.03. Unless that was an intentional change over the betas from yesterday, that's gonna need patching quickly before people start using the 99 slots.

tombomb commented 2 years ago

When running on my save I get the following in the console

Initializing environment... Starting Editor... Reading metadata for accountdata.hg Reading metadata for save.hg Reading metadata for save2.hg Reading metadata for save3.hg Reading metadata for save4.hg Reading metadata for save5.hg Reading metadata for save6.hg Reading metadata for save7.hg Reading metadata for save8.hg Reading metadata for save9.hg Reading account data... using name mappings: NMS 4.0 (account) Loading saves for Slot 1... Reading save file... Slot: Slot 1 - [EMPTY] Filename: save.hg using name mappings: NMS 4.0 (savegame) WARNING: name mapping not found: SQw WARNING: name mapping not found: Naj Finished. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at nomanssave.structures.q.<init>(Unknown Source) at nomanssave.structures.w.<init>(Unknown Source) at nomanssave.structures.w.o(Unknown Source) at nomanssave.Application.s(Unknown Source) at nomanssave.Application.e(Unknown Source) at nomanssave.Application.a(Unknown Source) at nomanssave.I.setSelectedItem(Unknown Source) at java.desktop/javax.swing.JComboBox.setSelectedItem(JComboBox.java:579) at java.desktop/javax.swing.JComboBox.setSelectedIndex(JComboBox.java:624) at java.desktop/javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:907) at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:298) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6635) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) at java.desktop/javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(BasicComboPopup.java:551) at java.desktop/java.awt.Component.processEvent(Component.java:6400) at java.desktop/java.awt.Container.processEvent(Container.java:2263) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

image

The only tab that lights up is account.

I'm not sure if you do any logic on checking to see if people are over the max slots but as mentioned above, a lot of my slots are currently over max, went around unlocking all sorts of slots and then read the patch notes and noticed I had way to many. not sure if that's what's throwing the errors.

Edits were me trying to do block code like on discord, guess I don't know how to do it on GitHub

dfgdgdgfd commented 2 years ago

@goatfungus I Just DL'ed the new editor update, it doesn't see my saves, just shows EMPTY, hmm. Edit, after selecting backups the save editor works now. IDK

I have trouble opening it on any 4.03 patch saves from today. It opens the 4.00 games fine. They show as empty like you show.

How did you manage to get 4.00 in the first place, steam? Gog galaxy, which is my go-to for older versions (I back them up) only has 3.99 and 4.03 installs.

tombomb commented 2 years ago

Side note, dont forget to update the readme title =p

Bugster21 commented 2 years ago

Everything works for me (ps4/5) 😁😁

Freaking nice job @Goatfungus

Side question Squadron is grayed out for me how do i "ungray" it ? If anybody knows 😁👍

cbfnmsteam commented 2 years ago

My account data cannot be opened . I play nms on steam .Has anyone same with me?

FabreFactionIRL commented 2 years ago

Hi, I created an account on GitHub so I can comment on this awesomeness.
I discovered NMS Save Editor 18 months or so ago and it has been invaluable to my enjoyment of the game and de-grinding a lot of elements for me.

I'm playing NMS on Steam on PC, and I downloaded the updated NMS Save Editor about 20 minutes after it was posted, thanks @goatfungus. I tried the automatic update through the app, but it didn't seem to work correctly, I couldn't see my 4.x saves, and it threw up a few errors in the backgorund DOS window. So I downloaded the EXE from GitHub and installed it clean and fresh. This seemed to work fine and I could access and edit my 4.x saves without any problems. I did have a similar challenge to @cbfnmsteam and in order to access the Account Tab I needed to close Steam from the system tray, then lauch the editor, which seemed to work fine.

I've maxed out my tech and cargo space for everything without any problems and spent a little time putting my tech back and it all seem to work fine. I've saved, edited, saved, edited a few times since, and everything seems to be fine, even with the 4.03 update happening during my game time. So maybe try a clean fresh install of NMS Save Editor @tombomb might sort thingfs out for you. I've not had any errors since doing a clean install.

Also, I hadn't doubled up the inventory items across tech and standard inventory in the pre 4.x versions, so I'm not suffering from the underpowering that many in the NMS community are complaining about.

Another awesome update to the editor @goatfungus and thanks for releasing an update so quickly, very impressive. When I get a job I'll drop something in your Patreon.

Take it easy all............................................... FF

EDIT: spelling correction

goatfungus commented 2 years ago

I have added Relaxed and Custom game modes to the editor now, so some of the common errors should now be resolved.

FabreFactionIRL commented 2 years ago

I have added Relaxed and Custom game modes to the editor now, so some of the common errors should now be resolved.

I've clean installed the Save Editor (download the EXE and run it, I use a custom install location). All seems to work fine. All tabs are available and working as far as I can see. I've made changes to inventories and other elements, such as forgetting all Known Words and all seems to be fine. I've restored a backup and saved over the live save file successfully (so I magically remembered the words I'd forgotten when I was testing, etc. :)) All looks groovy to me. Thanks @goatfungus

JB2021-81 commented 2 years ago

I have added Relaxed and Custom game modes to the editor now, so some of the common errors should now be resolved.

Thank you GF! You are awesome! I can finally resize the wonky inventories! (My biggest peeve about this update)

jeconneely commented 2 years ago

I have added Relaxed and Custom game modes to the editor now, so some of the common errors should now be resolved.

Thank you so much for updating!!!!! It's working great for me!

JB2021-81 commented 2 years ago

I noticed there is a limit on how big an inventory you can have, so let's say you max out all of them from the drop-down menu, then that penalizes you by not allowing the max 64 tech slots, and as of right now the app won't let me shrink the inventory slots for cargo. I want more tech slots for sure, I have more cargo space than I know what to do with. I've tried resizing the inventory, but it resets to the max amount. That might be a bug in the app or the game IDK., Just thought I would point this out, you have to consider a trade off in this game now, tech slots are infinitely more important than cargo slots.