Questie

Questie

116M Downloads

attempt to call field 'QueryQuest' (a nil value)

Iowerth opened this issue · 7 comments

commented

After update to 8.0.0 error appears:

2x Questie/Database/QuestieDB.lua:708: attempt to call field 'QueryQuest' (a nil value)
[string "@Questie/Database/QuestieDB.lua"]:708: in function `GetQuest'
[string "@Questie/Modules/Tracker/QuestieTracker.lua"]:1799: in function `AQW_Insert'
[string "@Questie/Modules/Tracker/QuestieTracker.lua"]:1586: in function <...ceQuestie/Modules/Tracker/QuestieTracker.lua:1586>
[string "=[C]"]: in function `AddQuestWatch'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:1800: in function `TrackQuest'
[string "@ZygorGuidesViewerClassicTBC/Step.lua"]:445: in function `OnEnter'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:1646: in function `FocusStep'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:1453: in function `SetGuide'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:1197: in function `LoadInitialGuide'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:559: in function `Startup_LoadGuides_Threaded'
[string "@ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua"]:819: in function <...ns/ZygorGuidesViewerClassicTBC/ZygorGuidesViewer.lua:722>

Locals:
self = <table> {
 GetZoneOrSortForClass = <function> defined @Questie/Database/QuestieDB.lua:366
 waypointPresets = <table> {
 }
 npcKeys = <table> {
 }
 questDataOverrides = <table> {
 }
 itemDataOverrides = <table> {
 }
 raceKeys = <table> {
 }
 IsPreQuestGroupFulfilled = <function> defined @Questie/Database/QuestieDB.lua:458
 questKeys = <table> {
 }
 npcCompilerTypes = <table> {
 }
 questFlags = <table> {
 }
 fakeTbcItemStartId = 60000
 sortKeys = <table> {
 }
 npcData = <table> {
 }
 IsRepeatable = <function> defined @Questie/Database/QuestieDB.lua:322
 classKeys = <table> {
 }
 objectDataOverrides = <table> {
 }
 _npcAdapterQueryOrder = <table> {
 }
 _itemAdapterQueryOrder = <table> {
 }
 questData = <table> {
 }
 itemCompilerOrder = <table> {
 }
 itemCompilerTypes = <table> {
 }
 IsActiveEventQuest = <function> defined @Questie/Database/QuestieDB.lua:385
 itemKeysReversed = <table> {
 }
 npcFlags = <table> {
 }
 Initialize = <function> defined @Questie/Database/QuestieDB.lua:166
 npcCompilerOrder = <table> {
 }
 factionTemplate = <table> {
 }
 itemData = <table> {
 }
 _objectAdapterQueryOrder = <table> {
 }
 objectCompilerOrder = <table> {
 }
 IsParentQuestActive = <function> defined @Questie/Database/QuestieDB.lua:445
 objectCompilerTypes = <table> {
 }
 objectKeys = <table> {
 }
 questCompilerTypes = <table> {
 }
 objectKeysReversed = <table> {
 }
 _questAdapterQueryOrder = <table> {
 }
 IsLevelRequirementsFulfilled = <function> defined @Questie/Database/QuestieDB.lua:410
 questCompilerOrder = <table> {
 }
 IsPvPQuest = <function> defined @Questie/Database/QuestieDB.lua:351
 questKeysReversed = <table> {
 }
 IsPreQuestSingleFulfilled = <function> defined @Questie/Database/QuestieDB.lua:487
 private = <table> {
 }
 IsDungeonQuest = <function> defined @Questie/Database/QuestieDB.lua:337
 GetQuestsByZoneId = <function> defined @Questie/Database/QuestieDB.lua:1065
 itemKeys = <table> {
 }
 IsDoable = <function> defined @Questie/Database/QuestieDB.lua:515
 GetQuestIDFromName = <function> defined @Questie/Database/QuestieDB.lua:1154
 objectData = <table> {
 }
 GetQuestTagInfo = <function> defined @Questie/Database/QuestieDB.lua:374
 _CreatureLevelCache = <table> {
 }
 GetCreatureLevels = <function> defined @Questie/Database/QuestieDB.lua:971
 GetNPC = <function> defined @Questie/Database/QuestieDB.lua:1014
 GetItem = <function> defined @Questie/Database/QuestieDB.lua:263
 IsComplete = <function> defined @Questie/Database/QuestieDB.lua:659
 GetObject = <function> defined @Questie/Database/QuestieDB.lua:235
 IsExclusiveQuestInQuestLogOrComplete = <function> defined @Questie/Database/QuestieDB.lua:392
 IsDailyQuest = <function> defined @Questie/Database/QuestieDB.lua:329
 npcKeysReversed = <table> {
 }
 IsRaidQuest = <function> defined @Questie/Database/QuestieDB.lua:344
 npcDataOverrides = <table> {
 }
 GetQuest = <function> defined @Questie/Database/QuestieDB.lua:699
}
questId = 12209
(*temporary) = nil
(*temporary) = 12209
(*temporary) = <table> {
 1 = "name"
 2 = "startedBy"
 3 = "finishedBy"
 4 = "requiredLevel"
 5 = "questLevel"
 6 = "requiredRaces"
 7 = "requiredClasses"
 8 = "objectivesText"
 9 = "triggerEnd"
 10 = "objectives"
 11 = "sourceItemId"
 12 = "preQuestGroup"
 13 = "preQuestSingle"
 14 = "childQuests"
 15 = "inGroupWith"
 16 = "exclusiveTo"
 17 = "zoneOrSort"
 18 = "requiredSkill"
 19 = "requiredMinRep"
 20 = "requiredMaxRep"
 21 = "requiredSourceItems"
 22 = "nextQuestInChain"
 23 = "questFlags"
 24 = "specialFlags"
 25 = "parentQuest"
 26 = "reputationReward"
 27 = "extraObjectives"
 28 = "requiredSpell"
 29 = "requiredSpecialization"
}
(*temporary) = "attempt to call field 'QueryQuest' (a nil value)"
_QuestieDB = <
commented

I had a chat with one of the Zygor devs about this error. First off, Zygor does not call Questie in any way nor does it rely on Questie. Zygor has it's own quest database that is uses, otherwise Questie would be listed as a required addon for their guide viewer. The Zygor dev installed latest Questie to look over everything for interactions and this is a word for word quote of what he found.

"From what I see, Questie hooks into AddQuestWatch before their addon is fully ready. At the time our first quest watch is fired, their hook is a table and not a proper function they are expecting. TLDR - their problem."

From what he says this might also be the reason behind the other errors being reported with the watch frame.

commented

Thanks @TwitchyMcNutz we‘ll have another look to get this fixed! 👍🏻

commented

He just sent me a message with a bit more info that might help.

"When QuestieTracker:AQW_Insert is called from hooksecurefunc AddQuestWatch very early, QuestieDB.QueryQuest in QuestieDB:GetQuest is a table and not a function you expect it to be."

commented

Apologies... blame it on me! :D

I found my bug and the fix will be included in today's patch.

commented

Hey @Iowerth looks more lik a bug in „ ZygorGuidesViewerClassicTBC“ not being compatible with Questie v8. You should report it for them ad well.

Might be Zygor not waiting long enough before calling Questie.

commented

Hey @Iowerth looks more lik a bug in „ ZygorGuidesViewerClassicTBC“ not being compatible with Questie v8. You should report it for them ad well.

Might be Zygor not waiting long enough before calling Questie.

But there was no bug before 8.0.0.

commented

Zygor relies on Questie, and Questie has updated in a way that breaks what Zygor expects. Zygor will now also need to update to incorporate Questie's recent changes.

EDIT: Silly Dyaxler!