Skip to content

World Map: pre-warm terrain seed + login loading-screen map phase #23

Description

@atapifire

Observed: after login the map fills in ~10s late (cache pops in after the world is already interactive).

Measured: login → game chunkManager ready (+a few s) → our async seedWorldFromCaches (IPC load of the prebake + PNG decode + composite) completes ~+10s. Captured: nzT 0 → 98304 around +10s post-login.

Proposed:

  1. Pre-warm the seed — kick off seedWorldFromCaches as soon as mapWidth/Height are known, before the map panel is opened, so the decode is done earlier.
  2. Loading-screen phase — piggyback the vanilla login loader to add a final "Loading map…" phase + progress bar (pre-seed + pre-warm marker icons), so the map is complete on the first interactive frame. Lighter alternative: a small in-panel "loading map" spinner while the seed runs.

Note: option 2 couples to the vanilla loading-screen internals — start with the lighter in-panel version, graduate to the full piggyback once proven. Related: marker-icon caching (sibling follow-up).

Follow-up from #21.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions