arkayenro / arkinventory

A World of Warcraft Inventory mod for Retail, Burning Crusade, and Classic
108 stars 14 forks source link

[BUG] [TWW Beta] Mount Config 'Skyriding' Preference for Enabled Zones Selects Both Normal & Dragonriding Selections #1909

Closed Calesta closed 2 weeks ago

Calesta commented 1 month ago

What version number you are using? v31033.Alpha.5

What game client are you playing? Retail, Wrath, Classic / Live, PTR, Beta TWW Beta

What language is the game client set to? English

Describe the bug I have two (2) flying mounts selected - a 'normal' one (Archmage's Prismatic Disc) and a 'dragonriding' one (Highland Drake). In retail with the 'Skyriding' preference enabled, the addon correctly summons the Highland Drake whenever I'm in a dragonriding-enabled zone when I use the assigned keybinding. In the beta with that same preference enabled, the addon will alternate between selections despite being in Dornogal where skyriding is enabled.

I 'thought' perhaps it was because of the newly added 'flight style' - steady or skyriding - essentially adding another variable to the mix but it functions the same using either style.

To Reproduce Select 1 normal and 1 dragonriding mount under 'Flying' in the 'Mount: Config' window. Ensure 'Use All' is deselected. Ensure 'Skyriding' preference is enabled. Set a keybiding for ArkInventory 'Summon Mount'. Hit that keybiding multiple times to mount/dismount to see the alternating selections.

Screenshots Capture1

Capture2

Additional context It's likely not related to the issue, but, since I considered that it might be part of the problem, any thoughts to having selections by flight style or is that just getting too overly complex to manage all the possible combinations?

arkayenro commented 1 month ago

none of the mounts are being tagged as "dragonriding" any more, they all appear to be capable of skyriding

if you summoned the prismatic disc while skyriding was enabled then it would have not have flown normally, it would have had the skyriding action bar open

ie, theres no difference between "normal" and "dragonriding" mounts any more.

arkayenro commented 1 month ago

looks like the isDragonRiding return has been changed to isSteadyFlight, so for the moment ive removed the config option and will use the flight mode aura you have enabled to set the preference instead.

if steadyflight only mounts ever turn up, and your aura is set to steady flight, then those should get selected over the combo ones.

Calesta commented 1 month ago

I tried setting the Archmage's Prismatic Disc as the only 'selected' flying mount while in Steady flight mode and the Highland Drake as the only 'selected' flying mount while in Skyriding flight mode but it didn't seem to matter. Whatever mode I have selected, the 'Summon Mount' key biding just cycles through the flying mounts that are 'selected'. Did I misunderstand?

In any case, I'm sure you'll include whatever functionality and options that you can given the limitations presented by the game. I appreciate the efforts!

arkayenro commented 1 month ago

the problem is that the mount type (skyriding or stable) is not set by me, i pull that from blizzard, and every single flying mount is currently tagged as skyriding capable (in war within). they actually flipped the return from skyriding to stable, so i preusume while there may eventually be some stable only flying mounts, right now there are none.

also, you arent selecting them for skyriding or stable mode, youre just selecting them for flying - and the code checks what type of mounts they are and preferences the type you want.

if you preference stable then as there currently arent any, its falling back to giving you any viable selected flying mount. if you open the debug window you can see the mount logic run through its options when you summon a mount.

yes, the highland drake is a dragon, and the disc isnt, but they are both capable of both skyriding and stable flight modes so to the code they are the same type and get preferenced the same.

theres nothing to differentiate those two mounts any more.

Calesta commented 2 weeks ago

Given that this isn't a bug with ArkInventory but rather a change to how the mounts are classified, I'm going to go ahead and close this issue so that it's not mucking up the list of other important fixes. If you ever consider reworking the mount code, then perhaps we could get separate flying selections based on flight mode selected if that's even possible.