Xurkon
457420f90c
feat: add Database options tab with import/export/cleanup
...
New files:
- Modules/QuestieLearnerExport.lua: serialize/compress/encode pipeline using
AceSerializer + LibDeflate:CompressDeflate(level=9) + EncodeForPrint.
QxLD:<version>!<encoded> string format. Export(), ExportAll(), ValidateImport(),
MergeImport(), DryRunPrune(), Prune().
- Modules/Options/DatabaseTab/QuestieOptionsDatabase.lua: new Database tab with:
- Live learned data stats (per server)
- Per-type learner toggles (NPCs/Quests/Objects/Items/Broadcast)
- Export current server / Export all servers buttons (opens scrollable dialog)
- Import window (paste -> Validate -> Import with diff summary)
- Dry-run preview and Prune Now cleanup buttons
- Full reset button (confirm-gated)
- Contribute section with step-by-step GitHub submission instructions
Wiring:
- QuestieOptions.lua: database_tab initialized and registered in args
- All TOC files: QuestieLearnerExport.lua added before options, DatabaseTab lua added
2026-03-15 19:48:45 -05:00
Xurkon
d2861d194b
feat: expand QuestieLearner and QuestieLearnerComms
...
QuestieLearner:
- Expose QuestieLearner.data as direct ref to Questie.db.global.learnedData
- Add mc (match-count) field tracking to LearnNPC/Quest/Item/Object
- Add _Learner:BroadcastIfCommsAvailable() hook called after every write
- Add QuestieLearner:HandleNetworkData() — validates, merges, and deduplicates
incoming network data for NPC/QUEST/ITEM/OBJECT types, including coordinate
and item-drop list merging
QuestieLearnerComms:
- Move DebugLog definition to top of file (was called before definition)
- Fix IsDuplicateMessage fallback: table.getn(serializedData) -> string.len(),
mod() -> math.mod() for Lua 5.0 compatibility
- Add mutedUntil table and implement 5-minute timed mute on 3 strikes
(previously the 3-strike branch was an empty if body with no effect)
- Remove duplicated nil-check + DebugLog block in ProcessRawMessage
2026-03-15 19:10:35 -05:00
Xurkon
a89dbddb58
fix: add XXH load to TBC toc and guard plugin.stats nil access
2026-03-15 19:07:43 -05:00
Xurkon
984b9f9a68
fix: correct select() polyfill in QuestieLoader to not use arg table
...
The previous implementation used 'arg' (Lua 5.0 implicit vararg table) which
is nil inside a fixed-parameter function. Replace with the explicit index-chain
pattern matching the QuestieCompat.lua version.
2026-03-15 19:04:01 -05:00
Xurkon
b8594c9782
fix(p2): restore plugin status UI, C_QuestLog/C_Map shims, QuestieServer init
...
- QuestieOptionsAdvanced.lua: restore compat_header, plugin_header, plugin_status_desc
blocks showing loaded Questie-X plugins with stats in the Advanced options tab
- QuestieCompat.lua: add C_QuestLog shim (GetNumQuestLogEntries, GetQuestLogTitle,
GetAllQuestIDs, GetQuestObjectives, IsQuestFlaggedCompleted, GetQuestPlayerQuestLink),
C_Map shim (GetPlayerMapPosition, GetBestMapForUnit, GetMapInfo),
GetTrackedAchievements, IsAchievementCompleted, and LibUIDropDownMenu shims
- QuestieInit.lua: import QuestieServer module, add QuestieServer:Init() call with nil
guard, wrap HBDHooks:Init() in nil guard
2026-03-15 18:33:41 -05:00
Xurkon
d5a0db953d
Fix: MinimapIcon initialization crash due to nil GetIcon method
2026-03-15 18:28:58 -05:00
Xurkon
17fa3932f2
UI: Rebrand minimap tooltip to Questie-X and update associated localizations
2026-03-15 18:23:25 -05:00
Xurkon
f859e46881
feat: add mmapIcon.tga as minimap button with circular mask for all clients
...
- Icons/mmapIcon.tga: new minimap button icon
- MinimapIcon.lua: use mmapIcon.tga as LDB icon; apply circular mask
(AddMaskTexture for Retail, SetMask+pcall for Classic/WotLK/1.12 vanilla)
2026-03-15 18:17:43 -05:00
Xurkon
5c825f8914
[docs] Sync HTML changelog and remove deprecated monorepo/junction mentions
2026-03-15 18:07:28 -05:00
Xurkon
6b4a7b7786
[docs] Sync HTML changelog with CHANGELOG.md and remove monorepo/junction mentions
2026-03-15 17:56:38 -05:00
Xurkon
be6d522bf8
[docs] Remove monorepo and NTFS junction documentation as they are no longer used
2026-03-15 17:54:03 -05:00
Xurkon
6d3189b608
fix(p1): restore Lua 5.0 polyfills, hooksecurefunc, C_Timer, LibDeflate, and XXH load lines
...
- QuestieLoader.lua: add table.getn, math.mod, string.match, string.gmatch, select polyfills
- QuestieCompat.lua: add string.match, select, math.mod shims; hooksecurefunc polyfill;
full C_Timer polyfill; fix Is335 to use do/end block safe for Lua 5.0
- embeds.xml: add LibDeflate lib.xml include
- Questie-X.toc, Questie-X-Classic.toc, Questie-X-Turtle.toc: add XXH_Lua_Lib load line
2026-03-15 17:50:50 -05:00
Xurkon
5582f310eb
chore: update Credits tab logo and changelog for v1.1.4
2026-03-15 17:46:43 -05:00
Xurkon
20d0b8fe98
Fix Credits tab logo by converting to TGA and updating path
2026-03-15 08:20:00 -05:00
Xurkon
b5dadb3089
Add Questie-X logo to Credits tab
2026-03-15 08:13:58 -05:00
Xurkon
fcec22881f
Rebrand to Questie-X and add Credits tab
2026-03-15 08:08:08 -05:00
Xurkon
03e9f27f03
docs: standardize documentation, align version to 1.1.4, and cleanup legacy TOC files
2026-03-15 07:44:48 -05:00
Xurkon
2be3953cf5
docs: credit Majed (3majed) for Ascension dataset
2026-03-14 17:26:21 -05:00
Xurkon
89cca086f9
docs: remove all WoW version/Classic references from README, keep generic
2026-03-14 17:19:12 -05:00
Xurkon
3c4a89e085
docs: fix version badge to show Questie-X v1.1.4
2026-03-14 17:15:30 -05:00
Xurkon
484c63cc96
docs: remove title from header, drop version-specific WoW badge
2026-03-14 17:15:10 -05:00
Xurkon
8c80a4f562
docs: revise README - remove title, generic plugin docs, detailed fixes
2026-03-14 17:13:43 -05:00
Xurkon
280cc3e1ef
docs: remove Turtle from install info, add Ascension plugin example
2026-03-14 06:33:59 -05:00
Xurkon
29edeceedb
fix: remove black background from QuestieXlogo.png (color-to-alpha)
2026-03-14 06:25:13 -05:00
Xurkon
4600b95649
chore: remove workflow folder from tracking, add to gitignore
2026-03-14 06:24:42 -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
89c3b3173d
v9.9.2 — Final pre-refactor release: update version, changelog, docs, and README
2026-03-04 22:15:23 -06:00
Xurkon
87d0b0c3bc
fix: Add full Tanaris spawn data for Sandstone Giants NPCs 5467 and 5470
...
- NPC 5467 (Deep Dweller): Replace single spawn point with 28 locations
scraped from Wowhead covering the eastern Tanaris coast area
- NPC 5470 (Raging Dune Smasher): Was nil in all databases, added 23
spawn locations in the Abyssal Sands (southwest Tanaris)
- Fixes added to both classicNPCFixes.lua and tbcNPCFixes.lua
- Quest 50006 (Sandstone Giants) killCreditObjective already updated in
previous commit to include all 4 giant NPCs (5466, 5467, 5469, 5470)
All four giant types now have correct spawn data for minimap pin display.
2026-03-04 17:38:09 -06:00
Xurkon
4ccce374d7
Docs: add loot bot tracking fix to v9.9.0 changelog
2026-03-04 16:36:58 -06:00
Xurkon
a97c1daa2f
Fix: loot bot item tracking - debounce BAG_UPDATE_DELAYED with follow-up scan
2026-03-04 16:31:33 -06:00
Xurkon
320a040a48
Docs: add map pins fix note to v9.9.0 changelog
2026-03-04 07:43:56 -06:00
Xurkon
a562885c44
Fix: Sandstone Giants map pins - use killCreditObjective instead of creatureObjective
2026-03-04 07:10:20 -06:00
Xurkon
0055f84d11
Bump version to 9.9.0 and add Custom Ebonhold Quests
2026-03-04 06:45:02 -06:00
Xurkon
a4cb621619
v9.8.9: Move Song of the Woods to Outland section in CHANGELOG
2026-03-02 21:36:48 -06:00
Xurkon
3771fed0dc
v9.8.9: Expand CHANGELOG with complete quest list (55 quests across all zones)
2026-03-02 21:27:18 -06:00
Xurkon
b13833935a
v9.8.9: Badlands Trophy quest, 7:XT NPC data, fix AreaId CRITICAL spam
2026-03-02 21:11:30 -06:00
Xurkon
50101a8e8e
Bump version to 9.8.6 and add custom quests for Outland, Northrend, Kalimdor, Azeroth
2026-02-25 06:52:18 -06:00
Xurkon
8616765eed
Update custom DB quests and bump version to 9.8.5
2026-02-24 20:52:12 -06:00
Xurkon
174c397cf2
Fix: Resolve nil HasRequiredRace in ZoneDB due to circular dependency
2026-02-24 17:20:34 -06:00
Xurkon
ba6ef7e2df
Fix: Add nil checks to QuestiePlayer:Initialize to prevent arithmetic errors on custom servers
2026-02-24 16:40:05 -06:00
Xurkon
7c99ce2a79
Fix: Resolve nil pairs error in Townsfolk initialization on custom servers
2026-02-24 16:10:01 -06:00
Xurkon
26bdefb46e
Fix: Add missing QuestiePlayer import in QuestEventHandler, update docs, version 9.8.4
2026-02-22 13:08:41 -06:00
Xurkon
2921353534
Release v9.8.1: Corrected QuestieArrow flow for Forging An Alliance (12924)
2026-02-22 01:31:29 -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
52c13b98aa
Add debug print to Arrow to see evaluation values
2026-02-21 12:46:19 -06:00
Xurkon
7328771932
Add debug print to IsComplete for tricky quest
2026-02-21 12:43:21 -06:00
Xurkon
7aaf4d3495
Fix Arrow failing to detect quest completion fallback
...
When QuestLogCache parses incomplete tracker data upon reload,
it leaves quest.isComplete undefined or false. This allows the
Arrow to process SpecialObjectives (like required source item drops)
which do not have Completed/Needed/Collected stats on them, bypassing
our recent arrow logic fix.
Added an explicit check for QuestieDB.IsComplete(quest.Id) == 1
at the very top of the track loop to guarantee the Arrow immediately
stops processing objectives and exclusively targets the finisher.
2026-02-21 12:32:36 -06:00