AlexFolland / AutoGear

WoW convenience addon that automatically handles gear looting and equipping
https://curseforge.com/wow/addons/autogear
Other
8 stars 11 forks source link

Errors on my hunters 🏹 #35

Closed furtrade closed 1 year ago

furtrade commented 1 year ago

I'm an altalohic and idk if it's related, but for some reason it seems like I get errors more often on my hunters.

8944x Interface/AddOns/AutoGear/AutoGear.lua:2693: attempt to index field '?' (a nil value) [string "@Interface/AddOns/AutoGear/AutoGear.lua"]:2693: in function AutoGearConsiderItem' [string "@Interface/AddOns/AutoGear/AutoGear.lua"]:2498: in functionAutoGearConsiderAllItems' [string "@Interface/AddOns/AutoGear/AutoGear.lua"]:1982: in function <Interface/AddOns/AutoGear/AutoGear.lua:1728>

Locals: info =

{ isGear = true shouldShowScoreInTooltip = 1 item =
{ } equipped = false validGearSlots =
{ } invType = 18 link = "|cff1eff00|Hitem:21841::::::::53:253:::::::::|h[Netherweave Bag]|h|r" rarityColor =
{ } linkHash = 3219562995 classID = 1 usable = 1 numBagSlots = 16 name = "Netherweave Bag" rarity = 2 subclassID = 0 id = 21841 } bag = 3 slot = 29 rollOn = nil chooseReward = nil justLook = nil score = 16 firstValidGearSlot = 31 lowestScoringValidGearSlot = 31 (temporary) = nil (temporary) = 1 (temporary) = nil (temporary) = nil (temporary) = nil (temporary) = nil (temporary) = nil (temporary) = nil (temporary) = nil (temporary) = "attempt to index field '?' (a nil value)"

AlexFolland commented 1 year ago

Okay, this is interesting. It looks like the gear slots go beyond 23 in Dragonflight. Can you please run AutoGear and give me the output of the following commands?

  1. /dump select(4, GetBuildInfo())
  2. /dump AutoGearFirstEquippableBagSlot
  3. /dump AutoGearEquippableBagSlots
  4. /run (for k,v in pairs(AutoGearEquippedItems) do print("k: "..tostring(k).."; item: "..(v.info and v.info.name or "nil")) end)
furtrade commented 1 year ago
  1. Dump: value=select(4, GetBuildInfo()) [1]=100000
  2. Dump: AutoGearFirstEquippableBagSlot AutoGearFirstEquippableBagSlot=31
  3. Dump: AutoGearEquippableBagSlots AutoGearEquippableBagSlots={ [1]=31, [2]=32, [3]=33, [4]=34 }
  4. Doesn't print anything
AlexFolland commented 1 year ago

Thanks for that! I've just committed a potential fix and released version 2022-11-01-release-2 with that fix. Can you please test it out?

AlexFolland commented 1 year ago

Oh, I made a mistake in 2022-11-01-release-2. I've fixed it and released 2022-11-01-release-3. Please check that instead.

AlexFolland commented 1 year ago

I've made a couple more changes which may affect you on a hunter, including changes related to ranged weapons post-MoP. Please let me know what you see.

furtrade commented 1 year ago

The updates seem to have drastically reduced the number of errors.

This dump looks identical to me:

Dump: value=select(4, GetBuildInfo()) [1]=100000 Dump: AutoGearFirstEquippableBagSlot AutoGearFirstEquippableBagSlot=31 Dump: AutoGearEquippableBagSlots AutoGearEquippableBagSlots={ [1]=31, [2]=32, [3]=33, [4]=34 }

Getting a new error:

6x [string "(for k,v in pairs(AutoGearEquippedItems) do print("k: "..tostri..."]:1: unexpected symbol near 'for' [string "=[C]"]: in function RunScript' [string "@Interface/FrameXML/ChatFrame.lua"]:2165: in function?' [string "@Interface/FrameXML/ChatFrame.lua"]:5219: in function ChatEdit_ParseText' [string "@Interface/FrameXML/ChatFrame.lua"]:4883: in functionChatEdit_SendText' [string "@Interface/FrameXML/ChatFrame.lua"]:4919: in function `ChatEdit_OnEnterPressed'

Locals: (*temporary) = "(for k,v in pairs(AutoGearEquippedItems) do print("k: "..tostring(k).."; item: "..(v.info and v.info.name or "nil")) end)"

Unrelated, I don't know about you, but the version mismatch triggers my autism 😉 image

AlexFolland commented 1 year ago

The version mismatch is intentional because it's not ready for Dragonflight yet. We don't just match the version number and release when it's not ready.

The error is from running the chat line and nothing else. You don't have to do that any more since I got the information I needed. Thanks for doing that!

So, knowing that, it sounds like you have no errors. Is the behavior okay?

furtrade commented 1 year ago

The addon seems to be behaving very well for the moment. Well done 🥇 .

btw the current pre patch version of the game is 10.0. image

And if you look at all the other addons on CurseForge, most are marked as version 10 these days. Your addon might get a little more visibility if you update the version number.

AlexFolland commented 1 year ago

The addon seems to be behaving very well for the moment. Well done 1st_place_medal .

Great! Thanks for testing it.

btw the current pre patch version of the game is 10.0. image

And if you look at all the other addons on CurseForge, most are marked as version 10 these days. Your addon might get a little more visibility if you update the version number.

Well yes, I know that obviously. Like I said, I purposely did not change the TOC version number because the addon was not ready, since I don't want players jumping into a broken addon which claims it works. I will change it soon, now that you've reported it works well. It was literally not compatible before, so obviously it should not claim to be.