Bokonon-ONI / ONI-Mods

Mods for Oxygen Not Included
MIT License
2 stars 0 forks source link

Crashes on vanilla without DLC purchased #4

Closed DDRMANIAC007 closed 3 years ago

DDRMANIAC007 commented 3 years ago

Disclaimer: Please don't report bugs you encounter to Klei while mods are active. People at Klei work hard and shouldn't be bothered with bug reports which might originate from mods.

Describe the bug Game immediately crashes upon loading the game's main menu.

To Reproduce Steps to reproduce the behavior:

  1. Load the game with the mod enabled without the DLC purchased. Expected behavior Immediate crash. Screenshots 20210701103027_1

Desktop (please complete the following information):

Additional context This crash is specific to vanilla WITHOUT the DLC purchased. The merge update only currently applies to DLC owners.

Bokonon-ONI commented 3 years ago

First off, I own the DLC and whether I'm in vanilla or the DLC I show version 469473 so I don't know if 469300 is correct if you just own vanilla. I also can't test against this version myself.

Second off, thanks for using GitHub to report this, most people just post on Steam and don't bother reporting here which is easier on me (and most modders I assume). I don't check Steam often but I get emailed if someone reports it here :)

First thing in the log regarding this mod is line 108:

[16:38:09.481] [1] [INFO] Insulated Farm Tiles: Successfully loaded from path 'root' with content 'DLL, Animation'.

Which is weird that is says Successfully because the next thing is at line 435:

System.Reflection.ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.
  at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes(System.Reflection.Assembly,bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at KMod.DLLLoader.LoadDLLs (System.String harmonyId, System.String path) [0x00153] in <ab4bdc425be2489bb8a9b667082958c0>:0 
Exception while loading mod 1850356486.Steam at C:/Users/007/Documents/Klei/OxygenNotIncluded/mods/Steam/1850356486. 
System.Reflection.ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.
  at (wrapper managed-to-native) System.Reflection.Assembly.GetTypes(System.Reflection.Assembly,bool)
  at System.Reflection.Assembly.GetTypes () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at KMod.DLLLoader.LoadDLLs (System.String harmonyId, System.String path) [0x00153] in <ab4bdc425be2489bb8a9b667082958c0>:0  
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Next is line 886:

[16:38:45.501] [1] [INFO] Failed to load mod Insulated Farm Tiles...disabling

Next useful one, line 1947:

[16:38:52.910] [1] [INFO] Insulated Farm Tiles: Successfully loaded from path 'root' with content 'DLL, Animation'.

Again with Successfully loaded ...

But that's it, no more mention of Insulated Farm Tiles.

Shortly after the last log from this mod, starting on line 1972 is this:

[16:38:52.977] [1] [INFO] Subscribe to mod GasOverlay
NullReferenceException: Object reference not set to an instance of an object
  at FrontEndBackground.UpdateDrecko () [0x0000d] in <ab4bdc425be2489bb8a9b667082958c0>:0 
  at FrontEndBackground.Update () [0x00006] in <ab4bdc425be2489bb8a9b667082958c0>:0 

(Filename: <ab4bdc425be2489bb8a9b667082958c0> Line: 0)

[16:38:53.000] [1] [INFO] Steam: updating info for mod 
[16:38:53.001] [1] [INFO] Steam: updating info for mod 
[16:38:53.001] [1] [INFO] Steam: updating info for mod 
NullReferenceException: Object reference not set to an instance of an object
  at FrontEndBackground.UpdateDrecko () [0x0000d] in <ab4bdc425be2489bb8a9b667082958c0>:0 
  at FrontEndBackground.Update () [0x00006] in <ab4bdc425be2489bb8a9b667082958c0>:0 

(Filename: <ab4bdc425be2489bb8a9b667082958c0> Line: 0)

And then after that, the log is almost 16,000 lines of the NRE repeated over and over.

Last mod mentioned before the NullReferenceException is GasOverlay but ... I've been using that one with no problems in both vanilla and DLC so I highly doubt there's a problem with it.

I can offer some suggestions but unless you have other proof that my mod is crashing your game I'll close this ticket.

Bokonon-ONI commented 3 years ago

Just looking over this again:

NullReferenceException: Object reference not set to an instance of an object
  at FrontEndBackground.UpdateDrecko () [0x0000d] in <ab4bdc425be2489bb8a9b667082958c0>:0 
  at FrontEndBackground.Update () [0x00006] in <ab4bdc425be2489bb8a9b667082958c0>:0

I don't call UpdateDrecko anywhere and I can't see why GasOverlay would either. I really suspect something different is going on but I have no idea what.

DDRMANIAC007 commented 3 years ago

Alright so I did some testing.

Here is a copy of my log when I loaded it with all my other mods enabled just not Insulated Farm Tiles. Player-LogWithoutFarmtiles.log 20210702102831_1

I then went to disable ALL of my mods then enable mod updater like you said. 20210702103620_1

I tried enabling Insulated Farm Tiles and got a crash upon restart. 20210702103642_1

I then disabled mod updater and literally only ran Insulated Farm Tiles. 20210702103818_1 Here is the log file from that. Hopefully I attached the correct one. Player.log

Bokonon-ONI commented 3 years ago

That's not the right log, there's tons of other mods loading included.

A log with only Insulated Farm Tiles might help. Also I uploaded a Debug version of the mod, grab the file InsulatedFarmTilesDebug.zip from here and extract it into into C:\Users\007\Documents\Klei\OxygenNotIncluded\mods\local\InsulatedFarmTilesLocal (Edit: You'll have to make this directory)

https://github.com/Bokonon-ONI/ONI-Mods/tree/master/ReleaseDLLs/InsulatedFarmTiles/Debug

Disable everything except the local, debug version and get me the log file from that. Can't guarantee it'll help but I have nothing other than the UpdateDrecko thing I mentioned previously.

DDRMANIAC007 commented 3 years ago

I deleted all Player.log files before loading the game with the debug mod enabled. Player.log I even checked the entire modlist and InsulatedFarmTilesLocal was the only enabled mod.

DDRMANIAC007 commented 3 years ago

Could the references to other mods be from me being subscribed to them?

Edit: Should I record a video or something?

Bokonon-ONI commented 3 years ago

No, videos (and screenshots) aren't very helpful in situations like this unless I was thinking you were doing something wrong which is not the case.

Honestly I have no idea what's going on other than I don't think it's related to my mod. Yes, the first error in the log is from my mod but there's plenty of other errors and again, the fatal part of this seems to have to with the UpdateDrecko calls not my mod.

Yeah, there seems to be an error with loading my mod on your system, could very well be your version, could very well be something I've done wrong. But the Klei mod loader notices the failure and says it is disabling it. I have no real idea how the internals of the mod loader works but this error early in your log has no relation (that I can see) to the later errors and eventual crash of your game.

Describe better when it's crashing. Is it before the main menu displays, after, after selecting continue/load?

I just don't get the UpdateDrecko thing, this is a call from the game itself that has no relation to my mod. Do any of the many mods you use touch creatures? This is really the only other thing I can think of. I'm really not trying to be unhelpful but I'm about 90% sure your game isn't crashing because of my mod ... Have you tried uninstalling and reinstalling the game? If some of your game files have gotten corrupted this might fix it. If you do reinstall, try running with just my mod the first time you fire it up.

DDRMANIAC007 commented 3 years ago

The crash happens before the main menu displays. Only when this mod is enabled for some reason. I validated my files and none were missing.

As for mods that could maybe touch critters though I am not sure:

Critter Drop-Off counts eggs [Vanilla/DLC] Pip Plant Overlay Egg Cryopreservation Independent Pufts Wrangle Fliers

None of those are specific to Dreckos. In fact none of them should be directly touching them as they deal with other critters, buildings, or critter eggs.

I think it's weird the Drecko thing is even showing up considering literally every single mod besides Farm Tiles is disabled.

Edit: Is there a chance that the Critter Drop-Off building calls UpdateDrecko?

Bokonon-ONI commented 3 years ago

I don't think any of those mods would call UpdateDrecko but I'm not sure. Try uninstalling the game, delete the install directory just to make sure nothing is left behind, reinstall. I can't say for 100% sure that my mod isn't causing this, just that I don't see how ...

DDRMANIAC007 commented 3 years ago

Wow that was a LOT of pop-ups telling me mods were installed. I uninstalled it, deleted the directory, and reinstalled it to a different much faster drive. It crashed again. I think the log is giving me the same error as before. Player - Drecko.log

For reference here is my log with NO mods enabled at all. Pure vanilla. Player.log

Bokonon-ONI commented 3 years ago

Hey again,

Can you please let me know how things go after the update today? If I'm reading the release notes correctly there's a really good chance that if it is my mod causing your issues that it should be fixed or at least pretty easily fixable.

If it does still crash send me the log from that attempt. Don't worry about trying it with just my mod or anything, that had no effect last time so it shouldn't matter now.

Thanks.

Bokonon-ONI commented 3 years ago

Well, either you moved on from ONI and/or this mod or haven't tried my previous suggestion. Either way I'm closing this issue since I haven't heard back in > 2 weeks. I'll gladly reopen it and look into it again if needed.