space-wizards / RobustToolbox

Robust multiplayer game engine, used by Space Station 14
https://spacestation14.io
Other
552 stars 413 forks source link

Broadphase related exceptions #3402

Closed ElectroJr closed 1 year ago

ElectroJr commented 2 years ago
metalgearsloth commented 2 years ago

One side thing I noticed is that on DetachParentToNull an entity recursively updates its children during deletion which is also some duplicate work.

metalgearsloth commented 2 years ago

So if anyone else wants to help, the issue is that there's a desync between GetBroadphase and the data the entity's stuff is actually on. This means it will remove proxies for a graph it's not on so any time an entity is going from one broadphase to another it has a high chance of desyncing.

Previously we shitcoded around ordering issues by just storing the broadphase component on entities.

metalgearsloth commented 2 years ago

image

Just got one on 0.59.0.0

On my mob's FindContacts it threw the assert for the flare gun not being collidable.

image