Success chance incorrectly capped
matthewhively opened this issue ยท 4 comments
I've currently got (yellow) heavy wool bandages, still capped at 150 first aid, and according to the tooltip only a 17% chance of success. This is clearly wrong. It looks like the % chance is still incorrectly assuming that gray is only 6 skill points away, and thus to fade away quickly.
6 skill remaining = 17.1
5 skill remaining = 14.2
4 skill remaining = 11.4
etc
I can at least confirm the tooltip shows the correct skill levels for that recipe, only the % chance is wrong.
I'm looking at the code now, see if I can spot any bugs.
There is only one formula that I am aware of and it isn't profession specific. I think Blizzard's actual implementation does have some component based on profession but its not publicly known.
https://www.reddit.com/r/woweconomy/comments/9epibc/crafting_skillups_exact_skillup_chance/
The formula is implemented in UI\MainFrame.lua lines 2397-2422, Skillet:getLvlUpChance()
I believe the code implements the formula correctly so the only thing that might be wrong is the entry in the SkillLevels table.
If I'm understanding this correctly, you are pulling the values from the colored frames showing the skill levels visually.
local gray = tonumber(SkilletRankFrame.subRanks.green:GetValue())
local yellow = tonumber(SkilletRankFrame.subRanks.orange:GetValue())
I believe this would be the code causing the bug, since obviously the frame itself is capped at your max skill level.
Why not pull the actual data from the skill levels table?
local orange,yellow,green,gray = self:GetTradeSkillLevels(recipe.itemID, recipe.spellID)