Go to Page... |
Thread Tools | Display Modes |
05/07/18, 01:04 PM | #1 |
|
Author Question: Summerset Issue on PTS with my Addon
I am the author of FCM Quest tracker, and have basically hit a wall with what I thought was a simple issue, got some help from people here but still have not got past this.
First of all I did not write the original code, so here it goes. Add on works perfectly fine in live. In order to update a quest that is selected form the tracker to be focused so that the journal reports the same quest, the following function is executed. Code:
ZO_QuestTracker["tracker"]:InitialTrackingUpdate() Code:
user:/AddOns/FCMQT/FCMQT.lua:856: attempt to index a nil value stack traceback: user:/AddOns/FCMQT/FCMQT.lua:856: in function 'FCMQT.QuestsLoop' user:/AddOns/FCMQT/FCMQT.lua:896: in function 'FCMQT.QuestsListUpdate' user:/AddOns/FCMQT/FCMQT.lua:994: in function 'FCMQT.Init' The only thing I can find is "ZO_QuestTracker:InitialTrackingUpdate" on live, and "ZO_Tracker:InitialTrackingUpdate" on PTS. So I changed it on live to this, just to see if that is where it is going to, and I changed it on PTS respectively. I get this error on both, only difference is what line numbers it errors on in "EsoUI/Ingame/ZO_Quest/QuestTracker.lua". The code it is stopping on is the same. Code:
EsoUI/Ingame/ZO_Quest/QuestTracker.lua:1012: attempt to index a nil value stack traceback: EsoUI/Ingame/ZO_Quest/QuestTracker.lua:1012: in function 'ZO_Tracker:ClearTracker' EsoUI/Ingame/ZO_Quest/QuestTracker.lua:404: in function 'ZO_Tracker:InitialTrackingUpdate' user:/AddOns/FCMQT/FCMQT.lua:856: in function 'FCMQT.QuestsLoop' user:/AddOns/FCMQT/FCMQT.lua:896: in function 'FCMQT.QuestsListUpdate' user:/AddOns/FCMQT/FCMQT.lua:994: in function 'FCMQT.Init' Code:
function ZO_Tracker:ClearTracker() self.treeView:Clear()--<< Here self.headerPool:ReleaseAllObjects() self.assistedTexture:SetHidden(true) --iterate backwards because SetTracked will change the tracked array size for i = GetNumTracked(), 1, -1 do local trackType, arg1, arg2 = GetTrackedByIndex(i) SetTracked(trackType, false, arg1, arg2) end for i = 1, #self.tracked do local trackedData = self.tracked[i] if(trackedData.trackType == TRACK_TYPE_QUEST) then RemoveMapQuestPins(trackedData.arg1) end end self.tracked = {} self.assistedData = nil self:UpdateTreeView() self:UpdateVisibility() end I have also explored many other options, for example using zgoo to look at the tracker itself, and so many other possible solutions other than rewriting code. I admit it is highly likely this is a lack of knowledge on my part. So a couple of questions: Is there a function that will update the focused quest in the journal/map that does not require a complete initialization of the in game tracker? Is my logic that "ZO_QuestTracker["tracker"]:InitialTrackingUpdate" points to respectfully "ZO_QuestTracker["tracker"]:InitialTrackingUpdate" and "ZO_Tracker["tracker"]:InitialTrackingUpdate" totally flawed and it goes someplace completely different? Am I a complete idiot? (this question not intended to be answered. ) FYI I did try running both live and PTS with out this being executed, and it appears to work find until you change the quest either on the world map, journal or within my addon itself. This is the world map error I get on PT, it is similar on Live. Code:
EsoUI/Ingame/ZO_Quest/QuestTracker.lua:438: attempt to index a nil value stack traceback: EsoUI/Ingame/ZO_Quest/QuestTracker.lua:438: in function 'ZO_Tracker:ForceAssist' EsoUI/Ingame/Map/WorldMap.lua:2008: in function 'callback' EsoUI/Ingame/Map/WorldMap.lua:2491: in function 'ZO_WorldMap_HandlePinClicked' ZO_MapPin0_MouseUp:5: in function '(main chunk)' x Last edited by DesertDwellers : 05/07/18 at 01:05 PM. Reason: Clearer title |
05/07/18, 02:56 PM | #2 | |
Not sure why you open a new thread about this as it looks like the same problem you have discussed here already:
http://www.esoui.com/forums/showthread.php?t=7753 Did you read my answer on this thread from 05.05.2018?
So calling the base class functions will not work on all variables. You need to call the funcitons on the created instance variables in order to update them properly. Try to use QUEST_TRACKER.InitialTrackingUpdate() or find the variable which is created for ZO_Tracker on the PTS. PTS source code (not actual PTS patch but the one before 07.05.2018) to search in can be found here: https://github.com/esoui/esoui/tree/pts/esoui Files for quest tracker are located in esoui/ingame/zo_quest e.g. Last edited by Baertram : 05/07/18 at 03:06 PM. |
||
05/07/18, 03:29 PM | #3 |
|
Yes I did, and "QUEST_TRACKER.InitialTrackingUpdate() " did not work either on PTS or on live. On live it with "ZO_QuestTracker["tracker"]:InitialTrackingUpdate()".
QUEST_TRACKER.InitialTrackingUpdate() DOES go to ZO_Tracker:InitialTrackingUpdate(), at least that is where the errors show up at same as this post. I have not tried it today on PTS with today's update. This was from my weekend testing. As I mentioned in this post, I have tried many variations. |
05/07/18, 03:45 PM | #4 |
|
On PTS that change still is not working with QUEST_TRACKER.InitialTrackingUpdate()
Code:
user:/AddOns/FCMQT/FCMQT.lua:856: attempt to index a nil value stack traceback: user:/AddOns/FCMQT/FCMQT.lua:856: in function 'FCMQT.QuestsLoop' user:/AddOns/FCMQT/FCMQT.lua:896: in function 'FCMQT.QuestsListUpdate' user:/AddOns/FCMQT/FCMQT.lua:994: in function 'FCMQT.Init' Code:
EsoUI/Ingame/ZO_Quest/QuestTracker.lua:1012: attempt to index a nil value stack traceback: EsoUI/Ingame/ZO_Quest/QuestTracker.lua:1012: in function 'ZO_Tracker:ClearTracker' EsoUI/Ingame/ZO_Quest/QuestTracker.lua:404: in function 'ZO_Tracker:InitialTrackingUpdate' user:/AddOns/FCMQT/FCMQT.lua:856: in function 'FCMQT.QuestsLoop' user:/AddOns/FCMQT/FCMQT.lua:898: in function 'FCMQT.QuestsListUpdate' user:/AddOns/FCMQT/FCMQT.lua:996: in function 'FCMQT.Init Not sure on live where "ZO_QuestTracker["Tracker"]:InitialTrackingUpdate()" is going to, but it works there with that only. That does not work on PTS. So something is changed. Thank you for any help you might be able to give. |
05/08/18, 05:26 AM | #5 | |
|
Thank you Baertram, it makes sense. I was just hoping to find exactly what the original statement is doing, that would make it far easier to duplicate it in Update 18. But if it would be easy, it would not be fun, right. |
|
05/08/18, 08:57 AM | #6 |
btw:
ZO_QuestTracker["tracker"] = ZO_QuestTracker.tracker = QUEST_TRACKER See function above I had posted. Lua Code:
So normally you should be either able to use QUEST_TRACKER:InitialTrackingUpdate(self) (where self relates to the variable QUEST_TRACKER) or QUEST_TRACKER.InitialTrackingUpdate(QUEST_TRACKER) |
|
05/08/18, 10:24 AM | #7 |
|
Ok, the light just flicked on. Working RL job, will try when done. Thanks for your help and guidance.
|
05/08/18, 08:50 PM | #8 |
|
Solved
Thank you Baertram, everything works now.
Resolved this issue and a few other compatibility issues, and now works perfect on PTS/ |
05/10/18, 08:10 AM | #9 |
Glad you managed to get it work.
|
|
ESOUI » Developer Discussions » General Authoring Discussion » Author Question: Summerset Issue on PTS with my Addon |
«
Previous Thread
|
Next Thread
»
|
Display Modes |
Linear Mode |
Switch to Hybrid Mode |
Switch to Threaded Mode |
|
|