ALL THE THINGS

ALL THE THINGS

31M Downloads

Costs.lua:66: attempt to call upvalue 'RecursiveGroupRequirementsFilter' (a nil value)

Ookami313 opened this issue ยท 2 comments

commented

Updated to 3.4.10 and when I log into the game the following error occurs. Thanks.

2x AllTheThings/src/Modules/Costs.lua:66: attempt to call upvalue 'RecursiveGroupRequirementsFilter' (a nil value)
[string "@AllTheThings/src/Modules/Costs.lua"]:66: in function CheckCollectible' [string "@AllTheThings/AllTheThings.lua"]:5129: in function <AllTheThings/AllTheThings.lua:4228> [string "@AllTheThings/AllTheThings.lua"]:6900: in function <AllTheThings/AllTheThings.lua:6897> [string "@AllTheThings/AllTheThings.lua"]:23094: in function <AllTheThings/AllTheThings.lua:22899> [string "=(tail call)"]: ? [string "=[C]"]: in function securecallfunction'
[string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:162: in function <SharedXML/Tooltip/TooltipDataHandler.lua:157>
[string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:179: in function <SharedXML/Tooltip/TooltipDataHandler.lua:178>
[string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:218: in function <SharedXML/Tooltip/TooltipDataHandler.lua:208>
[string "=[C]"]: in function SetAttribute' [string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:243: in function <SharedXML/Tooltip/TooltipDataHandler.lua:236> [string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:389: in function <SharedXML/Tooltip/TooltipDataHandler.lua:339> [string "=[C]"]: in function securecallfunction'
[string "@SharedXML/Tooltip/TooltipDataHandler.lua"]:336: in function <SharedXML/Tooltip/TooltipDataHandler.lua:335>
[string "=(tail call)"]: ?
[string "@WQAchievements/WQAchievements.lua"]:1419: in function CheckReward' [string "@WQAchievements/WQAchievements.lua"]:1403: in function CheckItems'
[string "@WQAchievements/WQAchievements.lua"]:1292: in function `Reward'
[string "@WQAchievements/WQAchievements.lua"]:465: in function <WQAchievements/WQAchievements.lua:430>

Locals:
ref =

{
hash = "speciesID3278"
total = 1
nmr = false
cost =
{
}
speciesID = 3278
nmc = false
itemID = 193071
progress = 0
visible = true
sourceParent =
{
}
parent =
{
}
}
(*temporary) = nil
(*temporary) =
{
hash = "speciesID3278"
total = 1
nmr = false
cost =
{
}
speciesID = 3278
nmc = false
itemID = 193071
progress = 0
visible = true
sourceParent =
{
}
parent =
{
}
}
(*temporary) = "attempt to call upvalue 'RecursiveGroupRequirementsFilter' (a nil value)"
RecursiveGroupRequirementsFilter = nil
SubCheckCollectible = defined @AllTheThings/src/Modules/Costs.lua:19

commented

Fixed in 9387429

commented

Ah... how strange.
So from my understanding here...

  • You have an addon WQAchievements which attempts to scan the current World Quest rewards when you log in
  • In doing so, it causes the GameTooltip to be loaded for the Item rewards such that it can gather the Item information
  • When this happens, ATT is set to attach information into the GameTooltip since it is the default system tooltip (addons that properly use their own custom tooltip to harvest data are not attached by ATT)
  • Since the game is loading and ATT has not yet fully registered itself to perform functionality, the tooltip is attempting to use ATT logic which was not prepared
  • Also, this specific 'unprepared' logic is only used when the 'Currency calculation' option is enabled for tooltips

I'll throw in a quick fix for this niche situation, though potentially a better solution would be to delay ATT tooltip handling until ATT is fully ready.