Giter Site home page Giter Site logo

Comments (5)

DomiStyle avatar DomiStyle commented on May 24, 2024 1

I'm getting the following when trying to run OWML 2.3.3 through wine/Proton:

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'Newtonsoft.Json.JsonWriter' threw an exception. ---> System.NullReferenceException: Object reference not set to an instance of an object
  at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00000] in <55b3683038794c198a24e8a1362bfc61>:0 
  at Newtonsoft.Json.JsonWriter.BuildStateArray () [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonWriter..cctor () [0x000b3] in <f74995119334484fb6db6825be2eac0d>:0 
   --- End of inner exception stack trace ---
  at Newtonsoft.Json.JsonTextWriter..ctor (System.IO.TextWriter textWriter) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObjectInternal (System.Object value, System.Type type, Newtonsoft.Json.JsonSerializer jsonSerializer) [0x00015] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, System.Type type, Newtonsoft.Json.Formatting formatting, Newtonsoft.Json.JsonSerializerSettings settings) [0x0000e] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, Newtonsoft.Json.Formatting formatting, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, Newtonsoft.Json.Formatting formatting) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at OWML.Utils.JsonHelper.SaveJsonObject[T] (System.String path, T obj) [0x00000] in <a2092924ff124e4c9a5b61a9ec24bfaa>:0 
  at OWML.Launcher.Program.CreateOwmlConfig () [0x0000c] in <ff5abc1e010b4a6981346414f5dfc859>:0 
  at OWML.Launcher.Program.CreateContainer (System.String[] args) [0x0000a] in <ff5abc1e010b4a6981346414f5dfc859>:0 
  at OWML.Launcher.Program.Main (System.String[] args) [0x00001] in <ff5abc1e010b4a6981346414f5dfc859>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Newtonsoft.Json.JsonWriter' threw an exception. ---> System.NullReferenceException: Object reference not set to an instance of an object
  at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00000] in <55b3683038794c198a24e8a1362bfc61>:0 
  at Newtonsoft.Json.JsonWriter.BuildStateArray () [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonWriter..cctor () [0x000b3] in <f74995119334484fb6db6825be2eac0d>:0 
   --- End of inner exception stack trace ---
  at Newtonsoft.Json.JsonTextWriter..ctor (System.IO.TextWriter textWriter) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObjectInternal (System.Object value, System.Type type, Newtonsoft.Json.JsonSerializer jsonSerializer) [0x00015] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, System.Type type, Newtonsoft.Json.Formatting formatting, Newtonsoft.Json.JsonSerializerSettings settings) [0x0000e] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, Newtonsoft.Json.Formatting formatting, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, Newtonsoft.Json.Formatting formatting) [0x00000] in <f74995119334484fb6db6825be2eac0d>:0 
  at OWML.Utils.JsonHelper.SaveJsonObject[T] (System.String path, T obj) [0x00000] in <a2092924ff124e4c9a5b61a9ec24bfaa>:0 
  at OWML.Launcher.Program.CreateOwmlConfig () [0x0000c] in <ff5abc1e010b4a6981346414f5dfc859>:0 
  at OWML.Launcher.Program.CreateContainer (System.String[] args) [0x0000a] in <ff5abc1e010b4a6981346414f5dfc859>:0

I tried manually copying OWML.DefaultConfig.json to OWML.Config.json so it wouldn't have to run CreateOwmlConfig but it seems like it still does the same thing.

Any ideas?

from owml.

amazingalek avatar amazingalek commented on May 24, 2024

@misternebula will this be fixed with #381 ?

from owml.

farmboy0 avatar farmboy0 commented on May 24, 2024

You can work around that by using steamtinkerlaunch and configuring it to start the custom binary OWML_Launcher.exe instead. You also need to put a link from the Outer Wilds folder to where the game would be installed on windows or OWML wont find it.

from owml.

DomiStyle avatar DomiStyle commented on May 24, 2024

I was able to get everything to work like this:

  1. Download Outer Wilds
  2. Switch to Proton 5.0
  3. Launch the game once and quit
  4. Run protontricks 753640 dotnet48 (this might take a while)
  5. Switch back to latest Proton version
  6. Run the game once and quit
  7. Use protontricks or steamtinkerlaunch to run the OuterWildsModManager-Installer.exe (I recommend installing both the mod manager and OWML into the game directory)
  8. Set the steam launch parameters to steamtinkerlaunch %command%
  9. Set the launch exe to the OuterWildsModManager.exe you just installed.
  10. In the mod launcher enable the option to launch the exe directly and adjust the paths

Everything should work from there. I tried NomaiVR and Quantum Space Buddies with no issues.

It seems like this was caused by a bug in Wine Mono, replacing it with the regular .NET 4.8 works.

from owml.

xen-42 avatar xen-42 commented on May 24, 2024

Running OWML and the OWMM works on Linux, here's a guide by BUNN1E5

Prereqs ::
Download Outer Wilds Mod Manager
Download and install protontricks

It is recommended to try and start the game after each step cause
if at any point the game does not run delete the 753640/ folder verify game files
and start back at step 1

  1. Run Outer Wilds at least once using proton 5.0-10
  2. navigate to
    a. ~/.local/share/Steam/steamapps/compatdata/753640/pfx/drive_c/'Program Files (x86)'/Steam/
  3. run the following command
    a. sudo ln -s ~/.local/share/Steam/steamapps/ 'steamapps'
    b. if there is already a steamapps folder delete it and try the command again
  4. Install dotnet48 using protontricks
    a. protontricks 753640 dotnet48
    b. Select Restart later
    4a. Run the game again just in case something broke
  5. Switch to Proton 6.3-8
  6. find OuterWildsModManager-Installer.exe
  7. run the installer using protontricks-launch and complete the install
    a. protontricks-launch OuterWildsModManager-Installer.exe
    b. Open the Mod manager
  8. Go to setting and check show advanced options
  9. enable 'Launch game exe Directory'
  10. Go to the mods panel
  11. Download OWML
  12. Select Start Game
    a. Note :: you only need to do this once!
    Congrats you are now modded!
  13. Select whatever mods you want!
    a. DO NOT click Start game again

To play the game just run it from steam, make sure you close the mod manager before you start the game
Make sure that wine actually closes when you close the mod manager

You can find mod manager at the following directory
~/.local/share/Steam/steamapps/compatdata/753640/pfx/drive_c/'Program Files'/OuterWildsModManager/
and launch it with
protontricks-launch OuterWildsModManager.exe

from owml.

Related Issues (20)

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.