From 72a16a24270cfb7a59dcc8f7980c79925ff76ce5 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Wed, 11 Mar 2026 00:24:35 -0700 Subject: [PATCH] fix: clear gossip/quest POI markers on map change (SMSG_NEW_WORLD) Quest POI markers are map-specific. Clearing gossipPois_ on world entry prevents stale markers from previous maps being displayed on the new map. Quest POIs will be re-fetched as the quest log re-queries on the new map. --- src/game/game_handler.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/game/game_handler.cpp b/src/game/game_handler.cpp index afc54e80..c67a5adf 100644 --- a/src/game/game_handler.cpp +++ b/src/game/game_handler.cpp @@ -16702,6 +16702,10 @@ void GameHandler::handleNewWorld(network::Packet& packet) { entityManager.clear(); hostileAttackers_.clear(); worldStates_.clear(); + // Quest POI markers are map-specific; remove those that don't apply to the new map. + // Markers without a questId tag (data==0) are gossip-window POIs — keep them cleared + // here since gossipWindowOpen is reset on teleport anyway. + gossipPois_.clear(); worldStateMapId_ = mapId; worldStateZoneId_ = 0; activeAreaTriggers_.clear();