Code Monkey home page Code Monkey logo

zencq / nomnom Goto Github PK

View Code? Open in Web Editor NEW
346.0 35.0 33.0 4.39 MB

NomNom is the most complete savegame editor for NMS but also shows additional information around the data you're about to change. You can also easily look up each item individually to examine its attributes, independently of a savegame, or get other useful information that are not related to a specific savegame (but enhanced if one is loaded).

Home Page: https://zencq.github.io/NomNom/

License: GNU General Public License v3.0

no-mans-sky savegame save-editor savegame-editor nms hello-games nomnom

nomnom's Introduction

NomNom

Maintained Release Release Date Downloads

Platform .NET 6 C# 10

Discord Server Supported by the No Man's Sky Community Developers & Designers

Donate via Buy Me a Coffee Donate via GitHub Sponsors Donate via Ko-fi Donate via Patreon Donate via PayPal

Table of Contents

Introduction

NomNom is a savegame editor for No Man's Sky, but also shows you additional information around the data you are about to change. You can also easily look up each item individually to examine its attributes, independently of a savegame, or get other useful information that are not related to a specific one (but enhanced if one is loaded).

You will most certainly notice a similarity to the editor by goatfungus but when this project started it was the only one working and the general layout was good, so why reinventing the wheel? But there are features missing I would like to have and (in my eyes) bad usability in some areas. I also wanted to have a place where I can directly see how good my stats are, without searching through an online wiki or such. Therefore I started my own project for fun and here we are.

Features

The features of NomNom can be divided into the different main parts you will see below. A detailed list can be found in the FEATURES file.

  • Manager Manage your saves!
    • Automatic backup and recovery (in case you screw something up).
    • Save your save as human-readable JSON.
    • Copy, move, and swap slots to another.
    • Transfer your save to another platform you own the game on.
    • Delete your save.
  • Editor Edit your save for your needs!
    • Ability to edit cross-save rewards from Expeditions, Twitch Drops, Titles and more.
    • Ability to manage fleets, change data values like currencies and stats, and organize inventories.
    • Ability to fast travel to any system you like and trigger space battles.
    • Ability to customize appearances.
    • Ability to edit your knowledge and recorded experiences.
    • Ability to edit the raw JSON (for advanced users).

Manager Starship Manage Fleet Base

The images are from version 4.00.0.31-beta.1. More and maybe newer can be found here.

Getting Started

Compatibility

The latest version of NomNom is built with Omega 4.50 in mind. Previous versions are compatible with Beyond 2.11 and up. If you use it with a game version branch above (e.g. 5.00), things should work as usual in most cases but there can always be a breaking change.

Each version is properly supported with its own set of available items and features.

Each platform has anchor file patterns to check whether it is worth to look further into the selected directory. This must be in or one level below the selected one.

  • GOG.com (Windows PC)
    • Location: %AppData%\HelloGames\NMS\DefaultUser
    • File Patterns: save*.hg
  • PlayStation 4
    • File Patterns: memory.dat, savedata*.hg
    • Notes: There are a few options to do this. The only one that does not require homebrew is SaveWizard. Two other tools that are confirmed working are Save Mounter and Apollo but require homebrew. Results of other tools may or may not work but the code is as generic as possible.
  • PlayStation 5
    • Notes: This version of the game is not supported due to restrictions on the console itself. By playing the PlayStation 4 version on it, you can still save edit with a few additional steps.
  • Steam (PC)
    • Location
      • Windows: %AppData%\HelloGames\NMS\st_<SteamID>
      • SteamDeck: ~/.local/share/Steam/steamapps/compatdata/275850/pfx/drive_c/users/steamuser/Application Data/HelloGames/NMS/st_<SteamID>
      • macOS: ~/Library/Application Support/HelloGames/NMS/st_<SteamID>
    • File Patterns: save*.hg
  • Microsoft Store (Windows PC)
    • Location: %LocalAppData%\Packages\HelloGames.NoMansSky_bs190hzg1sesy\SystemAppData\wgs\<XboxID>_29070100B936489ABCE8B9AF3980429C
    • File Patterns: containers.index
    • Notes: Reloading of modified saves while the game is running does not work.
  • Nintendo Switch
    • File Patterns: manifest*.dat
    • Notes: To get your saves you need homebrew software on your Switch. EdiZon and JKSV are confirmed working. Results of other tools may or may not work but the code is as generic as possible.
  • Xbox One/Series X|S
    • Notes: Not directly supported but can easily achieved with cloud sync via the Microsoft Store. The synchronization is triggered short after you close the game (no need to load a save).

Requirements

You just need to install the .NET 6 Desktop Runtime and that is it.

Download

Instructions

GUI

  1. After downloading and extracting the zip file you'll find a few files. All you need to care about is the executable (NomNom.exe) but new folders may be created at runtime (e.g. for backups) that will become relevant to you.
  2. You may want to create a shortcut to the executable for easier access.
  3. As the tool includes an automatic backup functionality you don't need to do it manually but if you want to be absolutely save, do it.
  4. At first start the tools locates your saves at the default location of each platform but if that fails, you have to select it manually.
  5. Select a slot.
  6. Start tinkering!
  7. Guide and Catalogue will work without loading a save.

Versioning

The versioning is oriented on the game version itself:

  • Major mirrors the games major version.
  • Minor mirrors the games initial minor version of named updates (e.g. Synthesis 2.20 or Outlaws 3.85).
  • Patch includes new features, bug fixes, updated game assets, and such beside the named game updates.
  • Revision serves as public release counter.

Changelog

The complete history can be found in the CHANGELOG file.

There is also a ROADMAP file with things planned for the future. It's not set in stone but you will get an idea what is coming next.

License

This project is licensed under the GNU GPLv3 license - see the LICENSE file for details.

Contact & Support

If you like NomNom and want to support me in its further development, you can do so here on GitHub, on Buy Me a Coffee, Ko-fi, or Patreon or via PayPal. I will appreciate it!

The official Discord server will be the place where you will find all information at one place, first hand. If you need (or want to offer) help, found a bug, have a suggestion, or something else regarding NomNom, you will find, or can post it there.

Authors

Credits

Thanks to the following people for their help in one way or another.

  • goatfungus - Inspiration and verifying my own implementation
  • hbouma - Explaining how clearing TerrainEdit works
  • jeffswt - Algorithm to properly move base computer
  • jaszhix - rogerhnn - Coordinate conversion
  • KhaozTopsy - Creating the Assistant for No Man's Sky API to get live data and make the transfer to the app possible
  • Novoca1n3 - Providing a proof-of-concent for the JSON editor with tree view
  • zousug - Helping to set up the Discord server

And not to forget those whose help contributed to parts of the outsourced libraries libNOM.collect, libNOM.io, and libNOM.map.

Dependencies

nomnom's People

Contributors

cengelha avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nomnom's Issues

[Bug] crash when attempting to run it

I tried opening it and it crashed, my antivirus still works and I opened it in the way that has worked for all other versions but with no other explanation it might be due to the new updates to no man's sky and lack of update to the save editor, please update it after all it's the only save editor that actually works with the Microsoft version and it has been a big help to me and other users who have used this save editor

Implementierung

Ich hab in einem anderen Post das mit dem Savegame gesehen und wollte gerne mal meine Erfahrung teilen.
Ich spiele auf Normal und wollte gerne auf Survival setzen um mit Freunden zu spielen.
Das Savegame habe ich im wgs Ordner gefunden und mit N++ bearbeitet (Also die Value für die Version um 1024 addiert was mich eigentlich in den Survival Modus setzen sollte) NMS sofort mal gestartet und das Savegame steht immer noch auf Normal.. uugh
In deinem Editor wird mir das Savegame aber als Survival angezeigt, ebenfalls hat sich der Name des Savegames geändert was komisch ist. (Keine Ahnung ob sich der Store irgendein Backup zieht oder ähnliches)

Nun zum Vorschlag: Wäre es möglich das du das mit in deinem Editor Implementierst? Ich denke viele Spieler haben es aus dem Store und suchen nach genau so einem Editor um mal eben den Modus umzustellen.

Bräuchte Microsoft nicht immer eine extra Wurst wäre es ja mit einem einfachen Edit getan, aaaaber Nein man kann nichtmal eben sein Savegame switchen..

The only files I can access after unzipping are the MD files.

The only files I have in the folder are as follows:
.github
images
.gitignore
_config.yml
AutoUpdater
CHANGLOG
FEATURES
LICENSE
README
ROADMAP

I would just like to know if there is something I did wrong here, none of these files except for the MD files allow for me to access them or even open them. If I could get some assistance with this it would be greatly appreciated. Thanks.

Error when launching

I have both the GOG and STEAM version of the game installed on my PC. I am using the NMSSaveEditor for years and want to give a try to your program. Hope we'll find a way to make it works.

Type
System.Reflection.TargetInvocationException

Message
Une exception a été levée par la cible d'un appel. (French version of the crash report)
The target of a call trew an exception. (my translation)

Source
mscorlib

Stack Trace
à System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
à System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
à System.Activator.CreateInstance(Type type, Boolean nonPublic)
à System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
à System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
à System.Activator.CreateInstance(Type type, Object[] args)
à System.Xaml.Schema.SafeReflectionInvoker.CreateInstanceCritical(Type type, Object[] arguments)
à System.Xaml.Schema.XamlTypeInvoker.CreateInstance(Object[] arguments)
à MS.Internal.Xaml.Runtime.ClrObjectRuntime.CreateInstance(XamlType xamlType, Object[] args)
à MS.Internal.Xaml.Runtime.PartialTrustTolerantRuntime.CreateInstance(XamlType xamlType, Object[] args)
à System.Xaml.XamlObjectWriter.Logic_CreateAndAssignToParentStart(ObjectWriterContext ctx)
à System.Xaml.XamlObjectWriter.WriteStartMember(XamlMember property)
à System.Windows.Markup.WpfXamlLoader.TransformNodes(XamlReader xamlReader, XamlObjectWriter xamlWriter, Boolean onlyLoadOneNode, Boolean skipJournaledProperties, Boolean shouldPassLineNumberInfo, IXamlLineInfo xamlLineInfo, IXamlLineInfoConsumer xamlLineInfoConsumer, XamlContextStack`1 stack, IStyleConnector styleConnector)
à System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
à System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
à System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
à System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)
à System.Windows.Application.DoStartup()
à System.Windows.Application.<.ctor>b__1_0(Object unused)
à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Source code ?

Hello. I would like to ask where is the source code ? I would like to submit patch requests for issue fixes.

How to start..

I am stumped, where is the download or am i missing something? No executable file exsists...

Crash when Checking Hazard Protection Module

Occurred when I tried to open a hazard protection module details.
For PC-Steam
Here's the Stack Trace:
Probably should be Array.Length;

'System.Array' does not contain a definition for 'Count'
at CallSite.Target(Closure , CallSite , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0)
at NomNom.ViewModel.ItemDetailsViewModel.Initialize(Object data) in C:\Users\cenge\source\repos\NomNom\NomNom\ViewModel\ItemDetailsViewModel.cs:line 382
at NomNom.View.InventoryView.OpenItemDetailsWindow(InventorySlot inventorySlot) in C:\Users\cenge\source\repos\NomNom\NomNom\View\View\InventoryView.xaml.cs:line 133
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.Control.HandleDoubleClick(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnMouseDownThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Source Code?

Where is Source Code? GPLv3 but nothing in this repo...

[Feature Request] Randomize Procedural tech button

Summary

A button to randomize all the procedural tech in a ship or multitool

Details

This would be a button or right click feature to randomize the procedural tech seed or id. This would allow hunting for perfect modules specifically X-Class ones much more feasible allowing a indivisual to check lots and lots of seeds at a time.

Another thing that could be done is when the perfect seed for a piece of tech is found and verified I or others can post its seed here and you could add it to the catalogue of know perfect seeds.

Kein Fehler... wegen PS4 Dateien

Hallo

Sorry ich habe das erst jetzt gesehen:

goatfungus/NMSSaveEditor#258

Hätten Sie lust daran zu arbeiten? Ich kann ihnen Unterstützung mit verschiedenen Savegames bieten. z.B. von Update 1.38 wo ich selber gemodet habe, oder Update 2.14. Sie sehen im Link oben ich hatte nie Plaintext wie der andere User, benutze aber auch die Homebrew Tools wie PS4 Savemounter.

FG Storm21

Feature Request: Auto-Sort Inventories

It'd be great to press a button and have all my inventories sorted sensibly. As a basic implementation it would re-arrange all my stacks alphabetically within their uppermost container (so a Freighter with several storage rooms would have the contents alphabetized across each tab).

A more advanced version would weight item types to specific containers - for example anywhere an item stacks higher. Another weighting would be any gatherable item would be moved into the freighter container (and alphabetized).

[Bug] The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception.

Description

Editor crashes on start

Steps to Reproduce

  1. Open editor

Expected Behavior

File opens and allows editing of a save file

Actual Behavior

The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception.

Basic Information

  • Version with issue: 3.1.0.15-alpha.15
  • Platform you use: Windows 10 Home

How goes the Work for a MS-Store Compatibility?

Nice to see something being done recently on a NMS Save Editor.

I have done a load of digging and tried some things myself, the issue I am having is I am not quite sure what file holds the savegames. Anyway... how goes your work on getting it compatible with the MS-Store?

[Bug]

Description

Steps to Reproduce

Expected Behavior

Actual Behavior

Basic Information

  • Version with issue:
  • Platform you use:

Screenshots

[Bug] Crashing at start

Starting the application and it crashes on startup. NMS isn't open when I attempt to run the application. Tried running as admin but still to the crashing screen.
crash report.zip

it keeps crashing and im tryna use it for ps4

Exception

Type
System.Windows.Markup.XamlParseException

Message
The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception.

Source
PresentationFramework

Stack Trace
at System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
at System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)
at System.Windows.Application.DoStartup()
at System.Windows.Application.<.ctor>b__1_0(Object unused)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

InnerException

Type
System.ArgumentException

Message
The path is not of a legal form.

Source
mscorlib

Stack Trace
at System.IO.Path.NewNormalizePath(String path, Int32 maxPathLength, Boolean expandShortPaths)
at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.DirectoryInfo.Init(String path, Boolean checkHost)
at NomNom.IO.IPlatform.RelocatePath(String path) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\IPlatform.cs:line 344
at NomNom.IO.IPlatform..ctor(String path) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\IPlatform.cs:line 121
at NomNom.IO.PlatformFactory.GetPlatform(PlatformEnum platformEnum, String path, String& relocated) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformFactory.cs:line 40
at NomNom.IO.PlatformFactory.GetPlatform(String path, String& relocated) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformFactory.cs:line 22
at NomNom.Manager.SetSavePath(String path) in C:\Users\cenge\source\repos\NomNom\NomNom\Manager.cs:line 221
at NomNom.Manager.Initialize() in C:\Users\cenge\source\repos\NomNom\NomNom\Manager.cs:line 215
at NomNom.ViewModel.MainViewModel..ctor() in C:\Users\cenge\source\repos\NomNom\NomNom\ViewModel\MainViewModel.cs:line 226

[Bug]

Crash on start

I dont know why i cannot open the editor, it just crashes on start (on every single version, but the screenshots are from alpha 14)

Steps to Reproduce

  1. Open the .exe file

Screenshots

image

image

image

Windows Store saves not compatible again.

2020-10-07 23:37:51.173 -04:00 [ERR] Could not deserialize JSON of index 0 for Microsoft: Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.UInt16' because the type requires a JSON primitive value (e.g. string, number, boolean, null) to deserialize correctly.
To fix this error either change the JSON to a JSON primitive value (e.g. string, number, boolean, null) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path '6f=.ym>[0].uK6[0].J3C', line 1, position 1992490.
2020-10-07 23:37:51.173 -04:00 [ERR] Could not deserialize JSON of index 1 for Microsoft: Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.UInt16' because the type requires a JSON primitive value (e.g. string, number, boolean, null) to deserialize correctly.
To fix this error either change the JSON to a JSON primitive value (e.g. string, number, boolean, null) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path '6f=.ym>[0].uK6[0].J3C', line 1, position 1997657.

Here is the save:

0009000000E83353_29070100B936489ABCE8B9AF3980429C.zip

Ps4 save not detected

I have tried pulling saves from two different PS4's, but Nomnom won't detect them, so there is nothing I can open.

One save it from the OG game back during release, so I tried opening a newer version save from a different PS4, but it still isn't recognized.

Files are untouched and pulled fresh using save mounter.

Ideas where to start?

Edit Milestones - WinStore Version.

Is there an option to add the option edit the milestones in the savegame for the win version?
I cant edit my save at all - only the checkbox "synced" is enabled. does that mean it requires an update?

Error when launching

I double clicked the .exe and crashed right away.

Type
System.Windows.Markup.XamlParseException

Message
The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception.

Source
PresentationFramework

Stack Trace
n System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
en System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
en System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
en System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
en System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)
en System.Windows.Application.DoStartup()
en System.Windows.Application.<.ctor>b__1_0(Object unused)
en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

[Bug] JSON editor doesn't work

Description

Despite having Advanced Mode turned on, I'm still unable to use the JSON Editor feature.

Steps to Reproduce

  1. Turn on Advanced Mode under File > Mode
  2. Use JSON Editor under Edit

Expected Behavior

Opening the JSON file and allowing the user to edit

Actual Behavior

JSON Editor is grayed out and unable to be selected

  • Version with issue: Latest
  • Platform you use: Xbox Game Pass for PC

Screenshots

image
image

Crash in editor

Repro steps:

  1. Select save file
  2. Click on editor
  3. In inventory (any, doesn't matter which one) on an empty spot open context menu
  4. In context menu chose add/replace item
  5. Select new item dialog opens.
  6. Don't type anything into the search textbox and click on the magnifying glass icon, which performs the search.

Result: System.NullReferenceException

Stack trace:

   at: NomNom.ViewModel.ItemAddViewModel.IsItemInCategory(Item item) hely: C:\Users\cenge\source\repos\NomNom\NomNom\ViewModel\ItemAddViewModel.cs, line: 262
   at: System.Linq.Enumerable.<>c__DisplayClass6_0`1.<CombinePredicates>b__0(TSource x)
   at: System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at: System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at: System.Linq.OrderedEnumerable`1.<GetEnumerator>d__1.MoveNext()
   at: MoreLinq.MoreEnumerable.ForEach[T](IEnumerable`1 source, Action`1 action) hely: C:\projects\morelinq\MoreLinq\ForEach.cs, line: 37
   at: System.Windows.Input.CommandBinding.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   at: System.Windows.Input.CommandManager.ExecuteCommandBinding(Object sender, ExecutedRoutedEventArgs e, CommandBinding commandBinding)
   at: System.Windows.Input.CommandManager.FindCommandBinding(CommandBindingCollection commandBindings, Object sender, RoutedEventArgs e, ICommand command, Boolean execute)
   at: System.Windows.Input.CommandManager.FindCommandBinding(Object sender, RoutedEventArgs e, ICommand command, Boolean execute)
   at: System.Windows.Input.CommandManager.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   at: System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at: System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at: System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at: System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at: System.Windows.Input.RoutedCommand.ExecuteImpl(Object parameter, IInputElement target, Boolean userInitiated)
   at: MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
   at: System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at: System.Windows.Controls.Button.OnClick()
   at: System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   at: System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at: System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at: System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at: System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   at: System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
   at: System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at: System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at: System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at: System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at: System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at: System.Windows.Input.InputManager.ProcessStagingArea()
   at: System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at: System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at: System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at: System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at: System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at: MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at: MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at: System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at: System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Feature Request: Display Procdural Tech Stats

Hello,
I am requesting the ability to see procedural tech stats. So here's the idea:
When a user pulls up the procedural tech item, there is a new button on the page.
When a user clicks that button a new window pops up.
That new window is a table with a list of this procedural tech's IDs along with what stat values it will provide.
I can sort that list by the various values and select one.
That ID is used as the new ID for the tech slot.

Primarily this will be useful for X-teir tech so I can select an upgrade that gets what I actually want instead of rolling over and over again and hoping I get a good one.

Feature Request: Change gamemode

Does this editor allow one to change the mode from survival to another like normal mode? Also how does one copy the save folder in the manager to create a new one?

Save suddenly became incompatible

A save I have opened and edited multiple times became incompatible one day to the next.
I can't specify exactly what might have caused it but the only "new" thing I did was acquire a freighter. I've tried resaving in different places and it always seems to have the same error on load

Game is through Microsoft Store

2021-02-02 15:23:55.875 -07:00 [INF] Starting session 10... 2021-02-02 15:23:56.632 -07:00 [ERR] Could not deserialize JSON of index 0 for Microsoft: Error converting value "0xFFFFFFDEF2B5D11F" to type 'System.UInt64'. Path '6f=.RQA[516].wx7', line 1, position 956377. 2021-02-02 15:32:34.847 -07:00 [INF] Starting session 11... 2021-02-02 15:32:35.647 -07:00 [ERR] Could not deserialize JSON of index 0 for Microsoft: Error converting value "0xFFFFFFDEF2B5D11F" to type 'System.UInt64'. Path '6f=.RQA[516].wx7', line 1, position 956936.

[Bug] Crash on Startup

Description

Application crashes at runtime with the error: "The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception."
This started happening after I attempted to run the save editor while the game was still running (Stupid, I know).
The save itself seems to still work fine as I am able to run the game and continue to play without issue.

Crash Reports:
CrashReports.zip

Steps to Reproduce

  1. Run NomNom.exe
  2. Crash happens immediately.
    Rebooting computer does not solve.

Expected Behavior

Application runs and allows for editing of save file.

Actual Behavior

Application crashes with the following error: "The invocation of the constructor on type 'NomNom.ViewModel.MainViewModel' that matches the specified binding constraints threw an exception."

Basic Information

  • Version with issue: 3.1.0.15-alpha.15
  • Platform you use: Windows 10 Pro

Screenshots

image

[Bug] Unable to open save from xbox game pass save

The exact error is [ERR] Could not deserialize JSON of index 1 for Microsoft: Required property 'OCG' not found in JSON. Path '6f=.j3Y', line 1, position 1512813.

Attached save file will not work, it fails because SunDirSet and FoVSet are missing on my save in PhotoModeSettings so I simply changed the attribute to default required mode rather than always.

DepthOfField mapping seems to be 0tA on my save which also was causing it to fail due to a missing property in the json.

Other than that it seems to work fine :)

save.zip

Selected reset to Microsoft save path - Crash

Selected reset to Microsoft save path, immediate crash.
I have the Steam and XGP versions installed.

Exception

System.ArgumentException @ mscorlib | "Byte array for GUID must be exactly 16 bytes long."

   at System.Guid..ctor(Byte[] b)
   at NomNom.IO.PlatformMicrosoft.GetFile(IEnumerable`1 data) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformMicrosoft.cs:line 102
   at NomNom.IO.PlatformMicrosoft.ReadContainer(String path, Int32 index) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformMicrosoft.cs:line 206
   at NomNom.IO.PlatformMicrosoft.CreateContainer(String path, Int32 archiveIndex, Object data) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformMicrosoft.cs:line 395
   at NomNom.IO.IPlatform.BuildContainer(String path, Int32 archiveIndex, Object data) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\IPlatform.cs:line 721
   at NomNom.IO.PlatformMicrosoft.<>c__DisplayClass49_0.<BuildContainerCollection>g__createAdd|0(String path, Int32 archiveIndex, ValueTuple`5 data) in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformMicrosoft.cs:line 340
   at NomNom.IO.PlatformMicrosoft.<>c__DisplayClass49_1.<BuildContainerCollection>b__1() in C:\Users\cenge\source\repos\NomNom\NomNom\IO\PlatformMicrosoft.cs:line 354
   at System.Threading.Tasks.Task.Execute()

Only my main save is not compatible

image

Any suggestions?

Log:


2020-10-04 14:15:00.894 -05:00 [INF] Starting session 13...
2020-10-04 14:15:03.334 -05:00 [ERR] Could not deserialize JSON of index 3 for Microsoft: Required property 'D9@' not found in JSON. Path '6f=.F?0[0]', line 1, position 855066.
2020-10-04 14:15:03.918 -05:00 [ERR] Could not deserialize JSON of index 4 for Microsoft: Error converting value "0xFFFFFFFFFFFFFFFF" to type 'System.UInt64'. Path '6f=.EQt[20].oF@', line 1, position 475248.
2020-10-04 14:15:04.125 -05:00 [ERR] Could not deserialize JSON of index 1 for Microsoft: Requested value 'Not Found' was not found.
2020-10-04 14:15:04.303 -05:00 [ERR] Could not deserialize JSON of index 5 for Microsoft: Error converting value "0xFFFFFFFFFFFFFFFF" to type 'System.UInt64'. Path '6f=.EQt[20].oF@', line 1, position 475249.

Crash on startup

The first startup was alright but after i closed the program and opened it again it just crashes all the time.
I attached the crash log

crash_report.log

Edit: Somehow it just works now

Windows Store saves sometimes not compatible.

Sometimes when I load up nomnom it shows my windows store saves as not compatible and will not open them. I load the game up and play for a bit and save it again, and it usually shows up as compatible. Not every time though. I haven't noticed any patterns because I only notice the problem after I last played the night before or a day or two ago. I am going to try to remember to load up NomNom every time I finish playing to check, so the circumstances when I saved are freshed in my memory.

[Bug] save file type converted

I was playing no man's sky using the expeditions update and I noticed a particular milestone that I could easily edit my way around, a couple in fact, so I trekked along until I got to the point were I wanted to edit some of these milestones out of the way, I closed my game opened up the most recently updated version of nomnom that I could find(I use Microsoft version) and I pulled up the save editor, I had gotten rid of my other saves to make room so I only had that one expeditions save, I pulled it up and figured it was just a visual error that only showed my save file as permadeath, I then edited a few things, saved my changes closed nomnom and popped back open no man's sky, I was concerned when I looked at my save file showing that it was a permadeath save, once i continued my save it sent me back to the starting point for the expedition with everything randomized as if i just started playing the update but all my quests showed everything as if I was playing permadeath, it made no sense, I figured it wasn't going to get much better from there so i deleted my save and started up a new save for these expeditions, i did most of them by now and there are some that I could save days with just a few keyboard presses, I want this bug fixed, if you have any questions idk just ask em, in the mean time I'm gonna make sure nomnom is up to date for me and I'm going to try messing with things on a backup expeditions save.

having a problem opening

when i download and open the file it was a bit hard to find the executable but once i found it i immediately tried runing it. it only showed a starting up page and never really opened i tried running in other ways after i checked my antivirus and it came up empty i figured something else must be wrong, plz help?

Crash on save

Cannot write a null value for property 'TeleporterType'. Property requires a value. Path 'PlayerStateData.OtherSideOfPortalReturnBase'.

[Feature Request] The ability to see/edit/export the overall save settings for PS4 saves

Summary

On Steam overall game settings can be changed by editing the file %ProgramFiles(x86)%\Steam\steamapps\common\No Man's Sky\Binaries\SETTINGS\GCUSERSETTINGSDATA.MXML
This includes things like Twitch Rewards, Expedition Regards, Titles, Catalog info. Looking to be able to edit the same info on a PS4 save

Details

The same info found in the GCUSERSETTINGSDATA.MXML for Steam saves is located at the start of the memory.dat file part of the PS4 save. Looking for a method that allows users to see, edit, and export this data. This info is stored in JSON format in the memory.dat vs MXML for steam.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.