Thread Tools Display Modes
Prev Previous Post   Next Post Next
05/07/18, 01:04 PM   #1
DesertDwellers
AddOn Author - Click to view addons
Join Date: May 2017
Posts: 25
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()
ZO_QuestTracker it appears on PTS is now called ZO_Tracker, so I tried both, "ZO_QuestTracker["tracker"]:InitialTrackingUpdate" and "ZO_Tracker["tracker"]:InitialTrackingUpdate", and both get this error.

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'
In live I cannot figure out where "ZO_QuestTracker["tracker"]:InitialTrackingUpdate" is referring to which may be the root problem. I admit my inexperience in LUA programming could be the real root cause. In all of the add on's code it is called twice, and there is no "ZO_*" functions locally that it could be calling instead.

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'
Below is the code from 100023 where it is topping at, stopping on the first line after the function at "self.treeview:Clear". In 100022 it stops at the exact same line.

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
So this tells me they that "ZO_QuestTracker["tracker"]:InitialTrackingUpdate" does not go to either of those functions.

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)'
Which may be totally unrelated, but I am assuming not.
x

Last edited by DesertDwellers : 05/07/18 at 01:05 PM. Reason: Clearer title
  Reply With Quote
 

ESOUI » Developer Discussions » General Authoring Discussion » Author Question: Summerset Issue on PTS with my Addon


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off