Breeni / BtWLoadouts

7 stars 2 forks source link

Macro mess #50

Open homezonebenny opened 6 months ago

homezonebenny commented 6 months ago

Add this option to BtWLoadouts ActionBar Profile:

image (Maybe "Delete and RE-Create all macros" as name)

See image explaination:

image

If you load from one profile to another, macros get added so that they fill all the free spaces. Which ends up in a big problem that you can't create any new macros, because you have the macros from "Heal Druid" and "Shadow Priest" and everything mixed up together...

Or even if you switch from Holy Priest to Shadow Priest, it adds the missing macros instead of replacing everything. So there should be an option to "Replace all macros on profile load" option.

So IF you load this ActionBar Profile it deletes all macros and then creates all macros on the exact same field in the macro menu! And then, puts all the macros, together with spells and items, into the ActionBar.

It's a big issue, if you have so many macros mixed together. After the load of the ActionBar profile, it even put CHARACTER macros into GENERAL macros and vise versa...

Here's a even more detailed explaination:

image

After just two Character (different classes) ActionBar Profile loads, the GENERAL Macro Tab is completely FULL and there is no space left to laod anything!

image

EDIT

I found a "working" version of Action Bar Profiles Addon, which is a FanUpdate. You can download this addon and test it yourself with profile save + how it act with the General Macros and Character Macros. Action Bar Profiles (Fan Update)

To test it you can simply create a Macro for both, General Macros and Character Macros. Create a new profile (Character Window -> Book Symbol -> + Symbol -> Name it).

Make sure you checked this checkboxes:

image

Create 2 more random Macros and save another profile with another name. Now youc an switch between both profiles and see what it does with the ESC -> Macros. But it's important to CLOSE the ESC -> Macros menu before loading another profile, because it will not Refresh the Window View.

Exactly this delte all macros -> create all macros option is needed for BtWLoadouts to fix the macro mess issue.

Breeni commented 6 months ago

Is the idea here that it would delete all existing macros? I worry that could cause some issues where people lose macros from other addons or similar where they aren't on the action bar. One possibility would be to only delete macros that are on other action bar sets. Would this some the issue for you?

homezonebenny commented 6 months ago

If you add a checkbox: [ X ] Delete / Re-Create Macros (Blizzard)

If this checkbox is set, all general / character macros are stored into the saved profile. If the profile gets loaded, it deletes all existing general / character macros, and loads all macros from the saved profile. Exact same name and field position, same name and Icon, like it's saved into the profile.

It would be a Voluntary option none need to select if it makes issues with other add-ons! ☝🏻 If you use another Addon which creates own macros (not using the blizzard ones), but your addon only deletes / recreates them from saved profile, it will not make problems with the other addon.

I really really only can recommend you to download and test the Addon (ActionBarProfiles) I linked you above. It's only a fan update since the original addon is not continued since 2020. That means saving talents / hotkeys is broken.

But you could simply create test macros for general and player macros. Put them into action bar, create another macro, save another profile. Now switch back and forth between the profiles and see how the macros get deleted / recreated / loaded.

You can even set a STAR symbol to your "main profile" of the current active class specc. Change to another specc. Create other macros, save it as another (3rd) profile. Set a STAR symbol for this profile. This star is only for the class specc. Now change your specc back to the other profiles specc. You'll see, that it automatically loads the profile with the STAR symbol for this specc! Change back to the other specc, and it loads the other profile automatically too.

That "auto load" happens, if you change the current specc to another one. AND if you LOGIN. When you login, the addon checks the current specc and loads the default profile (star symbol) to this specc. Why is that important? Because if you do a relog from one character to another, like from a druid tank to a arcane mage, it needs to load the profile at login. Deleting all the macros from druid tank, creating all the arcane mage macros and load them into action bars.

IF you spend the little time to test the ActionBarProfiles (Fan Update) Addon, you'll get inspired and the ideas how to improve your add-on!

Your addon have really creat fundamentals. But for many people who comes from ActionBarProfiles, it's extremely (unnecessarily) compliance and can't reproduce what you are able to do in ActionBarProfiles...

BUT, there's possibilities in your Addon, which isn't in ActionBarProfiles! For example you can load a 2nd profile which adds things to the current loaded profile instead of loading everything new. But this is not necessarily needed, since you could probably just load another profile which includes stuff from profile 1 and 2 and you have the same result, basically. But sure, in BtWLoadouts you could have your profile loaded and just change the pvp talents instead of loading EVERYTHING including pvp talents.

So, if you really take some minutes and check out ActionBarProfiles you get the Idea what it do and how simple it is. And what functionalities of this addon could help to improve BtWLoadouts, which totally has potentials! ☺️

homezonebenny commented 6 months ago

Alternative: I can offer you a quick discord call and I show you my screen and show you all the things real quick. Diacord Name: DedraTV

I'm a programmer as well, 38 years old so I could guide you through it real quick. I have all classes and all speccs on level 60+ on both sides, horde and alliance. Playing them since classic times. I'm writing extremely complicated macro combinations which goes over many actionbars combined to each other with a simple button (spell) press to overcome the macro length limitations! That's the main reason a macro / action bar profile loading addon is required. I already started to Re-Write ActionBarProfiles from Scratch to fix the Addon. But still thinking that BtwLoadouts have potential to replace the addon with some small adjustments.

Breeni commented 6 months ago

I am reluctant to add this feature exactly as you've described it because at its core BtWLoadouts is effectively a wysiwyg editor for loadouts. I'm very cautious about adding a new feature that wont be very obvious what it will do for a new user, especially if it could be destructive in some way. Currently BtWLoadouts also never activates a loadout automatically, it was designed to only help people remember to switch as needed and adding an option to activate a loadout on login/spec switch doesn't fit in with that idea but would be a somewhat required feature if we start deleting account macros. These are the problems that need to be solved because I start writing any code for this feature.

homezonebenny commented 6 months ago

I totally understand your point!

What about another Idea:

  1. Adding a new Tab to the bottom, besides talents called "macros". You can add a new Profile name and add "unlimited macros" for it. Drag & Drop them into Action Bars. Basically don't use the Blizzard Macros, but your own.

  2. At the "Reminder" feature, to load a profile, add the option for "Login / Re-Specc". So if you login to Heal Shaman it tells you to load your profile. If you change specc to elemetal shaman, it reminds you to load your profile. If you relog to your Frost Mage, it reminds you on login to load your profile. Or even add the possibility to set a checkbox of "automatically load this profile" if your set metrics are met. And if it's only possible for "on login" or "on specc change".

With that, you would still keep up, how BtWLoadouts is designed. But you give the possibility to create macros your own way. So IF you load that profile, it loads those macros from that profile. It would not interfere with existing things, because it's a completely new feature.

If you want, you can add me for a quick brainstorm. If you want I could even create a diagram for the programming process.

Breeni commented 5 months ago

The more I think on it the more I agree that a new macros tab would be required. I'm not inclined to make an entire new macro system on top of it though since that'd probably still require making blizzard macros under the hood anyway.

One feature I am currently working on is a public facing api for adding new loadout segments and tabs that'll allow potential integration with third party addons. There is still more work to do on this, and I'll finish this before adding any new segments and tabs myself.

As for the reminder on swapping specs, that may well fit in to the existing condition system, if not I'll have to make sure it wont interfere with it.

homezonebenny commented 5 months ago

The API sounds good.

And yes, adding an own macro tab creating all the macros for one profile to load them would fit perfectly into your basic system.

Adding the reminder to load a specific profile on login / respecc fits your basic system too.

With both, it would basically fix all the issues I described here. Sure, it's a bit more complicated to create such a profile compared to ActionBarProfiles, but it's theoretically more flexible with your system, because you can load one profile over the other. Or just load different pvp talents and keep the rest as is.

That's why I offered the idea of extra macro tab, so your addon manage them. And it would hopefully solve the field space issue of the max macros you can create with the blizzard menu. Character macros are extremely limited, no scrolling possible, only one page, so that you often need to use Global Macros...

homezonebenny commented 5 months ago

For the new macro tab, you could give the option (red button):

If you press it, it imports them ONCE (no duplicate entries in your tab). So it would make the switch to your macro tab easier. If you press the import again, it imports them again, BUT overwrites the existing ones in your macro tab. I didn't look into it, if there are any unique IDs in the Blizzard macros for each "macro field", but there should be a way to identify them.

And it would even be possible to manage the blizzard macros with ANY other addon, and after you changed them, you can import them into your Macro Tab.

This would probably be the perfect solution for every scenario I can think of right now.