[#bugs] The DeploymentMaintainer part will exhaust the event pool when active and loaded...

Issue #6231 resolved
Freehold Games Bot Account created an issue

Marked for crossposting by: Noelle Lavenza (transgendeer)

Message (jump):

<Noelle Lavenza (transgendeer)> The DeploymentMaintainer part will exhaust the event pool when active and loaded while the player travels for more than 4000 segments on the world map in one movement. For normality cores, the event they fire, "CheckRealityStabilizationUsability", is never handled anywhere. Related to #2802.

Comments (5)

  1. Noelle Lavenza

    Aaaaaaaactually, it turns out the issue is a little more complex than I thought. Specifically, the maximum number of travel segments needed (maximum since the exact amount depends on how many events were already pooled) for a norm core to cause this is roughly 40000 divided by its radius squared. In practice, it will also be a bit lower (about 11% shorter) due to redundant TenTurnTick and HundredTurnTick calls on ExistenceSupport, which are redundant. This means:

    Mk III norm cores take at most 157 segments.

    Mk II norm cores take at most 625 segments.

    Mk I norm cores take at most 2500 segments.

  2. Noelle Lavenza

    Interestingly enough, it doesn’t seem that this was the entire source of the slowdown. After patching it via a Harmony patch to just use FireEvent(UsabilityEvent), which doesn’t fire the event if it’s not registered for, it stopped exceeding the event pool size, but it still remained relatively slow.

  3. Log in to comment