Hey, I have ZERO clue how this happens, but somehow Immersive Mechanisms stops my Readied Spellcaster Hands from working. Really weird, ive been playing with it for months and now suddenly it causes issues. If I disable your mod, my RSH works, when I re-enable, my RSH stops. Ive tried changing load order. No idea why this is happening. Someone mentioned they get issues when entering that Laboratory, the comment right below mine. Might just be a coincidence but this only started happening when I entered Theodyval Laboratory.
What does your player.log says? For the moment, try to change the load order, maybe that can solve the issue temporarily. I need to fix some things on this mod but at this moment I have no time. I got an idea to fix it using another method to detect and register the mechanisms, just need some time XD
DFTFU 1.9.2: Time to update terrains: 5367ms System.NullReferenceException: Object reference not set to an instance of an object at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.Update () [0x000a3] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 [Warning] Deserialization of DaggerfallMobileUnit from Vanilla Enhanced - Villains & Monsters succeeded with messages: Ignoring type specifier; a field/property of type VillainVariety.VillainVarietyMobileUnit cannot hold an instance of VillainVariety.VillainVarietyMobileUnit Loading DungeonFinder Loaded 5 spell target icons and 5 element icons. [PreserveLastSpell] Restoring last spell: Heal Lv. 10: Next weather change: Cloudy Populated work available from NPCs. (allocated+noBuilding/candidates) Merchants: 0(+0)/0, Commoners: 0(+0)/0, Nobles: 0(+0)/0 System.NullReferenceException: Object reference not set to an instance of an object at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.OnLoadEvent (DaggerfallWorkshop.Game.Serialization.SaveData_v1 saveData) [0x00000] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0 at (wrapper delegate-invoke) <Module>.invoke_void_SaveData_v1(DaggerfallWorkshop.Game.Serialization.SaveData_v1) at DaggerfallWorkshop.Game.Serialization.SaveLoadManager.RaiseOnLoadEvent (DaggerfallWorkshop.Game.Serialization.SaveData_v1 saveData) [0x00007] in <10d69f57d88e45598ab36ac2d243732c>:0 at DaggerfallWorkshop.Game.Serialization.SaveLoadManager+<LoadGame>d__113.MoveNext () [0x0072c] in <10d69f57d88e45598ab36ac2d243732c>:0 at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00026] in <85d1d3e7744a4a47b5f51883bf40bba2>:0 DFTFU 1.9.2: Time to update location 19: 4328ms
Got this error trying to load a save inside of a dungeon (Bedard Laboratory, Daggerfall). It leaves me in a weird state of limbo where I can move my character, swing my weapons, etc. but the image from the Loading Screen mod never goes away. Made a copy of the save before disabling your mod and continuing to play. Let me know if you need it or my mod loadout for debugging purposes.
Mmm... Try to put Immersive Mechanisms on top. I believe is something related to the time that Loading Screen is making before. Idk. I am working on a big mod called RPG Horses (If you want to check it on Mod Ideas on the Discord). When I finish with it, I will fix my other mods. Thanks for the notification! I will put it on the bugs tab.
Edit: I found on the Loading Screen page a bug report that say this: Loading a savegame will occasionally (approx. 5%) soft-crash the game, loading a default character (male breton 01) and disabling all input beside basic move/look/interact, requiring closing the game by external means. Occasionally places the player in a void cell.
Most frequently encountered when reloading repeatedly in a short period of time, but that may be due to a proportional greater chance of occurrence when given multiple instances to occur in a condensed period of time.
First experienced as part of large load order, later isolated to this mod.
The Immersive Mechanisms exception occurs irregardless of what I do with Loading screen (enable/disable, top/bottom of load order, etc.)
Loading Screen above Immersive Mechanisms = No limbo state Loading Screen disabled = No limbo state Loading Screen below Immersive Mechanisms = Consistent limbo state
I'm making a separate report on the Loading Screen mod page about this, but wanted to let you know the exception is unrelated.
System.NullReferenceException: Object reference not set to an instance of an object at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <c6a09ae7e139419299b123f844b7d63b>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <c6a09ae7e139419299b123f844b7d63b>:0 at Immersive_MechanismsMod.Immersive_Mechanisms.Update () [0x000a3] in <c6a09ae7e139419299b123f844b7d63b>:0
This error is thrown upon entering the Bedard Laboratory dungeon in Daggerfall province. Fresh install and save file using only this mod.
Inside your function IdentifyDungeonChildren you call GetComponent on daggerfallAction.NextObject which is null. This probably causes the above null reference exception.
Digging through the corridors of castle sentinel rn, that dang level puzzle with the room with bars on every single door is seeming to also not line up the symbols on the levers and on the bars. which is a shame, because it's been *tremendously* helpful with the random dungeons from mages guild quests i've done so far.
So far works great! Had to move it around my order a little bit to get it to work, but I'm pretty new so I think it's my fault. Gonna try it out on some new dungeons that I don't know already to see if it really makes the difference I hope it does!
Not sure where to best put my findings - but I have had a few times that I felt like either the tags "changed" when re-loading or just randomly at some point (but that could just be my fault and I don't have any concrete examples.
However, I do have one specific example where the activated object (a corridor) had an immersive symbol but the triggering object (a movable torch on the wall) did not have an immersive symbol. This is specifically in the dungeon "Shedungent" when retrieving the horn (at least that's when I first visited the dungeon).
Edit: Just tested real quick, it does appear that the tags change if you re-load a save in the dungeon. It seems to keep the color but the symbol specifically changes everytime
Does this only happen in that dungeon? Does it happen to all the mechanisms in that dungeon or just that one? In theory it should use the same generation seed and therefore should always give the same thing, but I don't know if that dungeon changes its ID or if the specific mechanism has something to do with it.
Edit: I might use save data in the next update to avoid causing that error when loading into the same dungeon.
I'll test out those things next time I find a dungeon with a fair number of mechanisms. I don't usually find to many in one dungeon with the smaller dungeons feature on (don't know how that effects things either) but in the example I originally posted for context that is a main story dungeon, so it's not like a randomly generated one (again, not sure if that would maybe cause different behavior).
Cool mod, I have been looking for something like this, but it would tell you "you hear a loud door opening towards the [cardinal direction]". This would be so you can easily identify the context of the mechanism.
This was an idea discussed on Discord. That couldn't help much because some mechanisms are far away each other and the cardinal directions does not say anything to the player. Maybe if more people ask for it I could do an update with that option.
19 comments
System.NullReferenceException: Object reference not set to an instance of an object
at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.Update () [0x000a3] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
[Warning] Deserialization of DaggerfallMobileUnit from Vanilla Enhanced - Villains & Monsters succeeded with messages:
Ignoring type specifier; a field/property of type VillainVariety.VillainVarietyMobileUnit cannot hold an instance of VillainVariety.VillainVarietyMobileUnit
Loading DungeonFinder
Loaded 5 spell target icons and 5 element icons.
[PreserveLastSpell] Restoring last spell: Heal Lv. 10:
Next weather change: Cloudy
Populated work available from NPCs. (allocated+noBuilding/candidates) Merchants: 0(+0)/0, Commoners: 0(+0)/0, Nobles: 0(+0)/0
System.NullReferenceException: Object reference not set to an instance of an object
at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.OnLoadEvent (DaggerfallWorkshop.Game.Serialization.SaveData_v1 saveData) [0x00000] in <a13f2604d9dc41e6ad1b5dc7a8991e68>:0
at (wrapper delegate-invoke) <Module>.invoke_void_SaveData_v1(DaggerfallWorkshop.Game.Serialization.SaveData_v1)
at DaggerfallWorkshop.Game.Serialization.SaveLoadManager.RaiseOnLoadEvent (DaggerfallWorkshop.Game.Serialization.SaveData_v1 saveData) [0x00007] in <10d69f57d88e45598ab36ac2d243732c>:0
at DaggerfallWorkshop.Game.Serialization.SaveLoadManager+<LoadGame>d__113.MoveNext () [0x0072c] in <10d69f57d88e45598ab36ac2d243732c>:0
at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00026] in <85d1d3e7744a4a47b5f51883bf40bba2>:0
DFTFU 1.9.2: Time to update location 19: 4328ms
Got this error trying to load a save inside of a dungeon (Bedard Laboratory, Daggerfall). It leaves me in a weird state of limbo where I can move my character, swing my weapons, etc. but the image from the Loading Screen mod never goes away. Made a copy of the save before disabling your mod and continuing to play. Let me know if you need it or my mod loadout for debugging purposes.
Edit: I found on the Loading Screen page a bug report that say this:
Loading a savegame will occasionally (approx. 5%) soft-crash the game, loading a default character (male breton 01) and disabling all input beside basic move/look/interact, requiring closing the game by external means. Occasionally places the player in a void cell.
Most frequently encountered when reloading repeatedly in a short period of time, but that may be due to a proportional greater chance of occurrence when given multiple instances to occur in a condensed period of time.
First experienced as part of large load order, later isolated to this mod.
Maybe its Loading Screen whats causing the bug.
Loading Screen above Immersive Mechanisms = No limbo state
Loading Screen disabled = No limbo state
Loading Screen below Immersive Mechanisms = Consistent limbo state
I'm making a separate report on the Loading Screen mod page about this, but wanted to let you know the exception is unrelated.
Edit: Bug report on Loading Screen mod page
Edit:
System.NullReferenceException: Object reference not set to an instance of an object
at Immersive_MechanismsMod.Immersive_Mechanisms.AssignRandomNameToNextObjects (DaggerfallWorkshop.DaggerfallAction daggerfallAction, System.String randomName, System.Random random) [0x000c7] in <c6a09ae7e139419299b123f844b7d63b>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.IdentifyDungeonChildren () [0x001f2] in <c6a09ae7e139419299b123f844b7d63b>:0
at Immersive_MechanismsMod.Immersive_Mechanisms.Update () [0x000a3] in <c6a09ae7e139419299b123f844b7d63b>:0
This error is thrown upon entering the Bedard Laboratory dungeon in Daggerfall province. Fresh install and save file using only this mod.
Inside your function IdentifyDungeonChildren you call GetComponent on daggerfallAction.NextObject which is null. This probably causes the above null reference exception.
which is a shame, because it's been *tremendously* helpful with the random dungeons from mages guild quests i've done so far.
However, I do have one specific example where the activated object (a corridor) had an immersive symbol but the triggering object (a movable torch on the wall) did not have an immersive symbol. This is specifically in the dungeon "Shedungent" when retrieving the horn (at least that's when I first visited the dungeon).
Edit: Just tested real quick, it does appear that the tags change if you re-load a save in the dungeon. It seems to keep the color but the symbol specifically changes everytime
Edit: I might use save data in the next update to avoid causing that error when loading into the same dungeon.