GearMenu

GearMenu

221k Downloads

Quickchange feature may need a rework.

KevinTyrrell opened this issue ยท 3 comments

commented

I kept wondering why during raids, my trinket Diamond Flask would be swapped slots with the slot it was in previously. Diamond Flask was the only trinket I had in my Quickchange settings. I had Diamond Flask --> Blackhand's Breadth after a duration of 60, which worked well.

However in many cases, I would have Diamond Flask in one trinket slot and Blackhand's Breadth in the other slot. GearMenu after 60 seconds would attempt to equip Blackhand's Breadth, causing the trinkets to swap places. This really isn't GearMenu's fault, but it is kind of a symptom of bad design which is understandable because the world of trinket switching is complicated.

What gear menu needs is exactly what ItemRack and TrinketMenu have. A trinket swapping priority system. You define a priority of trinkets which you want equipped and under what circumstances to equip them. For example:

Trinket Name Buff Spell ID (nil if N/A) Extra Priority (even if other trinket is off cd or giving a buff at the moment) Halt Queue (stop queue in this slot if equipped by the player) Equip In: Everywhere Battlegrounds Dungeons Raids Cities Overworld Halt Queue (stop queue in this slot if equipped by the player) Yes No Only-if-not-in-right-area Slots: Either Top Bottom Doesn't Play Nice With: (Avoid double on-use trinkets at the same time, that will cause each other to go on 15 second cooldown)
Insignia nil Yes No Battlegrounds Only-if-not-in-right-area Either nil
Diamond Flask 24427 Yes No Everywhere Yes Top Lifegiving Gem

etc.

I have a few years of Lua experience and with the WoW API and would be willing to help you in patching in such a feature.

commented

Cleanup - closing this

commented

Hi @KevinTyrrell

I fully understand what you mean. I had a look into this while I was initially developing the feature but decided on purpose not to implement such priority system. I'm fully aware that quickchange is not perfect but I intended for it to be as easy as possible in most situations. Which also helps me avoid bugs.

Based on that I will certainly keep this suggestion in the back of my head but I don't think I intend to change how quickchange works in the near future.

Cheers,
RagedUnicorn

commented

@RagedUnicorn Understandable. Thank you for the candid response.

However I actually think there's a bug/oversight here that we can correct with minimal effort that will greatly improve this feature. Simply add the following condition:

Do not perform the quickchange operation if both items are currently equipped.

This will stop trinkets from 'trading places' and going on a 30 second cooldown accidentally. For example, you're a mage in PvP and you typically use Insignia of the Horde and Talisman of E. Power. You have quickchange setup so that once Talisman is used, Zandalarian Hero Charm is equipped. You use Insignia of the Horde in a combat situation and now it is on cooldown for 5 minutes, so you manually switch Insignia of the Horde for Zandalarian Hero Charm. Zandalarian Hero Charm is now on cooldown for 30 seconds. You get into a combat engagement and use Talisman of E. Power. After combat ends, quickchange swaps Zandarlian Hero Charm with Talisman of E. Power, causing Zandalarian Hero Charm to go on another 30 second cooldown. This type of situation happens very frequently with quickchange, particularly with trinkets. If a single check is performed to see if the quickchange item is already equipped, this problem will go away.

Thank you for your time.

Edit: Added pull request: #72