b-morgan / Skillet-Classic

World of Warcraft Classic addon
GNU General Public License v3.0
6 stars 6 forks source link

Unable to open tradeskill windows. #89

Closed ThisIsMakena closed 2 years ago

ThisIsMakena commented 2 years ago

Issue occurring on the live WOTLK Classic Servers with 1.48-alpha3

This is occurring with smelting and enchanting (potentially others, these 2 are the direct experience I have), I saw your closed issue https://github.com/b-morgan/Skillet-Classic/issues/85 that said to remove/rename the global saved variables file Skillet-Classic.lua, which does fix it, but it seems to reoccur.

A faster fix seems to be /skillet flushalldata

This is probably overkill, but losing the few sorting settings etc isn't a big deal, after doing this the windows open and function as normal.

b-morgan commented 2 years ago

In order for me to determine what is wrong so I can fix it I need a reproduceable set of steps. Failing that, I need lots of data to analyze for a pattern. I probably need debug output from Skillet-Classic as well.

/skillet debuglogging on
/skillet debuglevel 2
/skillet tabledump on

This will output debugging information to the character specific saved variables file Skillet-Classic.lua. Please reproduce the issue, close Skillet-Classic, and logoff (or /reload). Attach the character specific file here. Type /skillet debuglogging off if you wish but the output is limited so just the most recent data is kept (i.e. you can run with this debugging output enabled all the time).

Once the issue has occurred, logoff and upload the global saved variables file Skillet-Classic.lua and the character specific saved variables file Skillet-Classic.lua. I usually rename the character specific file to Skillet-Classic-.lua and then zip both files. You can upload them here. Then when you login again, do the /skillet flushalldata so you can get back to crafting.

The debug output when a tradeskill fails to open may be the best fingerprint of the problem. When Skillet-Classic is in this state, add /skillet tracelog on and attempt to open Skillet-Classic again. After you have logged out and copied the character specific saved variables file, login and type /skillet tracelog off.

ThisIsMakena commented 2 years ago

Thanks for responding/looking into this. There's no pattern that I've been able to identify, if I notice any I'll update.

Hopefully I followed the above instructions correctly (the only one I wasn't sure about was /skillet debugtrace on, this doesn't seem to be a valid command, so I assumed it was /skillet tracelog on

Apologies if I've gotten it wrong, if I have let me know and I'll have another pass at it.

skilletDebugOutput.zip

b-morgan commented 2 years ago

You are correct, /skillet tracelog on is the correct command. Is this output from a failing case?

Another useful command is /skillet debugstatus which will show the state of the debug options.

ThisIsMakena commented 2 years ago

This is from a point where I was unable to open the enchanting window, engineering/cooking continued working as normal.

b-morgan commented 2 years ago

How do you attempt to open the Enchanting window, From a Skillet-Classic closed state using an action bar button or from the enchanting button in the open Skillet-Classic frame? Do you have TradeSkillMaster installed?

I see:

    "Tue Sep  6 23:25:25 2022(W): No headers, try again", -- [1127]

which means that Skillet-Classic asked the Blizzard UI to tell it about your skills and it returned garbage but this was after what appears to be a successful scan of your enchanting skills. The global saved variables file shows you know enchanting but it has no data

            ["skillDB"] = {
                ["Avika"] = {
                    [7411] = {
                    },
                    [3273] = {
                        "header Bandage", -- [1]
                        "tHeavy Netherweave Bandage", -- [2]
                        "tNetherweave Bandage", -- [3]
                        "tHeavy Runecloth Bandage", -- [4]
                        "tRunecloth Bandage", -- [5]
                        "tHeavy Mageweave Bandage", -- [6]
                        "tMageweave Bandage", -- [7]
                        "tHeavy Silk Bandage", -- [8]
                        "tSilk Bandage", -- [9]
                        "tHeavy Wool Bandage", -- [10]
                        "tWool Bandage", -- [11]
                        "tHeavy Linen Bandage", -- [12]
                        "tLinen Bandage", -- [13]
                        "header Other", -- [14]
                        "tAnti-Venom", -- [15]
                    },
            ["tradeSkills"] = {
                ["Avika"] = {
                    [2550] = {
                        ["isCraft"] = false,
                        ["name"] = "Cooking",
                        ["opened"] = 2250164.647,
                        ["count"] = 0,
                        ["numSkills"] = 16,
                        ["maxRank"] = 225,
                        ["rank"] = 162,
                    },
                    [7411] = {
                        ["isCraft"] = false,
                        ["name"] = "Enchanting",
                        ["opened"] = 0,
                        ["count"] = 0,
                        ["maxRank"] = 385,
                        ["rank"] = 379,
                    },
                    [4036] = {
                        ["isCraft"] = false,
                        ["name"] = "Engineering",
                        ["opened"] = 2250349.492,
                        ["count"] = 0,
                        ["numSkills"] = 133,
                        ["maxRank"] = 375,
                        ["rank"] = 370,
                    },
                    [3273] = {
                        ["isCraft"] = false,
                        ["name"] = "First Aid",
                        ["opened"] = 2250057.566,
                        ["count"] = 0,
                        ["numSkills"] = 15,
                        ["maxRank"] = 375,
                        ["rank"] = 375,
                    },
                },

Next time this happens close the Skillet-Classic frame and use a shift-click on your action bar button to open Blizzard's UI, close it, and open Skillet-Classic again with the action bar button. If it fails this second time, don't check your other professions (as that fills up the debug log with stuff irrelevant to this issue) just logoff and send me the saved variables again.

b-morgan commented 2 years ago

NVM... I found the problem... Enchanted Thorium Bar can be made by Enchanting or Mining! Skillet-Classic can't handle one item being made by two professions.

b-morgan commented 2 years ago

Skillet-Classic-1.48-beta1 should fix this issue. Please try it and let me know.

BTW, to reproduce on alpha3 after a /skillet flushrecipedata (less disruptive than /skillet flushalldata) open Mining on your toon with mining then open enchanting on your toon with enchanting and it should fail. /skillet flushrecipedata and then open enchanting on that toon first, then open mining on that toon and it should fail.

Same experiment with beta1 should succeed on both toons.

ThisIsMakena commented 2 years ago

Thanks for your efforts so far, unfortunately I can replicate the same issue on the beta1 release

In answer to your earlier questions:

These should hopefully be cleaner debuglog versions of the files with only the failed to open enchanting.

SkilletDebugOutput.zip

b-morgan commented 2 years ago

Let's try another fix. Download Skillet-Classic-1.48-beta3 and replace ..\Interface\Addons\Skillet-Classic\Skillet.lua and ..\Interface\Addons\Skillet-Classic\SkilletData.lua with the attached. These will just print a debug and ignore the error.

SkilletData.zip

Please remove your enchanting search string as that generates lots of debugs I don't need to see and then run the experiment again. I'd then like the character specific data from both Avika and Trusia.

Sorry to put you through all this but I don't have an enchanter or a miner of high enough level to generate the error on my system.

ThisIsMakena commented 2 years ago

No need to apologize, you're doing the real work, I'm happy to help where I can.

The error doesn't occur with the beta3 version (with the 2 files from the attached zip), here are the logs from utilising those anyway.

SkilletLogs.zip

b-morgan commented 2 years ago

I have a new solution which is implemented in Skillet-Classic-1.48-beta4. I don't need debugging info unless it fails.

ThisIsMakena commented 2 years ago

So the good news is, my tradeskill windows all seem to be opening correctly, the bad news is I recieve this when opening any vendor


[string "@Skillet-Classic\SkilletData.lua"]:454: in function `GetRecipe'
[string "@Skillet-Classic\Inventory.lua"]:40: in function `InventoryReagentCraftability'
[string "@Skillet-Classic\Inventory.lua"]:195: in function `InventoryScan'
[string "@Skillet-Classic\UI\MerchantWindow.lua"]:137: in function <Skillet-Classic\UI\MerchantWindow.lua:136>
[string "@Skillet-Classic\UI\MerchantWindow.lua"]:202: in function `?'
[string "@Accountant_Classic\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...sic\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Accountant_Classic\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...sic\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Accountant_Classic\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `Fire'
[string "@Accountant_Classic\Libs\AceEvent-3.0\AceEvent-3.0-4.lua"]:120: in function <...ccountant_Classic\Libs\AceEvent-3.0\AceEvent-3.0.lua:119>```
b-morgan commented 2 years ago

I have created a new issue #93 for the vendor issue. I am closing this issue.