Truinto / ONI-Modloader-SimpleMods

OxygenNotIncluded Mods
MIT License
16 stars 6 forks source link

[Customize Buildings] Crash with Skill Station #14

Closed andr9528 closed 2 years ago

andr9528 commented 2 years ago

Describe the bug Crash when using 'Skill Station' and having the Dupe undergoing the procedure selected. Unknown if only occurs when doing Attribute increase, or if the other functions of the Skill station also behaves similarly.

To Reproduce Steps to reproduce the behavior:

  1. Enable Skill Station in settings.
  2. Open a World.
  3. Build a Skrill Scrubber.
  4. Assign a Dube with sufficient experience for procedures.
  5. Select any Attribute to increase.
  6. Select the dupe undergoing procedure.
  7. Watch Procedure.
  8. Crash.

Debug Logs

The thrown exception, as displayed by the game:

NullReferenceException: Object reference not set to an instance of an object

MinionTodoSideScreen.PopulateElements (System.Object data) (at <4d5210689d454b148ee8bf399a4b6b43>:0) Scheduler.Update () (at <4d5210689d454b148ee8bf399a4b6b43>:0) UIScheduler.Update () (at <4d5210689d454b148ee8bf399a4b6b43>:0)

Build: U33-474321-S

Desktop:

Additional context Wanted to watch the number increase on the dupe as it finished the procedure, but crashed instead. Accidentally found out the number doesn't update until world reloads or perhaps the attribute naturally increases. Works fine if anything else other than the dupe undergoing the procedure is seleccted.

Fell free to ask, if there is anything else i can supply you with.

andr9528 commented 2 years ago

Scrath the whole stats not visually updating. Number updated correctly this time for me.

StrikerMack commented 2 years ago

This happened to me as well. Deselect the duplicant when doing this and the game won't crash. If the dupe is selected when procedure completes the game will crash.

Truinto commented 2 years ago

Well, I obviously didn't test it with the dupe selected. Will look into it.

Truinto commented 2 years ago

Fixed by only updating the sidescreen, when the widget for the reset station is actually selected.