The problem is that to figure out whether a station has docking screens, we call <GetGlobalDockScreen>. And we call this for every object, including asteroids.

There should be some way to short-circuit it since asteroids never have dock screens.

Maybe if a station has no native docking ports and no overlays (which can add docking screens) then we assume it has no dock screens.

The downside is that we won't be able to add dock screens via <GetGlobalDockScreen> for stations that don't already have docking ports (basically, asteroids). This might be OK; for those cases we just need to add an overlay.

george moromisato 29 Feb 2020:

Duplicate.