Commit Graph

22 Commits

Author SHA1 Message Date
Xurkon 8ab14db3a3 fix(quest): map pins disappear after first kill
AlreadySpawned kept stale entries after UnloadQuestFrames ran.
The draw path for incomplete objectives never cleared it — only
completed objectives called _UnloadAlreadySpawnedIcons. Added
clear at the start of the spawnList draw path so _DetermineIconsToDraw
sees an empty AlreadySpawned and recreates icons each update cycle.
2026-05-21 19:46:17 -05:00
Xurkon 24ed0f48b3 fix(arrow): Sunstrider zoneId 3431, rotation CW, collection distance, native map pins
- zoneId detection: accept 3430 OR 3431 OR uiMapId 1241 (4 locations)
- SetRotation is CW-positive: rotAngle=relative (was -relative)
- Collection functions: override target->1241 when player on Sunstrider
- NPC 15281: spawn zone 1241 (not 3430) for correct coord space
- _ResolveMapUiMapId: removed 1241->1941 redirect
- zoneDB: added areaIdToUiMapId[1241]=1241
- Updated CHANGELOG, README, docs
2026-05-21 19:22:40 -05:00
Xurkon a0f3a1e020 v1.6.1: Fix map icon completion persistence after objective fulfillment
- SetObjectivesDirty: Add missing loop to reset isUpdated on SpecialObjectives
- PopulateObjective: Add completion guard for objectives without Update fn
- Bump version to 1.6.1 across TOC and changelogs
2026-05-04 19:57:43 -05:00
Xurkon 4ef2b9f661 hotfix: Resolved critical QuestieQuest runtime crash and hardened error handler 2026-04-08 03:48:46 -05:00
Xurkon 4d48925145 docs: append performance patches to v1.5.5 changelogs 2026-03-29 17:54:19 -05:00
Xurkon 1fc9727fee v1.4.9: Validation fixes, Profiler fix, Quest link duplicate fix, Ascension fixes 2026-03-26 06:47:54 -05:00
Xurkon 6e34cebead feat: release v1.4.6 - Fix SavedVariables persistence and red textures for MafWow/3.3.5a 2026-03-22 08:30:20 -05:00
Xurkon b0f8ba22e7 feat: release v1.3.0 - QuestieLearner Confidence & Tiered Pruning Engine 2026-03-17 22:33:01 -05:00
Xurkon 4db9737a35 chore: stage all pending changes (DB cleanup, corrections, compiler, init, plugin API) 2026-03-16 19:41:52 -05:00
Xurkon c4d003e58f feat: Questie-X v1.1.4 - plugin architecture, monorepo, rebranding
- Repoint remote to Xurkon/Questie-X
- Add QuestiePluginAPI, QuestieServer, QuestieLearnerComms modules
- Add Questie-X.toc, Questie-X-Classic.toc, Questie-X-TBC.toc, Questie-X-Turtle.toc
- Remove embedded Database/Ascension and Database/Ebonhold (migrated to plugins)
- Add Plugins/ directory with NTFS junctions for Questie-X-AscensionDB and Questie-X-EbonholdDB
- Add LibDeflate, XXH_Lua_Lib, LibDBIcon-1.0, LibDataBroker-1.1
- Update README: Questie-X branding, logo, plugin install guide, plugin API docs
- Update CHANGELOG: v1.1.4 entry documenting all architectural changes
- Update .gitignore: exclude plugin junctions, __pycache__, .agents, debug files
- Various module updates: corrections, map, tracker, tooltips, quest, options
2026-03-14 06:10:17 -05:00
Xurkon 8616765eed Update custom DB quests and bump version to 9.8.5 2026-02-24 20:52:12 -06:00
Xurkon ee3e06da90 Release v9.8.0: Lootbot Tracker & Map Pins Fixes 2026-02-22 01:07:31 -06:00
Xurkon 5bee40b953 chore: release v9.7.12
- Fixed missing Finisher frame pool reset
- Fixed tracker force-complete race condition on custom quests
2026-02-22 00:09:21 -06:00
Xurkon 94ed16d7f0 Release v9.7.11 2026-02-21 23:42:42 -06:00
Xurkon c42945a1f8 Release v9.7.10 2026-02-21 22:52:51 -06:00
Xurkon 6d86a784e7 Set quest.isComplete when IsComplete==1 in GetAllQuestIds
QuestieArrow._CollectQuestTargets checks quest.isComplete (the quest
object field) to decide whether to collect finisher spawns or objective
spawns. Without setting this field, the arrow fell through to objective
collection and picked up the stale Cold Iron Key fake objective
(CheckQuestSourceItem) which resolves to NPC 29323 at 39.8, 72.7.

Now when QuestieDB.IsComplete returns 1, set quest.isComplete = true
and quest.WasComplete = true before PopulateObjectiveNotes, so the
arrow correctly routes to the finisher (Gretchen Fizzlespark) instead.
2026-02-21 11:59:34 -06:00
Xurkon e6c9d241fb Fix tooltip error for zone-complete trigger objectives (quest 50150)
_RegisterObjectiveTooltips was only silently skipping objectives
with Type == 'event'. Quest 50150 'Storm Peak Orders' uses a
server-tracked zone-completion trigger objective which has no spawnList
and no Id -- the server sends it with a type like 'monster' not 'event'.

Broaden the guard: any objective with no spawnList AND no Id has nothing
for Questie to draw. Mark hasRegisteredTooltips = true and return
silently. Objectives with no spawnList but a valid Id still error
so missing data is reported.
2026-02-21 11:42:26 -06:00
Xurkon 211bc5be84 Fix arrow pointing to key-drop NPC after quest complete
GetAllQuestIds called CheckQuestSourceItem(questId, true) for all
non-failed quests. When a consumable key is used and leaves the bag,
this created a fake 'get the item' objective pointing to the drop NPC
even when the quest was already complete (complete == 1).

Guard the call: only run CheckQuestSourceItem when complete != 1.
Complete quests route through PopulateObjectiveNotes which correctly
shows the finisher instead.
2026-02-21 11:17:37 -06:00
Xurkon 6600e57d30 Restore visible error for non-event objectives missing spawnList
Event-type objectives (triggerEnd with no coordinates) silently skip.
All other objective types with missing spawnList keep Questie:Error
so players can see and report missing spawn data.
2026-02-21 11:10:15 -06:00
Xurkon 052d38c2f7 Fix tooltip objective population error for event-type objectives with no spawnList
_RegisterObjectiveTooltips: silently return for Type='event' objectives
with no spawnList (e.g. triggerEnd with nil coordinates). These have no
tooltip to register, so mark hasRegisteredTooltips=true and bail out.
For other types, demote from Error to Debug.
2026-02-21 10:35:23 -06:00
Xurkon dd6329de97 Docs: Update Changelog with new Ascension quests 2026-02-18 22:49:11 -06:00
Xurkon 6ef85d4e2d v9.7.2: Ebonhold Database integration and core logic refinements 2026-02-14 21:13:44 -06:00