OwendB1 / SE-Ship_Class_System

Blue's SE Ship Class Mod
2 stars 3 forks source link

client crash to desktop #21

Closed skiittz closed 4 months ago

skiittz commented 4 months ago

mod running on dedicated server, join server and select med room to respawn at:

2024-07-07 10:04:10.987 - Thread: 1 -> Exception: System.NullReferenceException: Object reference not set to an instance of an object. at ShipClassSystem.CubeGridLogic.EnforceBlockPunishment(IMyCubeBlock block) at System.Action1.Invoke(T obj) at Sandbox.Game.Entities.MyCubeGrid.NotifyBlockOwnershipChange_Patch1(MyCubeGrid this) at Sandbox.Game.Entities.Cube.MyCubeGridOwnershipManager.RecalculateOwnersInternal(Boolean updatePlayerGrids) at Sandbox.Game.Entities.MyCubeGrid.get_BigOwners() at ShipClassSystem.Utils.GetOwningFaction(IMyCubeGrid grid) at ShipClassSystem.CubeGridLogic.Initialize(IMyEntity entity) at Sandbox.Game.World.MySession.UpdateComponents() at Sandbox.Game.World.MySession.Update(MyTimeSpan updateTime) at Sandbox.MySandboxGame.Update() at Sandbox.Engine.Platform.Game.UpdateInternal() at Sandbox.Engine.Platform.Game.RunSingleFrame() at Sandbox.Engine.Platform.FixedLoop.<>c__DisplayClass11_0.<Run>b__0() at Sandbox.Engine.Platform.GenericLoop.Run(VoidAction tickCallback) at Sandbox.Engine.Platform.Game.RunLoop() at Sandbox.MySandboxGame.Run(Boolean customRenderLoop, Action disposeSplashScreen) at SpaceEngineers.MyProgram.Main(String[] args) 2024-07-07 10:04:11.013 - Thread: 1 -> Exception occurred: System.NullReferenceException: Object reference not set to an instance of an object. at ShipClassSystem.CubeGridLogic.EnforceBlockPunishment(IMyCubeBlock block) at System.Action1.Invoke(T obj) at Sandbox.Game.Entities.MyCubeGrid.NotifyBlockOwnershipChange_Patch1(MyCubeGrid this) at Sandbox.Game.Entities.Cube.MyCubeGridOwnershipManager.RecalculateOwnersInternal(Boolean updatePlayerGrids) at Sandbox.Game.Entities.MyCubeGrid.get_BigOwners() at ShipClassSystem.Utils.GetOwningFaction(IMyCubeGrid grid) at ShipClassSystem.CubeGridLogic.Initialize(IMyEntity entity) at Sandbox.Game.World.MySession.UpdateComponents() at Sandbox.Game.World.MySession.Update(MyTimeSpan updateTime) at Sandbox.MySandboxGame.Update() at Sandbox.Engine.Platform.Game.UpdateInternal() at Sandbox.Engine.Platform.Game.RunSingleFrame() at Sandbox.Engine.Platform.FixedLoop.<>cDisplayClass11_0.b0() at Sandbox.Engine.Platform.GenericLoop.Run(VoidAction tickCallback) at Sandbox.Engine.Platform.Game.RunLoop() at Sandbox.MySandboxGame.Run(Boolean customRenderLoop, Action disposeSplashScreen) at SpaceEngineers.MyProgram.Main(String[] args) at avaness.SpaceEngineersLauncher.Program.StartSpaceEngineers(String[] args) at avaness.SpaceEngineersLauncher.Program.Main(String[] args) 2024-07-07 10:04:11.013 - Thread: 1 -> Showing message 2024-07-07 10:04:11.013 - Thread: 1 -> MyInitializer.OnCrash 2024-07-07 10:04:11.013 - Thread: 1 -> var exception = System.NullReferenceException: Object reference not set to an instance of an object. at ShipClassSystem.CubeGridLogic.EnforceBlockPunishment(IMyCubeBlock block) at System.Action`1.Invoke(T obj) at Sandbox.Game.Entities.MyCubeGrid.NotifyBlockOwnershipChange_Patch1(MyCubeGrid this) at Sandbox.Game.Entities.Cube.MyCubeGridOwnershipManager.RecalculateOwnersInternal(Boolean updatePlayerGrids) at Sandbox.Game.Entities.MyCubeGrid.get_BigOwners() at ShipClassSystem.Utils.GetOwningFaction(IMyCubeGrid grid) at ShipClassSystem.CubeGridLogic.Initialize(IMyEntity entity) at Sandbox.Game.World.MySession.UpdateComponents() at Sandbox.Game.World.MySession.Update(MyTimeSpan updateTime) at Sandbox.MySandboxGame.Update() at Sandbox.Engine.Platform.Game.UpdateInternal() at Sandbox.Engine.Platform.Game.RunSingleFrame() at Sandbox.Engine.Platform.FixedLoop.<>cDisplayClass11_0.b0() at Sandbox.Engine.Platform.GenericLoop.Run(VoidAction tickCallback) at Sandbox.Engine.Platform.Game.RunLoop() at Sandbox.MySandboxGame.Run(Boolean customRenderLoop, Action disposeSplashScreen) at SpaceEngineers.MyProgram.Main(String[] args) at avaness.SpaceEngineersLauncher.Program.StartSpaceEngineers(String[] args) at avaness.SpaceEngineersLauncher.Program.Main(String[] args)

skiittz commented 4 months ago

any progress on this one? It's causing my server to be unusable atm bc spawning in is an immediate client crash to desktop.

It appears to be occurring in CubeGridLogic.cs, between lines 595 and 616 (called EnforceBlockPunishment with no parameters as part of the initialization). Was running fine prior to recent updates.

skiittz commented 4 months ago

additional info....i think its related to the config update, even though i updated my config file to match the new format, something didnt like being upgraded. bc deleting the config fixed it. Now i need to redo all my configs from scratch i guess.

Could it be related to not having any no fly zones set up at all i wonder....

Blues-Hailfire commented 4 months ago

Not yet will ping OB, Enforcement of limits is his department. Having no fly zones should not be an issue.

Blues-Hailfire commented 4 months ago

If I had to bet it's the new setting OB added to to blocklimits...

OwendB1 commented 4 months ago

That is a very weird one, I don't think it is related to the new setting I added as it is not used within enforce punishment. Send me your old config pls.

skiittz commented 4 months ago

unfortunately i had a dumb dumb moment and didnt think to save the file.

I would just close this one as unreproduceable, as deleting the config fixed it.

Blues-Hailfire commented 4 months ago

ok

Blues-Hailfire commented 4 months ago

skiittz Requested Closing