Closed CodingDino closed 13 years ago
Posted the following to wowi:
This appears to actually be a bug in the WoW API rather than the add-on code. Any chance you could try loading the equivalent guide in TourGuide and see if you get the same response as they use similar functionality? (You might need to step through the guide to get to the equivalent point?)
The bug was not recreated in Tour Guide according to the user. Since I've had many reports of this bug I'm betting it's something wrong in either the addon itself or something going wrong in the guide files. I've checked the guide files in question, however, and they are providing correct QIDs for all the quests in question from what I've seen. I'll dig around in the Tour Guide code and see if I can reverse engineer a solution.
I tested this on a random quest and it definitely worked as intended, so I am using the function correctly. What I'm guessing is that, for some quests, there just isn't an icon to get info for. It may also have problems if that quest is not currently in your log. I guess that's the next thing to check - perhaps this user was manually completing steps before the step skipping feature was added, and did not actually have the quest in the log?
We'll see if any more reports crop up or if anyone else can verify this.
I tried putting in a QID that I had not accepted yet, so it was not in my log - the addon threw no errors and simply quietly failed to map the coordinates. I'm at a loss.
Also tried inputting a QID that was in my log but which was located out of zone, and one that was located in a dungeon. Nothing.
Looking at this.
The OP mentioned he doesn't have TomTom, I would then assume he has Carbonite. Could we be having some sort of conflict? I do not play with Carbonite so this could be why I can't reproduce the error.
I'm wondering if there is perhaps a mismatch between the ids somehow? Looking at Carbonite's usage of the function (was looking to see if there was a mismatch - I didn't think obfuscation of code was allowed...) they only use it in the context of the return from the POI lists on the map (I've cut out the irrelevant bits):
local num=QuestMapUpdateAllQuests() if num>0 then QuestPOIUpdateIcons() for n=1,num do local id,qi=QuestPOIGetQuestIDByVisibleIndex(n) if not self.ITQ[id] or self.ITQ[-id] then local _,x,y,obj1=QuestPOIGetIconInfo(id) local tit=GetQuestLogTitle(qi) local s=tit x=x_10000 y=y_10000 local lbC=GetNumQuestLeaderBoards(qi) for i=1,lbC do que[3+i]=que[2] end end end end
Theoretically, it shouldn't matter, because the only thing we use TomTom or Carbonite for is when we call their 'set waypoint' functions, which happens after we try to get x,y from QuestPOIGetIconInfo, where the error occurs. So I still think it's a questID problem. For another hand, TomTom has a quest tracker option, so maybe they are "fixing" our ID problem without us knowing. I dunno, will test it out tonight.
I may have fixed this, but since I don't wanna break anything else again, I'll test a bit more before I pushed it.
Yeah, I think I fixed, opened a pull request so people can test it out.
Woohoo! Thanks silvann!
From WOWI:
Just installed this for the first time, and am seeing an error on log in. Running v1.2.1, on a level 18 warlock who's never had this installed before. I have BlizzBugsSuck, but made the fix in the previous post. Other addons I have include Mapster, Chinchilla and Chatter. I do not have Tom-Tom or Lightheaded, or pretty much any other questing addon.
Haven't had the time yet to disable all addons and try to track down what the interference might be, but will try to do that tonight.
Code:
1x WoWPro-1.2.1 - Release\WoWPro_Mapping.lua:114: Usage: QuestPOIGetIconInfo(questID) WoWPro-1.2.1 - Release\WoWPro_Mapping.lua:114: in function `MapPoint' WoWPro-1.2.1 - Release\WoWPro.lua:108: in function <WoWPro\WoWPro.lua:87> (tail call): ?: