Outer-Wilds-New-Horizons / new-horizons

A tool for modifying or creating new planets, dialogue, ship logs, and more for Outer Wilds.
https://nh.outerwildsmods.com/
MIT License
42 stars 15 forks source link

Stuck when loading into the Eye #865

Closed coderCleric closed 1 month ago

coderCleric commented 1 month ago

What Happened?

Loaded a save at the Eye and wasn't able to look around or move, although I could jump.

Note that everything seemed to work normally on the initial trip from the main system to the Eye, but broke once I went to the main menu and clicked "resume game".

What was supposed to happen?

I should be able to look and move.

Platform

Steam

Mods

Just NH and dependencies, not even a NH addon.

Logs

This is the entire log from clicking the "Resume Game" button onwards:

New Horizons
Warning : Warping to solar system and then back to eye

New Horizons
Log : Scene Loaded: SolarSystem Single OWScene.SolarSystem

OWML
NullReferenceException: Object reference not set to an instance of an object
Stacktrace: NewHorizons.Builder.Props.Audio.SignalBuilder.GetCustomFrequencyName (SignalFrequency frequencyName) (at <390e830fdd0f419baed9b554318eaf0a>:0)
NewHorizons.Patches.PlayerPatches.PlayerDataPatches.PlayerData_KnowsFrequency (SignalFrequency frequency, System.Boolean& __result) (at <390e830fdd0f419baed9b554318eaf0a>:0)
(wrapper dynamic-method) PlayerData.DMD<PlayerData::KnowsFrequency>(SignalFrequency)
HideAndSeekController.OnStartOfTimeLoop (System.Int32 loopCount) (at <2e32beb259c64bc6af536523c2f39595>:0)
GlobalMessenger`1[T].FireEvent (System.String eventType, T arg1) (at <2e32beb259c64bc6af536523c2f39595>:0)
UnityEngine.Debug:LogException(Exception)
GlobalMessenger`1:FireEvent(String, Int32)
TimeLoop:Start()

OWML
ArgumentNullException: Value cannot be null.
Parameter name: source
Stacktrace: System.Linq.Enumerable.Contains[TSource] (System.Collections.Generic.IEnumerable`1[T] source, TSource value, System.Collections.Generic.IEqualityComparer`1[T] comparer) (at <55b3683038794c198a24e8a1362bfc61>:0)
System.Linq.Enumerable.Contains[TSource] (System.Collections.Generic.IEnumerable`1[T] source, TSource value) (at <55b3683038794c198a24e8a1362bfc61>:0)
NewHorizons.Handlers.ShipLogHandler.IsModdedFact (System.String FactID) (at <390e830fdd0f419baed9b554318eaf0a>:0)
NewHorizons.Patches.ShipLogPatches.ShipLogManagerPatches.ShipLogManager_CheckForCompletionAchievement (ShipLogManager __instance) (at <390e830fdd0f419baed9b554318eaf0a>:0)
(wrapper dynamic-method) ShipLogManager.DMD<ShipLogManager::CheckForCompletionAchievement>(ShipLogManager)
(wrapper dynamic-method) ShipLogManager.DMD<ShipLogManager::Start>(ShipLogManager)

OWML
NullReferenceException
Stacktrace: QuantumMoon.OnDisable () (at <2e32beb259c64bc6af536523c2f39595>:0)

OWML
NullReferenceException
Stacktrace: OWExtensions.GetAttachedOWRigidbody (UnityEngine.GameObject obj, System.Boolean ignoreThisTransform) (at <2e32beb259c64bc6af536523c2f39595>:0)
ElectroBarrier.OnExitBarrierZone (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.FireExitEvent (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.RemoveObjectFromVolume (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.RemoveAllObjectsFromVolume () (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.OnDisable () (at <2e32beb259c64bc6af536523c2f39595>:0)

OWML
NullReferenceException
Stacktrace: UnityEngine.GameObject.GetComponent[T] () (at <85d1d3e7744a4a47b5f51883bf40bba2>:0)
ForceVolume.OnEffectVolumeExit (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.FireExitEvent (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.RemoveObjectFromVolume (UnityEngine.GameObject hitObj) (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.RemoveAllObjectsFromVolume () (at <2e32beb259c64bc6af536523c2f39595>:0)
OWTriggerVolume.OnDisable () (at <2e32beb259c64bc6af536523c2f39595>:0)

New Horizons
Log : Changing star system from SolarSystem to EyeOfTheUniverse - Clearing system-specific caches!

New Horizons
Warning : Couldn't find object in path Ship_Body/Module_Cabin/Systems_Cabin/ShipLogPivot/ShipLog/ShipLogPivot/ShipLogCanvas/MapMode/ScaleRoot/PanRoot, will look for potential matches for name PanRoot

New Horizons
Warning : Couldn't find object with name PanRoot

New Horizons
Log : Beginning Ship Log Generation For: EyeOfTheUniverse

New Horizons
Log : Ship Log Generation Complete For: EyeOfTheUniverse

New Horizons
Log : Scene Loaded: EyeOfTheUniverse Single OWScene.EyeOfTheUniverse

OWML
Eye state object is NULL!

x3
New Horizons
Log : Toggling immortality: True

New Horizons
Warning : Couldn't find object in path QuantumMoon_Body/Signal_Quantum, will look for potential matches for name Signal_Quantum

New Horizons
Log : Updating existing Object EyeOfTheUniverse_Body

New Horizons
Log : Loading Deferred Bodies

New Horizons
Log : Done loading bodies

New Horizons
Warning : Couldn't find object in path Ship_Body/Module_Cabin/Systems_Cabin/ShipLogPivot/ShipLog/ShipLogPivot/ShipLogCanvas, will look for potential matches for name ShipLogCanvas

New Horizons
Warning : Couldn't find object with name ShipLogCanvas

New Horizons
Warning : Couldn't find object in path Ship_Body/Module_Cabin/Systems_Cabin/ShipLogPivot/ShipLog/ShipLogPivot/ShipLogCanvas/DetectiveMode/ReticleImage (1)/, will look for potential matches for name

New Horizons
Warning : Couldn't find object with name 

New Horizons
Log : No NH spawn point for EyeOfTheUniverse

New Horizons
Log : Star system finished loading [EyeOfTheUniverse]

New Horizons
Log : OnSystemReady False, False, False

New Horizons
Log : Toggling immortality: False

New Horizons
Warning : Couldn't find object in path Ship_Body, will look for potential matches for name Ship_Body

New Horizons
Warning : Couldn't find object with name Ship_Body

New Horizons
Log : System has no ship spawn. Deactivating it.
JohnCorby commented 1 month ago

almost certainly caused by my change here to fire OnStartSceneLoad for QSB

can revert that and just manually fire the event before fade

(also an aside: FadeHandler should change volume too)