peterhaneve / ONIMods

Peter Han's mods for Oxygen Not Included
Other
307 stars 64 forks source link

[Stock Bug Fix] - Crash Issue #491

Closed alzacastar closed 1 month ago

alzacastar commented 1 month ago

The game randomly crashes. Not sure of the exact cause. Saw a mention of StockBugFix in the short log so I am posting this here. If you think this is related to a different mod let me know.

See attached player.log

The in-game crash shows three mods in red:

I tried with the high-pressure mod disabled and had the same crash. But the game runs fine with Stock Bug Fix mod disabled.

Mod Version: 3.28.0.0 Game Build: U52-622509-SC Fast Track: 0.14.0.0 Steam version updated with Mod Updater.

In-Game Error/Crash (short):

Assert failed

at UnityEngine.Debug.LogError (System.Object message) [0x00000] in <72b60a3dd8cd4f12a155b761a1af9144>:0 at Debug.LogError (System.Object obj) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at Debug.Assert (System.Boolean condition) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at DebugUtil.Assert (System.Boolean test) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at ArrayRef1[T].MaybeGrow (System.Int32 index) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at ArrayRef1[T].Add (T item) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at EventSystem.Subscribe[ComponentType] (System.Int32 eventName, EventSystem+IntraObjectHandler1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at KMonoBehaviour.Subscribe[ComponentType] (System.Int32 hash, EventSystem+IntraObjectHandler1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at PeterHan.StockBugFix.PlantIrrigationFixPatches.SubscribeToTrunk_Postfix (TreeBud __instance) [0x00000] in :0 at PlantBranch+Instance.PlantBranch+Instance.SubscribeToTrunk_Patch1 (PlantBranch+Instance ) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at PlantBranch+Instance.SetTrunk (PlantBranchGrower+Instance trunk) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at PlantBranchGrower+Instance.SpawnBranchAtIndex (System.Int32 idx) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at PlantBranchGrower+Instance.SpawnRandomBranch (System.Single growth_percentage) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at PlantBranchGrower.GrowBranchUpdate (PlantBranchGrower+Instance smi, System.Single dt) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at BucketUpdater1[DataType].Update (DataType data, System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at UpdateBucketWithUpdater1[DataType].Update (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at StateMachineUpdater+BucketGroup.AdvanceOneSubTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at StateMachineUpdater.AdvanceOneSimSubTick () [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 at Game.SimEveryTick (System.Single dt) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 at Game.Game.Update_Patch3 (Game ) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 Build: U52-622509-SC (FT-0.14.0.0)

Player.log

peterhaneve commented 1 month ago

It looks like these rare crashes are some kind of compatibility issue. I took a quick look over the method and made a few changes that should improve compatibility in 4.0.

Sad-theFaceless commented 1 month ago

Hi!

I have the mod version 4.0.0.0, and yet this exact same bug persists.

In this situation, it happened on a newly created sandbox save, with SO + FPP enabled.

Logs:

Assert failed

  at UnityEngine.Debug.LogError (System.Object message) [0x00000] in <72b60a3dd8cd4f12a155b761a1af9144>:0 
  at Debug.LogError (System.Object obj) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Debug.Assert (System.Boolean condition) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at DebugUtil.Assert (System.Boolean test) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].MaybeGrow (System.Int32 index) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].Add (T item) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at EventSystem.Subscribe[ComponentType] (System.Int32 eventName, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at KMonoBehaviour.Subscribe[ComponentType] (System.Int32 hash, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at PeterHan.StockBugFix.PlantIrrigationFixPatches.SubscribeToTrunk_Postfix (TreeBud __instance) [0x00000] in <a621777aaf3b48489a25030a672a4c7d>:0 
  at PlantBranch+Instance.PlantBranch+Instance.SubscribeToTrunk_Patch1 (PlantBranch+Instance ) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranch+Instance.SetTrunk (PlantBranchGrower+Instance trunk) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnBranchAtIndex (System.Int32 idx) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnRandomBranch (System.Single growth_percentage) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower.WorldGenUpdate (PlantBranchGrower+Instance smi, System.Single dt) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at BucketUpdater`1[DataType].Update (DataType data, System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at UpdateBucketWithUpdater`1[DataType].Update (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater+BucketGroup.AdvanceOneSubTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater.RenderEveryTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Game.LateUpdate () [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
Build: U52-622509-SCD

Should I create a new issue ?

alzacastar commented 1 month ago

Seems to be working for me with the latest update... Will follow-up if I see it crash again 👍

peterhaneve commented 1 month ago

Hi!

I have the mod version 4.0.0.0, and yet this exact same bug persists.

In this situation, it happened on a newly created sandbox save, with SO + FPP enabled.

Logs:

Assert failed

  at UnityEngine.Debug.LogError (System.Object message) [0x00000] in <72b60a3dd8cd4f12a155b761a1af9144>:0 
  at Debug.LogError (System.Object obj) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Debug.Assert (System.Boolean condition) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at DebugUtil.Assert (System.Boolean test) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].MaybeGrow (System.Int32 index) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].Add (T item) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at EventSystem.Subscribe[ComponentType] (System.Int32 eventName, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at KMonoBehaviour.Subscribe[ComponentType] (System.Int32 hash, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at PeterHan.StockBugFix.PlantIrrigationFixPatches.SubscribeToTrunk_Postfix (TreeBud __instance) [0x00000] in <a621777aaf3b48489a25030a672a4c7d>:0 
  at PlantBranch+Instance.PlantBranch+Instance.SubscribeToTrunk_Patch1 (PlantBranch+Instance ) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranch+Instance.SetTrunk (PlantBranchGrower+Instance trunk) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnBranchAtIndex (System.Int32 idx) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnRandomBranch (System.Single growth_percentage) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower.WorldGenUpdate (PlantBranchGrower+Instance smi, System.Single dt) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at BucketUpdater`1[DataType].Update (DataType data, System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at UpdateBucketWithUpdater`1[DataType].Update (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater+BucketGroup.AdvanceOneSubTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater.RenderEveryTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Game.LateUpdate () [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
Build: U52-622509-SCD

Should I create a new issue ?

You do not have version 4.0 actually running, as the stack trace still has the old method name from the previous version. The base game has a bug where it will frequently lie about the running version, so try using Mod Updater.

Sad-theFaceless commented 1 month ago

Hi! I have the mod version 4.0.0.0, and yet this exact same bug persists. In this situation, it happened on a newly created sandbox save, with SO + FPP enabled. Logs:

Assert failed

  at UnityEngine.Debug.LogError (System.Object message) [0x00000] in <72b60a3dd8cd4f12a155b761a1af9144>:0 
  at Debug.LogError (System.Object obj) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Debug.Assert (System.Boolean condition) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at DebugUtil.Assert (System.Boolean test) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].MaybeGrow (System.Int32 index) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at ArrayRef`1[T].Add (T item) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at EventSystem.Subscribe[ComponentType] (System.Int32 eventName, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at KMonoBehaviour.Subscribe[ComponentType] (System.Int32 hash, EventSystem+IntraObjectHandler`1[ComponentType] handler) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at PeterHan.StockBugFix.PlantIrrigationFixPatches.SubscribeToTrunk_Postfix (TreeBud __instance) [0x00000] in <a621777aaf3b48489a25030a672a4c7d>:0 
  at PlantBranch+Instance.PlantBranch+Instance.SubscribeToTrunk_Patch1 (PlantBranch+Instance ) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranch+Instance.SetTrunk (PlantBranchGrower+Instance trunk) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnBranchAtIndex (System.Int32 idx) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower+Instance.SpawnRandomBranch (System.Single growth_percentage) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at PlantBranchGrower.WorldGenUpdate (PlantBranchGrower+Instance smi, System.Single dt) [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
  at BucketUpdater`1[DataType].Update (DataType data, System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at UpdateBucketWithUpdater`1[DataType].Update (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater+BucketGroup.AdvanceOneSubTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at StateMachineUpdater.RenderEveryTick (System.Single dt) [0x00000] in <3a2e13ca97c146c4b5d2f735a443e5e3>:0 
  at Game.LateUpdate () [0x00000] in <043309e6f0914d9f9e207a782760f195>:0 
Build: U52-622509-SCD

Should I create a new issue ?

You do not have version 4.0 actually running, as the stack trace still has the old method name from the previous version. The base game has a bug where it will frequently lie about the running version, so try using Mod Updater.

Super weird because I do use Mod Updater... Anyway I just clicked on the Force Update button just in case, hopefully it solves the issue

Edit: tried to reproduce the crash with the same circumstances as my 1st one, it didn't crash. I can also now load the save that crashed due to the mod. Looks like the update fixed it so far!