Ludeon Forums

RimWorld => Bugs => Topic started by: occam1st on June 28, 2020, 01:09:07 PM

Title: [1.1.2654 Core] Incident / story teller default params bug
Post by: occam1st on June 28, 2020, 01:09:07 PM
Hi,
since verison 1.1.2647 (Core, no royalty installed) there is a bug with the incident system and/or storyteller.
You can provoke one error but trying the "Future Incident" or "Future Incident Current Map" via debug logging menu.

Exception filling window for Verse.Dialog_DebugOutputMenu: System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.StorytellerComp_OnOffCycle.ToString () [0x00023] in <0de063f107214aa3839ba3ee388b65f4>:0
  at RimWorld.StorytellerUtility.ShowFutureIncidentsDebugLogFloatMenu (System.Boolean currentMapOnly) [0x00065] in <0de063f107214aa3839ba3ee388b65f4>:0
  at Verse.DebugOutputsIncidents.FutureIncidentsCurrentMap () [0x00000] in <0de063f107214aa3839ba3ee388b65f4>:0
  at Verse.Dialog_DebugOptionLister.DebugAction (System.String label, System.Action action) [0x0003e] in <0de063f107214aa3839ba3ee388b65f4>:0
  at Verse.Dialog_DebugOutputMenu.DoListingItems () [0x0003f] in <0de063f107214aa3839ba3ee388b65f4>:0
  at Verse.Dialog_OptionLister.DoWindowContents (UnityEngine.Rect inRect) [0x000fb] in <0de063f107214aa3839ba3ee388b65f4>:0
  at Verse.Window.InnerWindowOnGUI (System.Int32 x) [0x00165] in <0de063f107214aa3839ba3ee388b65f4>:0
Verse.Log:Error(String, Boolean)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)


Also while playing, there seems to be an issue with one incident type (ore more) not working properly and resulting in this error:

Trying to get default parms for null incident category.
Verse.Log:Warning(String, Boolean)
RimWorld.StorytellerUtility:DefaultParmsNow(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp:GenerateParms(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp_OnOffCycle:GenerateIncident(IIncidentTarget)
RimWorld.<MakeIntervalIncidents>d__2:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__19:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__18:MoveNext()
RimWorld.Storyteller:StorytellerTick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.StorytellerUtility.DefaultParmsNow (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x0001b] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp.GenerateParms (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x00000] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle.GenerateIncident (RimWorld.IIncidentTarget target) [0x0000c] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle+<MakeIntervalIncidents>d__2.MoveNext () [0x00119] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__19.MoveNext () [0x00171] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__18.MoveNext () [0x000a1] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller.StorytellerTick () [0x00042] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at Verse.TickManager.DoSingleTick () [0x00109] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
Verse.Log:Error(String, Boolean)
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()


This also affects the last version 1.1.2647.

Hope this bug report is properly done this way. If more information is needed, please point me in the right direction. Thanks!

Title: Re: [1.1.2654 Core] Incident / story teller default params bug
Post by: roflburger2010 on July 12, 2020, 10:32:40 PM
Just made an account to say this has been happening to me ever since I reinstalled the game a week or two ago.  (Version 1.1.2654)

I don't have the Royal DLC or any Mods installed. Anyway, here is my debug log to hopefully shed more light on the issue.

Trying to get default parms for null incident category.
Verse.Log:Warning(String, Boolean)
RimWorld.StorytellerUtility:DefaultParmsNow(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp:GenerateParms(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp_OnOffCycle:GenerateIncident(IIncidentTarget)
RimWorld.<MakeIntervalIncidents>d__2:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__19:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__18:MoveNext()
RimWorld.Storyteller:StorytellerTick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.StorytellerUtility.DefaultParmsNow (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x0001b] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp.GenerateParms (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x00000] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle.GenerateIncident (RimWorld.IIncidentTarget target) [0x0000c] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle+<MakeIntervalIncidents>d__2.MoveNext () [0x00119] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__19.MoveNext () [0x00171] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__18.MoveNext () [0x000a1] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller.StorytellerTick () [0x00042] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at Verse.TickManager.DoSingleTick () [0x00109] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
Verse.Log:Error(String, Boolean)
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()



As of yet I can't see any correlation between this error and anything occuring on my map, I think it's releated to the random events as I haven't received any pop up at all in this play through.

I get raids just fine though, go figure haha.
Title: Re: [1.1.2654 Core] Incident / story teller default params bug
Post by: roflburger2010 on July 13, 2020, 01:43:11 AM
Fresh install of the game on a new world still causes this error to occur.

RimWorld 1.1.2654 rev672
Verse.Log:Message(String, Boolean)
RimWorld.VersionControl:LogVersionNumber()
Verse.Root:CheckGlobalInit()
Verse.Root:Start()
Verse.Root_Entry:Start()

Initializing new game with mods:
  - Ludeon.RimWorld
Verse.Log:Message(String, Boolean)
Verse.Game:InitNewGame()
Verse.<>c:<Start>b__1_2()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.<>c:<UpdateCurrentAsynchronousEvent>b__27_0()
System.Threading.ThreadHelper:ThreadStart_Context(Object)
System.Threading.ExecutionContext:RunInternal(ExecutionContext, ContextCallback, Object, Boolean)
System.Threading.ExecutionContext:Run(ExecutionContext, ContextCallback, Object, Boolean)
System.Threading.ExecutionContext:Run(ExecutionContext, ContextCallback, Object)
System.Threading.ThreadHelper:ThreadStart()

Trying to get default parms for null incident category.
Verse.Log:Warning(String, Boolean)
RimWorld.StorytellerUtility:DefaultParmsNow(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp:GenerateParms(IncidentCategoryDef, IIncidentTarget)
RimWorld.StorytellerComp_OnOffCycle:GenerateIncident(IIncidentTarget)
RimWorld.<MakeIntervalIncidents>d__2:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__19:MoveNext()
RimWorld.<MakeIncidentsForInterval>d__18:MoveNext()
RimWorld.Storyteller:StorytellerTick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.StorytellerUtility.DefaultParmsNow (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x0001b] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp.GenerateParms (RimWorld.IncidentCategoryDef incCat, RimWorld.IIncidentTarget target) [0x00000] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle.GenerateIncident (RimWorld.IIncidentTarget target) [0x0000c] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.StorytellerComp_OnOffCycle+<MakeIntervalIncidents>d__2.MoveNext () [0x00119] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__19.MoveNext () [0x00171] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller+<MakeIncidentsForInterval>d__18.MoveNext () [0x000a1] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at RimWorld.Storyteller.StorytellerTick () [0x00042] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
  at Verse.TickManager.DoSingleTick () [0x00109] in <0ee2c524c4be441e9b7f8bfcb20aca6f>:0
Verse.Log:Error(String, Boolean)
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()


Could be the same error as last time. However this has a little more info as well as the benefit of being from a clean install.

Going to add some more details here:

All pawns were asleep at the time.
4h, 3rd of Jugust in game.
I was fast fowarding (max speed) through my pawns rest when the debug log appeared.
I had development mode enabled.
Title: Re: [1.1.2654 Core] Incident / story teller default params bug
Post by: ison on July 24, 2020, 11:37:55 AM
Thanks, we'll check it.