Skillet-Classic

Skillet-Classic

445k Downloads

Enchanting: Skill difficulty for enchants get mixed and display incorrectly

PaCozz opened this issue ยท 8 comments

commented

Enchanting skills mix up difficulties if another profession window is opened after the enchanting window. Skills that are supposed to be yellow, show up as gray etc. UI has to be reloaded to fix this issue temporarily.

Steps to reproduce:
1.Play WoW:BCC
2. Enable Skillet-Classic
3. Log in on a character that has Enchanting profession
4. Open the enchanting profession window
5. Close enchanting profession window
6. Open First aid window
7. Close First aid window
8. Open enchanting window again
9. Observe mixed skills

Repro 5/5. Depending on which secondary profession is opened the difficulties mix up differently

Screenshot:
WoWScrnShot_053121_192032

commented

can confirm this is happening to me, it also throws LUA errors, or at least has once, but I cannot replicate that

commented

After looking at the code I think I found the problem. Please replace ...\UI\MainFrame.lua with the one from the attached zip file.

MainFrame.zip

commented

Unfortunately, I had to split my characters between Classic Era and Burning Crusade Classic and my higher level (only 71/150) Enchanter stayed on Classic Era. I have a brand new enchanter on Burning Crusade Classic but I cannot reproduce this error on either version. That means we have to cooperate in a joint troubleshooting session.

@Dejoule Please install BugGrabber and BugSack. If you get another Lua error, it will be captured so you can post it here and I can look at it. You may have to edit the !BugGrabber.toc file changing ##Interface: 90005 to 20501.

Skillet-Classic contains debugging statements scattered throughout the code. Normally they do nothing but can be enabled by typing in chat. The basic command is "/skillet debugshow on" which turns on output to chat and output to the per character saved variables file, Skillet-Classic.lua. "/skillet debugshow off" will turn off chat output but will leave output to the saved variables file enabled. This log is limited in size and keeps only the most recent output. It can be turned off with "/skillet debuglogging off". The performance impact of debug logging is minimal. I run with it on all the time.

In addition, there are other "levels" of debugging including "/skillet traceshow on" and "/skillet warnshow on". Status of all the debugging features is shown by "/skillet debugstatus". One more command I will probably need is "/skillet tabledump".

Normally, you do not need to capture the chat output. Its useful for me when I'm actively debugging, but in this case of remote troubleshooting, I'll only need the per character saved variables file and the global saved variables file.

Now for the actual troubleshooting steps I'd like you to perform.

First, I see a lot of addons including a complete UI. If you have any profession / trade skill / crafting addons, please see if disabling them changes the behavior of this Skillet-Classic issue. I don't want to request only Skillet-Classic enabled unless necessary.

Second, when the Skillet-Classic frame is showing bad data, close it and reopen it to the SAME profession and let me know if that clears things up. If not, then I will need the debug log with "/skillet debuglogging on", "/skillet tracelog on", and "/skillet tabledump on".

commented

1x [ADDON_ACTION_BLOCKED] AddOn 'Skillet-Classic' tried to call the protected function 'SkilletFrameTradeButtons-Horologist:Show()'.
[string "@!BugGrabber\BugGrabber.lua"]:519: in function <!BugGrabber\BugGrabber.lua:519>
[string "=[C]"]: in function Show' [string "@Skillet-Classic\UI\MainFrame.lua"]:709: in function UpdateTradeButtons'
[string "@Skillet-Classic\UI\MainFrame.lua"]:881: in function UpdateTradeSkillWindow' [string "@Skillet-Classic\UI\MainFrame.lua"]:2352: in function ScrollToSkillIndex'
[string "@Skillet-Classic\Skillet-20501.nil.lua"]:1416: in function SetSelectedSkill' [string "@Skillet-Classic\UI\MainFrame.lua"]:2273: in function SkillButton_OnClick'
[string ":OnClick"]:2: in function <[string ":OnClick"]:1

This is the code .lua I still don't know how to reliably replicate it. I don't think it's related to this issue though.

commented

@Dejoule Your assessment is correct, this has nothing to do with this issue. Please help me keep track and open a new issue.

commented

I'm having the same issue if I can be of any help on my Enchanter. I'm only have the problem on my enchanter as well. That toon is also a tailor and that list works finr. All my other toons you and I have looked at recently in their other professions so far work as expected to the best of my knowledge so far.

Here is my dump turning on debug from above:
Skillet-Classic: SkilletFrameForceClose()
Skillet-Classic: SkilletShow(), currentTrade= nil
Skillet-Classic: name= 'Enchanting', rank= 294, maxRank= 300
Skillet-Classic: SkilletShowWindow(), currentTrade= 7411, scanInProgress= nil
Skillet-Classic: RescanTrade(), currentTrade= 7411, lastTrade= nil
Skillet-Classic: ScanTrade: Enchanting: 7411 96 recipes
Skillet-Classic: SortAndFilterRecipes(), skillListKey= REDACTED:7411:Blizzard
Skillet-Classic: StealEnchantButton()
Skillet-Classic: ShowTradeSkillWindow()
Skillet-Classic: UpdateTradeSkillWindow()
Skillet-Classic: UpdateIgnoreListButton()
Skillet-Classic: GetIgnoreList(nil)
Skillet-Classic: Ignored List for: all players
Skillet-Classic: UpdateShoppingListWindow(false)
Skillet-Classic: ShowTradeSkillWindow complete
Skillet-Classic: UpdateTradeSkillWindow()
Skillet-Classic: UpdateIgnoreListButton()
Skillet-Classic: GetIgnoreList(nil)
Skillet-Classic: Ignored List for: all players
Skillet-Classic: UpdateShoppingListWindow(false)

commented

After looking at the code I think I found the problem. Please replace ...\UI\MainFrame.lua with the one from the attached zip file.

MainFrame.zip

This has since fixed my enchanting mixup issue, btw

commented

Skillet-Classic-1.26 contains the fix for this issue.