Skip to content

Building a mech fails debug assert - crashes server in debug #40975

@TheGrimbeeper

Description

@TheGrimbeeper

What version did the issue occur in?

No response

Description

When building a Mech (HAMTR, HONK, etc), and attaching the last limb, server crashes when built in debug mode due to failed debug assertion.

crash.mp4

Reproduction

  1. Launch version in debug mode (not release mode)
  2. Spawn in mech harness and limbs (e.g HAMTR harness, HAMTR left arm, HAMTR left leg, HAMTR right arm, HAMTR right leg)
  3. Place all limbs except one on the mech harness.
  4. Placing final limb results in a crash.

Additional Context

Stacktrace:

[FATL] unhandled: Robust.Shared.Utility.DebugAssertException: Exception of type 'Robust.Shared.Utility.DebugAssertException' was thrown.
   at Robust.Shared.Utility.DebugTools.Assert(Boolean condition) in space-station-14\RobustToolbox\Robust.Shared\Utility\DebugTools.cs:line 37
   at Content.Server.Construction.ConstructionSystem.HandleStep(EntityUid uid, Object ev, ConstructionGraphStep step, Boolean validation, Nullable`1& user, ConstructionComponent construction) in space-station-14\Content.Server\Construction\ConstructionSystem.Interactions.cs:line 209
   at Content.Server.Construction.ConstructionSystem.HandleEdge(EntityUid uid, Object ev, ConstructionGraphEdge edge, Boolean validation, ConstructionComponent construction) in space-station-14\Content.Server\Construction\ConstructionSystem.Interactions.cs:line 159
   at Content.Server.Construction.ConstructionSystem.HandleNode(EntityUid uid, Object ev, ConstructionGraphNode node, Boolean validation, ConstructionComponent construction) in space-station-14\Content.Server\Construction\ConstructionSystem.Interactions.cs:line 104
   at Content.Server.Construction.ConstructionSystem.HandleEvent(EntityUid uid, Object ev, Boolean validation, ConstructionComponent construction) in space-station-14\Content.Server\Construction\ConstructionSystem.Interactions.cs:line 80
   at Content.Server.Construction.ConstructionSystem.EnqueueEvent(EntityUid uid, ConstructionComponent construction, Object args) in space-station-14\Content.Server\Construction\ConstructionSystem.Interactions.cs:line 575
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass54_0`2.<SubscribeLocalEvent>g__EventHandler|0(EntityUid uid, IComponent comp, TEvent& args) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 272
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass67_0`1.<EntSubscribe>b__0(EntityUid uid, IComponent comp, Unit& ev) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 460
   at Robust.Shared.GameObjects.EntityEventBus.EntDispatch(EntityUid euid, Type eventType, Unit& args) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 634
   at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalEventCore(EntityUid uid, Unit& unitRef, Type type, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 240
   at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalEvent[TEvent](EntityUid uid, TEvent args, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 200
   at Robust.Shared.GameObjects.EntitySystem.RaiseLocalEvent[TEvent](EntityUid uid, TEvent args, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntitySystem.cs:line 161
   at Content.Shared.Construction.PartAssemblySystem.TryInsertPart(EntityUid part, EntityUid uid, PartAssemblyComponent component) in space-station-14\Content.Shared\Construction\PartAssemblySystem.cs:line 82
   at Content.Shared.Construction.PartAssemblySystem.OnInteractUsing(EntityUid uid, PartAssemblyComponent component, InteractUsingEvent args) in space-station-14\Content.Shared\Construction\PartAssemblySystem.cs:line 31
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass54_0`2.<SubscribeLocalEvent>g__EventHandler|0(EntityUid uid, IComponent comp, TEvent& args) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 272
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass67_0`1.<EntSubscribe>b__0(EntityUid uid, IComponent comp, Unit& ev) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 460
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass76_1.<EntCollectOrdered>b__0(Unit& ev) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 664
   at Robust.Shared.GameObjects.EntityEventBus.DispatchOrderedEvents(Unit& eventArgs, ValueList`1& found) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Ordering.cs:line 52
   at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalOrdered(EntityUid uid, Type eventType, EventData subs, Unit& unitRef, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Ordering.cs:line 43
   at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalEventCore(EntityUid uid, Unit& unitRef, Type type, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 236
   at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalEvent[TEvent](EntityUid uid, TEvent args, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 200
   at Robust.Shared.GameObjects.EntitySystem.RaiseLocalEvent[TEvent](EntityUid uid, TEvent args, Boolean broadcast) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntitySystem.cs:line 161
   at Content.Shared.Interaction.SharedInteractionSystem.InteractUsing(EntityUid user, EntityUid used, EntityUid target, EntityCoordinates clickLocation, Boolean checkCanInteract, Boolean checkCanUse) in space-station-14\Content.Shared\Interaction\SharedInteractionSystem.cs:line 1052
   at Content.Shared.Interaction.SharedInteractionSystem.UserInteraction(EntityUid user, EntityCoordinates coordinates, Nullable`1 target, Boolean altInteract, Boolean checkCanInteract, Boolean checkAccess, Boolean checkCanUse) in space-station-14\Content.Shared\Interaction\SharedInteractionSystem.cs:line 457
   at Content.Shared.Interaction.SharedInteractionSystem.HandleUseInteraction(ICommonSession session, EntityCoordinates coords, EntityUid uid) in space-station-14\Content.Shared\Interaction\SharedInteractionSystem.cs:line 331
   at Robust.Shared.Input.Binding.PointerInputCmdHandler.<>c__DisplayClass5_0.<.ctor>b__0(PointerInputCmdArgs& args) in space-station-14\RobustToolbox\Robust.Shared\Input\Binding\InputCmdHandler.cs:line 97
   at Robust.Shared.Input.Binding.PointerInputCmdHandler.HandleCmdMessage(IEntityManager entManager, ICommonSession session, IFullInputCmdMessage message) in space-station-14\RobustToolbox\Robust.Shared\Input\Binding\InputCmdHandler.cs:line 127
   at Robust.Server.GameObjects.InputSystem.InputMessageHandler(InputCmdMessage message, EntitySessionEventArgs eventArgs) in space-station-14\RobustToolbox\Robust.Server\GameObjects\EntitySystems\InputSystem.cs:line 65
   at Robust.Shared.GameObjects.EventBusExt.HandlerWrapper`1.Invoke(EntitySessionMessage`1 msg) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EventBusExt.cs:line 46
   at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass4_0`1.<SubscribeEvent>b__0(Unit& ev) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Broadcast.cs:line 173
   at Robust.Shared.GameObjects.EntityEventBus.ProcessSingleEventCore(EventSource source, Unit& unitRef, EventData subs) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Broadcast.cs:line 335
   at Robust.Shared.GameObjects.EntityEventBus.ProcessSingleEvent(EventSource source, Unit& unitRef, Type eventType) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Broadcast.cs:line 324
   at Robust.Shared.GameObjects.EntityEventBus.RaiseEvent(EventSource source, Object toRaise) in space-station-14\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Broadcast.cs:line 267
   at Robust.Server.GameObjects.ServerEntityManager.<Initialize>b__8_0(Object _, Object systemMsg) in space-station-14\RobustToolbox\Robust.Server\GameObjects\ServerEntityManager.cs:line 53
   at Robust.Server.GameObjects.ServerEntityManager.DispatchEntityNetworkMessage(MsgEntity message) in space-station-14\RobustToolbox\Robust.Server\GameObjects\ServerEntityManager.cs:line 257
   at Robust.Server.GameObjects.ServerEntityManager.TickUpdate(Single frameTime, Boolean noPredictions, Histogram histogram) in space-station-14\RobustToolbox\Robust.Server\GameObjects\ServerEntityManager.cs:line 166
   at Robust.Server.BaseServer.Update(FrameEventArgs frameEventArgs) in space-station-14\RobustToolbox\Robust.Server\BaseServer.cs:line 732
   at Robust.Server.BaseServer.<SetupMainLoop>b__67_1(Object sender, FrameEventArgs args) in space-station-14\RobustToolbox\Robust.Server\BaseServer.cs:line 545
   at Robust.Shared.Timing.GameLoop.Run() in space-station-14\RobustToolbox\Robust.Shared\Timing\GameLoop.cs:line 243
   at Robust.Server.BaseServer.MainLoop() in space-station-14\RobustToolbox\Robust.Server\BaseServer.cs:line 572
   at Robust.Server.Program.ParsedMain(CommandLineArgs args, Boolean contentStart, ServerOptions options) in space-station-14\RobustToolbox\Robust.Server\Program.cs:line 74
   at Robust.Server.Program.Start(String[] args, ServerOptions options, Boolean contentStart) in space-station-14\RobustToolbox\Robust.Server\Program.cs:line 42
   at Robust.Server.ContentStart.Start(String[] args) in space-station-14\RobustToolbox\Robust.Server\ContentStart.cs:line 10
   at Content.Server.Program.Main(String[] args) in space-station-14\Content.Server\Program.cs:line 9

Metadata

Metadata

Assignees

No one assigned

    Labels

    S: UntriagedStatus: Indicates an item has not been triaged and doesn't have appropriate labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions