-
Notifications
You must be signed in to change notification settings - Fork 593
Open
Labels
Priority: 1-UrgentMust be resolved immediatelyMust be resolved immediately
Description
Description
The RemoveOldestFootPrint routine from the new footprints prediction ( #5111 ) is causing error spam in the console on the client when it runs. The error is this line in ClientEntityManager.cs
// Client-side entity deletion is not supported and will cause errors.
if (_client.RunLevel == ClientRunLevel.Connected || _client.RunLevel == ClientRunLevel.InGame)
LogManager.RootSawmill.Error($"Predicting the queued deletion of a networked entity: {ToPrettyString(uid.Value)}. Trace: {Environment.StackTrace}");
This was reported in #server-issues -- I'm not sure if it's actually the cause of current server issues, but it's definitely something we should fix.
Reproduction
- Boot up the game and get into a map
- Run command:
cvar footprints.max_per_grid 10to make the footprint deletion run earlier (default is 1000 footprints) - Spawn an urist and walk through puddles, as soon as you have 10+ footprints, the logs will start spamming in Content.Client console
Full error log text
[ERRO] root: Predicting the queued deletion of a networked entity: footstep (5738/n132238, Footstep). Trace: at System.Environment.get_StackTrace()
at Robust.Client.GameObjects.ClientEntityManager.QueueDeleteEntity(Nullable`1 uid) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameObjects\ClientEntityManager.cs:line 95
at Content.Shared._EE.FootPrint.Systems.FootPrintsSystem.RemoveOldestFootPrint(GridFootPrintsComponent gridFootPrints) in S:\SS14\Development\DeltaV\Delta-v\Content.Shared\_EE\Footprint\Systems\FootPrintsSystem.cs:line 257
at Content.Shared._EE.FootPrint.Systems.FootPrintsSystem.TrackFootPrint(EntityUid gridUid, NetEntity footPrintUid, Vector2i tile) in S:\SS14\Development\DeltaV\Delta-v\Content.Shared\_EE\Footprint\Systems\FootPrintsSystem.cs:line 211
at Content.Shared._EE.FootPrint.Systems.FootPrintsSystem.OnMove(Entity`1 ent, MoveEvent& args) in S:\SS14\Development\DeltaV\Delta-v\Content.Shared\_EE\Footprint\Systems\FootPrintsSystem.cs:line 159
at Robust.Shared.GameObjects.EntityEventBus.<>c__DisplayClass67_0`1.<EntSubscribe>b__0(EntityUid uid, IComponent comp, Unit& ev) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 460
at Robust.Shared.GameObjects.EntityEventBus.EntDispatch(EntityUid euid, Type eventType, Unit& args) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 633
at Robust.Shared.GameObjects.EntityEventBus.RaiseLocalEvent[TEvent](EntityUid uid, TEvent& args, Boolean broadcast) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\GameObjects\EntityEventBus.Directed.cs:line 218
at Robust.Shared.GameObjects.SharedTransformSystem.RaiseMoveEvent(Entity`2 ent, EntityUid oldParent, Vector2 oldPosition, Angle oldRotation, Nullable`1 oldMap, Boolean checkTraversal) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\GameObjects\Systems\SharedTransformSystem.cs:line 293
at Robust.Shared.Physics.Systems.SharedPhysicsSystem.UpdateBodies(IslandData& island, Vector2[] positions, Single[] angles, Vector2[] linearVelocities, Single[] angularVelocities) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\Physics\Systems\SharedPhysicsSystem.Island.cs:line 1072
at Robust.Shared.Physics.Systems.SharedPhysicsSystem.SolveIslands(List`1 islands, Single frameTime, Single dtRatio, Single invDt, Boolean prediction) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\Physics\Systems\SharedPhysicsSystem.Island.cs:line 692
at Robust.Shared.Physics.Systems.SharedPhysicsSystem.Solve(Single frameTime, Single dtRatio, Single invDt, Boolean prediction) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\Physics\Systems\SharedPhysicsSystem.Island.cs:line 551
at Robust.Shared.Physics.Systems.SharedPhysicsSystem.SimulateWorld(Single deltaTime, Boolean prediction) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\Physics\Systems\SharedPhysicsSystem.cs:line 303
at Robust.Shared.GameObjects.EntitySystemManager.TickUpdate(Single frameTime, Boolean noPredictions) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\GameObjects\EntitySystemManager.cs:line 318
at Robust.Client.GameStates.ClientGameStateManager.PredictTicks(GameTick predictionTarget) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameStates\ClientGameStateManager.cs:line 490
at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameStates\ClientGameStateManager.cs:line 472
at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameController\GameController.cs:line 562
at Robust.Shared.Timing.GameLoop.Run() in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Shared\Timing\GameLoop.cs:line 248
at Robust.Client.GameController.ContinueStartupAndLoop(DisplayMode mode) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameController\GameController.Standalone.cs:line 166
at Robust.Client.GameController.GameThreadMain(DisplayMode mode) in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameController\GameController.Standalone.cs:line 151
at Robust.Client.GameController.<>c__DisplayClass109_0.<Run>b__0() in S:\SS14\Development\DeltaV\Delta-v\RobustToolbox\Robust.Client\GameController\GameController.Standalone.cs:line 110
[INFO] system.map: Grid Voluta-92-H (129/n37821) changed parent. Old parent: Map Entity (128/n37820). New parent: Asterisk (83/n20)
Additional context
I'm afraid I don't have a lot of knowledge about SS14's prediction logic. I'm not sure what the appropriate fix is here.
Metadata
Metadata
Assignees
Labels
Priority: 1-UrgentMust be resolved immediatelyMust be resolved immediately