安装 Steam
登录
|
语言
繁體中文(繁体中文)
日本語(日语)
한국어(韩语)
ไทย(泰语)
български(保加利亚语)
Čeština(捷克语)
Dansk(丹麦语)
Deutsch(德语)
English(英语)
Español-España(西班牙语 - 西班牙)
Español - Latinoamérica(西班牙语 - 拉丁美洲)
Ελληνικά(希腊语)
Français(法语)
Italiano(意大利语)
Bahasa Indonesia(印度尼西亚语)
Magyar(匈牙利语)
Nederlands(荷兰语)
Norsk(挪威语)
Polski(波兰语)
Português(葡萄牙语 - 葡萄牙)
Português-Brasil(葡萄牙语 - 巴西)
Română(罗马尼亚语)
Русский(俄语)
Suomi(芬兰语)
Svenska(瑞典语)
Türkçe(土耳其语)
Tiếng Việt(越南语)
Українська(乌克兰语)
报告翻译问题
Can you include the crash log (or just the stacktrace part) though?
I have something like this in logs. This happened when player was trying to weld small to large block.
03:02:26.8885 [FATAL] Initializer: System.NullReferenceException: Object reference not set to an instance of an object.
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroupBase.UpdateParenting(ParentingSetup parentingSetup, Int64 currentParentId)
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.UpdateEntitySupport()
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Serialize(BitStream stream, Endpoint forClient, MyTimeSpan serverTimestamp, MyTimeSpan lastClientTimestamp, Byte packetId, Int32 maxBitPosition, HashSet`1 cachedData)
at VRage.Network.MyClient.Serialize(IMyStateGroup group, BitStream sendStream, MyTimeSpan timeStamp, Int32 messageBitSize)
at VRage.Network.MyClient.SendStateSync(MyStateDataEntry stateGroupEntry, Int32 mtuBytes, MyPacketDataBitStreamBase& data, MyTimeSpan serverTimeStamp)
at VRage.Network.MyReplicationServer.FilterStateSync(MyClient client)
at VRage.Network.MyReplicationServer.SendUpdate()
at Sandbox.Engine.Multiplayer.MyMultiplayerBase.Tick()
at Sandbox.Engine.Multiplayer.MyDedicatedServerBase.Tick()
at Sandbox.Game.World.MySession.Update(MyTimeSpan updateTime)
at Sandbox.MySandboxGame.Update()
at Sandbox.Engine.Platform.Game.UpdateInternal()
at Patched_Sandbox.Engine.Platform.GameRunSingleFrame_0(Object )
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 Torch.VRageGame.DoStart() in C:\jenkins\workspace\Torch_Torch_master\Torch\VRageGame.cs:line 246
at Torch.VRageGame.Run() in C:\jenkins\workspace\Torch_Torch_master\Torch\VRageGame.cs:line 125
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
System.NullReferenceException: Object reference not set to an instance of an object.
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroupBase.UpdateParenting(ParentingSetup parentingSetup, Int64 currentParentId)
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.UpdateEntitySupport()
at Sandbox.Game.Replication.StateGroups.MyEntityPhysicsStateGroup.Serialize(BitStream stream, Endpoint forClient, MyTimeSpan serverTimestamp, MyTimeSpan lastClientTimestamp, Byte packetId, Int32 maxBitPosition, HashSet`1 cachedData)
at VRage.Network.MyClient.Serialize(IMyStateGroup group, BitStream sendStream, MyTimeSpan timeStamp, Int32 messageBitSize)
at VRage.Network.MyClient.SendStateSync(MyStateDataEntry stateGroupEntry, Int32 mtuBytes, MyPacketDataBitStreamBase& data, MyTimeSpan serverTimeStamp)
at VRage.Network.MyReplicationServer.FilterStateSync(MyClient client)
at VRage.Network.MyReplicationServer.SendUpdate()
at Sandbox.Engine.Multiplayer.MyMultiplayerBase.Tick()
at Sandbox.Engine.Multiplayer.MyDedicatedServerBase.Tick()
at Sandbox.Game.World.MySession.Update(MyTimeSpan updateTime)
at Sandbox.MySandboxGame.Update()
at Sandbox.Engine.Platform.Game.UpdateInternal()
at Patched_Sandbox.Engine.Platform.GameRunSingleFrame_0(Object )
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 Torch.VRageGame.DoStart() in C:\jenkins\workspace\Torch_Torch_master\Torch\VRageGame.cs:line 246
at Torch.VRageGame.Run() in C:\jenkins\workspace\Torch_Torch_master\Torch\VRageGame.cs:line 125
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
I also tested it and it does not want to recognize a small pad near a large pad, let alone merge it.
So I don't know what's going on for you there...
Can you send the grids they used (or the world with everything else deleted from it)?
Apologize but turns out this happened when Player was trying to use weld pad on the rotor with small head, but I'm not able to reproduce it either :(
If I spot this issue again I will send world + details
Thanks
After lots of debugging I can't find the issue in my mod (it also doesn't happen with vanilla merges), but I did find the issue in their code: the NRE happens from them trying to read a grid that's MarkedForClose and its physics are null, and they're accessing Physics without nullcheck.
I've reported this to the devs and hopefully they'll change one word in their code to fix this (as I've provided the cause and fix xD).