docs(G.3): file login-INTO-a-dungeon gap (streaming not recentered at login)

Re-gate of Bug A revealed: logging in with the character saved inside a far
dungeon hangs at the #107 auto-entry hold (frozen, no [snap]). The streaming
center is set once at startup to the default and the login spawn never recenters
it, so the dungeon never streams and IsSpawnCellReady never goes true. The
teleport-arrival path recenters (G.3a); the login path doesn't. Filed under #133
with the fix shape (recenter onto the spawn landblock at login) + the ACE-reset
workaround.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Erik 2026-06-13 18:39:45 +02:00
parent c8188e0ed6
commit dd7b73a837

View file

@ -70,6 +70,20 @@ pre-validation failed` spam) — re-gate after Bug A to confirm. NOTE: a render-
EnvCell hydration decouple was tried in G.3a and REVERTED (`e7058ca`) — it made the EnvCell hydration decouple was tried in G.3a and REVERTED (`e7058ca`) — it made the
player character invisible at Holtburg (it touched the shared building hydration player character invisible at Holtburg (it touched the shared building hydration
path); re-approach separately if a geometry-less collision cell ever needs it. path); re-approach separately if a geometry-less collision cell ever needs it.
**NEW GAP (2026-06-13 PM — login-INTO-a-dungeon):** logging in while the saved
character is inside a far dungeon hangs at the auto-entry hold (player frozen,
no `[snap]`/`auto-entered player mode`, movement input ignored). Root: the
streaming center is set ONCE at startup to the default (`_liveCenterX/Y = centerX/
centerY`, `GameWindow.cs:1942` → "centered on 0xA9B4FFFF") and the login spawn never
recenters it; a dungeon spawn 46 km away never streams, so `IsSpawnCellReady(spawn
cell)` stays false and the #107 hold waits forever. The TELEPORT-arrival path
recenters (G.3a `TeleportArrivalController`); the LOGIN path does not. Fix shape =
recenter streaming onto the spawn landblock when the login spawn first arrives
(mind the #107 auto-entry hold's `SampleTerrainZ(pe.Position)` frame after the
recenter). Pre-existing; only surfaces now that the test character can be saved in
a dungeon. Workaround to unblock testing: move `+Acdream` out of the dungeon
server-side (ACE) before logging in.
**Severity:** HIGH (any far/dungeon teleport is unusable) **Severity:** HIGH (any far/dungeon teleport is unusable)
**Filed:** 2026-06-13 (M1.5 dungeon-demo gate attempt — meeting-hall portal) **Filed:** 2026-06-13 (M1.5 dungeon-demo gate attempt — meeting-hall portal)
**Component:** physics/streaming — teleport-arrival snap vs async landblock hydration **Component:** physics/streaming — teleport-arrival snap vs async landblock hydration