smaitch / Grail

World of Warcraft addon to provide a database of quest information.
31 stars 20 forks source link

LUA Error in Nelf Starter Zone #233

Closed Wyr3d closed 4 years ago

Wyr3d commented 4 years ago

Prolly coz there are a couple quests at the Shadowthread Cave that are essentially part of Shadowglenn, but not listed there?

Message: Interface\AddOns\Grail\Grail.lua:8673: attempt to compare nil with number Time: Fri Oct 16 18:58:40 2020 Count: 1 Stack: Interface\AddOns\Grail\Grail.lua:8673: attempt to compare nil with number

[string "@Interface\AddOns\Grail\Grail.lua"]:8673: in function `_BestAliasNPCToUse' [string "@Interface\AddOns\Grail\Grail.lua"]:8629: in function <Interface\AddOns\Grail\Grail.lua:8624>

[string "@Interface\AddOns\Grail\Grail.lua"]:1868: in function ?' [string "@Interface\AddOns\Grail\Grail.lua"]:10992: in function_Tooltip_OnEvent' [string "@Interface\AddOns\Grail\Grail.lua"]:11532: in function <Interface\AddOns\Grail\Grail.lua:11532>

Locals:

Wholly interface switches when you enter the cave, but it doesn't select a new zone. Shadowthread Cave zone must not exist in Grail as a zone then? Maybe this is the problem

The missing quests are:

Webwood Corruption [28726] and Vile Touch [28727]

I looked in the exisitng zone, but it didn't show up, and a search revealed nothing. Also the All Quests search failed. so I'm guessing these funtions are currently not working for 9.0.1

Got another LUA report after it tried to search All Quests:

Message: Interface\SharedXML\TableUtil.lua:25: script ran too long Time: Fri Oct 16 19:08:30 2020 Count: 1 Stack: Interface\SharedXML\TableUtil.lua:25: script ran too long

[string "@Interface\SharedXML\TableUtil.lua"]:25: in function tIndexOf' [string "@Interface\SharedXML\TableUtil.lua"]:32: in function <Interface\SharedXML\TableUtil.lua:31> [string "@Interface\AddOns\Grail\Grail.lua"]:7285: in function_InsertSet' [string "@Interface\AddOns\Grail\Grail.lua"]:3297: in function AddQuestToMapArea' [string "@Interface\AddOns\Grail\Grail.lua"]:10695: in functionSetMapAreaQuests' [string "@Interface\AddOns\Wholly\Wholly.lua"]:3608: in function SearchForAllQuests' [string "@Interface\AddOns\Wholly\Wholly.lua"]:2360: in functionf' [string "@Interface\AddOns\Wholly\Wholly.lua"]:3570: in function `ScrollTwoClick'

Locals:

smaitch commented 4 years ago

I just updated Grail on GitHub. Can you use that to see if this problem is fixed?

Nerillida commented 4 years ago

Logging on with new character at Nelf start area

With new version (Wholly and Grail), logging on with a new character to Nelf zone

Message: Interface\AddOns\Grail\Grail.lua:1250: hooksecurefunc(): SelectGossipOption is not a function Time: Sat Oct 17 17:46:51 2020 Count: 1 Stack: Interface\AddOns\Grail\Grail.lua:1250: hooksecurefunc(): SelectGossipOption is not a function [string "=[C]"]: in function hooksecurefunc' [string "@Interface\AddOns\Grail\Grail.lua"]:1250: in function?' [string "@Interface\AddOns\Grail\Grail.lua"]:10644: in function `_Tooltip_OnEvent' [string "@Interface\AddOns\Grail\Grail.lua"]:11230: in function <Interface\AddOns\Grail\Grail.lua:11230>

Then "Wholly requires Grail version 112 or later in chat Wholly is absent from Menu/Interface/Addons tab

However, no errors going into cave.

yoshimo commented 4 years ago

https://github.com/Stanzilla/WoWUIBugs/wiki/9.0.1-Consolidated-UI-Changes

smaitch commented 4 years ago

The message from Wholly indicates that Grail is not actually loaded. Basically once Grail fails then both are not going to be there. It is weird that you are getting a message with SelectGossipOption in it because the code checks to see whether it exists before attempting to hook it. Can you do "/dump SelectGossipOption" and see if it prints out anything because something else could be defining it.

Nerillida commented 4 years ago

Had nothing but Wholly and Grail running

/dump SelectGossipOption SelectGossipOption=nil empty result

smaitch commented 4 years ago

I cannot explain it. I do not have this problem in either Shadowlands beta or Retail. The code in Grail only attempts the hook the function if it actually is not nil. Admittedly it does not check whether it is a function versus any other type of object, so that is not the best it could be, but if it is nil it should not even attempt to hook it.

Nerillida commented 4 years ago

Re-dowloaded, got a newer version. All OK now, including the cave. It's a different zone.

smaitch commented 4 years ago

Cool.

Wyr3d commented 4 years ago

Sorry for the late reply, I've been busy. I went back to it on a new char, and it's no longer throwing up the lua errors, however Wholly still switches to a blank zone, with no quests showing. They don't exist in the Shadowglenn zone either, but they are in Teldrassil.

I mean, it's working fine, but if you want to check the book while on these quests, you will just get the blank page:

https://ibb.co/9WVzrFj https://ibb.co/3kmhWZj https://ibb.co/1LvxLtr

smaitch commented 4 years ago

I just pushed a new Grail that sets her to be near in zone 58 which is the cave. Now things should appear in Wholly.