Symptom
Relogging during Man0l0 SEQ_005 strands the character: the player lands in the boat interior with no armed ENPCs and no route back into the deck-fight content area. Live 2026-07-04 evidence: onBeginLogin emits 0 commands on every relog vs 10 on a fresh login.
Mechanism
build_player_snapshot_for_login hardcodes the login snapshot's quest list —
map-server/src/processor.rs:10289:
active_quests: Vec::new(),
— even though the quest journal is hydrated from the DB. So player:HasQuest(110001) is always false at login and player.lua's zone-193 reconnect branch is dead code. Compounding it, man0l0.lua's SEQ_005 onStateChange branch is empty, so nothing re-arms the sequence on re-entry.
Suggested fix
- Populate
active_quests from the hydrated journal in the login snapshot.
- Decide the intended SEQ_005 relog semantics — re-enter the content instance vs restart the sequence (
StartSequence(5) + content re-create) — and implement it in the reconnect branch.
The two test characters in a dev DB parked in zone 193 (Asdf Asdf seq=5/flags=15, Jkl Jkl seq=0) are a ready-made repro.
Found during the Ubuntu opening-quest root-cause investigation (branch feature/ubuntu, commit f6897e5).
Symptom
Relogging during Man0l0 SEQ_005 strands the character: the player lands in the boat interior with no armed ENPCs and no route back into the deck-fight content area. Live 2026-07-04 evidence:
onBeginLoginemits 0 commands on every relog vs 10 on a fresh login.Mechanism
build_player_snapshot_for_loginhardcodes the login snapshot's quest list —map-server/src/processor.rs:10289:— even though the quest journal is hydrated from the DB. So
player:HasQuest(110001)is always false at login andplayer.lua's zone-193 reconnect branch is dead code. Compounding it,man0l0.lua's SEQ_005onStateChangebranch is empty, so nothing re-arms the sequence on re-entry.Suggested fix
active_questsfrom the hydrated journal in the login snapshot.StartSequence(5)+ content re-create) — and implement it in the reconnect branch.The two test characters in a dev DB parked in zone 193 (
Asdf Asdfseq=5/flags=15,Jkl Jklseq=0) are a ready-made repro.Found during the Ubuntu opening-quest root-cause investigation (branch
feature/ubuntu, commit f6897e5).