From afb58e1c2f5ead035970fc973dfd58fd34c21a0d Mon Sep 17 00:00:00 2001 From: Xurkon Date: Thu, 21 May 2026 19:41:03 -0500 Subject: [PATCH] fix(quest): learned spawns suppressed after quest re-accept The monster handler replaced spawns with learned data when prioritizeMyData was enabled but didn't set isLearned=true on monsterData. The prioritizeMyData filter in PopulateObjective checked 'if not spawnData.isLearned' and suppressed the spawn, causing pins to not render after quest abandon+re-accept cycle. --- Modules/Quest/QuestieQuestPrivates.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Modules/Quest/QuestieQuestPrivates.lua b/Modules/Quest/QuestieQuestPrivates.lua index 65b747b..665065d 100644 --- a/Modules/Quest/QuestieQuestPrivates.lua +++ b/Modules/Quest/QuestieQuestPrivates.lua @@ -147,6 +147,8 @@ monster = function(npcId, objective) spawns = {} end + local isLearned = false + -- Learner safety net: when prioritizeMyData is enabled and the Learner has -- verified spawn data for this NPC, prefer it over compiled DB spawns. -- This catches edge cases where the npcDataOverrides chain doesn't fully @@ -161,6 +163,7 @@ monster = function(npcId, objective) if learnedSpawns and next(learnedSpawns) and learnedNpc.mc and learnedNpc.mc >= threshold then Questie:Debug(Questie.DEBUG_DEVELOP, "[monster] Preferring learned spawns for NPC:", npcId, "(mc=" .. tostring(learnedNpc.mc) .. ")") spawns = learnedSpawns + isLearned = true end end end @@ -182,6 +185,7 @@ monster = function(npcId, objective) GetIconScale = _GetIconScaleForMonster, IconScale = _GetIconScaleForMonster(), TooltipKey = "m_" .. npcId, -- todo: use ID based keys + isLearned = isLearned, } return {