Download
(19 Kb)
Download
Updated: 09-04-14 07:50 PM
Pictures
File Info
Compatibility:
Siege of Orgrimmar (5.4)
Updated:09-04-14 07:50 PM
Created:11-08-08 12:23 PM
Downloads:5,682
Favorites:158
MD5:
Categories:Action Bar Mods, Bags, Bank, Inventory
5.4
Select  Popular! (More than 5000 hits)
Version: 2.3.1
by: Gello [More]
This addon adds the /select macro command you can use instead of /use or /cast to use an item or spell among a list. Right-clicking your macro from the bars will pop out a menu where you can change the item or spell to use.

New in 2.3.0
  • Searches (ie type:food) are now case-insensitive.
  • Spells with charges now display their charges on flyout buttons.
  • All /selects are now state-driven instead of only those with a [condition].
  • /select [conditions] without a met condition are now handled cleanly.
  • Options panel reworked.
  • For users of Select Favorite Mounts, mount:favoriteflying changed to mount:favflying; mount:favoriteland changed to mount:favland.

How to Use
  • Create a macro with this line: /select item or spell, item or spell, etc
  • Drag the macro to your bars.
  • The first item or spell will be the default action when you hit the macro.
  • Right-click the macro to on your bars to change it to a different item or spell.

For instance, warriors may find this useful:
/select Battle Shout, Commanding Shout
When you create that macro it will cast Battle Shout every time it's hit. If you join a group with a death knight and want to use Commanding Shout instead, right-click the macro on your bars and choose Commanding Shout. Now the macro will display and cast Commanding Shout.

You can also embed the /select within a larger macro. For mages:
/focus [@focus,noexists][@focus,dead][mod:alt]
/select [@focus,exists][] Polymorph, Polymorph(Turtle), Polymorph(Rabbit), Polymorph(Black Cat)
This is a standard focus-sheep macro. When you want to change what polymorph spell to use, right-click the macro on your bars and pick another. It will use that new polymorph until you decide to change it again.

Search:Keywords

To help add items and spells to your /select macros, search:keywords are usable in place of an item or spell name. These search through your bags and spellbooks to fill the flyout with items and spells that match the keyword(s).

The officially supported searches are item, spell, mount, type and profession:

item:id or partial name
Add an item by its item:id or all items in your bags or worn that contain the partial name.
Examples: item:1234, item:Bandage, item:Ore

spell:id or partial name
Add a spell by its numerical id or all spells that contain the partial name.
Examples: spell:1234, spell:Shout, spell:Polymorph

mount:flying, land, favorite*, favflying*, favland* or partial name
Add all flying, land, favorite, favorite flying, favorite land mounts or mounts that contain the partial name.
Examples: mount:flying, mount:Raptor, mount:favorite
* favorite-related keywords only work in WoD or if you have the Select Favorite Mounts addon in MoP.

type:ItemType
Add all items that contain the keyword in one of its type fields. See www.wowpedia.com/ItemType for a full list.
Examples: type:Quest, type:Food, type:Herb, type:Leather

profession:primary, secondary, any or partial name
Adds all primary professions, secondary professions or any professions.
Examples: profession:Primary, profession:Any, profession:Herb

[condition] support

Just like /cast and /castsequence, /select can use [conditions]. Every [condition] used by the macro system is supported. Some examples:

/select [flyable] Name of flying mount, Another flying mount; Name of land mount
/select [@focus,exists][] spell:Polymorph
/select [combat] Master Healing Potion, Healthstone; [nocombat] item:Food & Drink
/select [spec:1] Conjured Mana Cake, Cobo Cola; Conjured Mana Cake, Frybread
/select [nopet] spell:Summon Demon; Grimoire of Sacrifice


Macro length "tax"

To do its magic, Select needs to add a line like this to all macros that contain a /select command:
/click [btn:2]S001M;S001A
It will do this on its own and it will recreate this line if it's accidentally deleted or altered. You don't need to worry about it except to remember that when writing your /select macros your macro needs at least 26 characters free for it to add this line (if it's not already there).

Limitations
  • Only the first /select in a macro will be recognized. Any others in the same macro will be ignored.
  • When you create or edit a macro in combat (you should be fighting!) it will wait until you leave combat to turn the macro on or make changes from your edit.
  • If you gain an item or spell that wasn't available as you entered combat, that item or spell won't be in the flyout until you leave combat.

Frequently Asked Questions

Q: What action bar addons does this support?
A: All of them! Default too, of course. If you can drop a Blizzard macro onto the button then Select should work with that button. However, if the macros are outside the game's standard macro slots, Select won't be aware of them.

Q: Can I add companion pets to /select?
A: Yes and no. There's a game limitation that prevent changing the icon easily. That said, pet:name, pet:favorite and pet:any work. But be aware it uses one icon for all pets.

Q: Can I change the order that items or spells list in the menu?
A: If you want certain items to list before others, add them manually. ie: /select x-51 nether-rocket x-treme, mount:flying will list the x-51 rocket first.

Q: Tyrael's Charger is missing from my land mounts!
A: Tyrael's Charger can fly so it's grouped with the flying mounts. But if you want to add it to your land mounts you can add it manually: /select tyrael's charger, mount:land

Q: Can you make the popout menu align to the action/macro button?
A: No, sorry. The secure methods to get the menu working in combat prohibits anchoring willy nilly.

If you have any suggestions, comments or bugs to report, feel free to post them in comments here. Thanks!
2.3.1, 9/4/14, fix for lua error when attempting to show tooltip of a spell no longer known
2.3.0, 8/29/14, rewrite, all /selects are state-driven, searches case insensitive, options panel reworked, full WoD mount support
2.2.0, 7/21/14, initial fixes for WoD beta
2.1.6, unreleased, made index,actionType local in Select_Menu.lua SetAction hooksecurefunc
2.1.5, 2/23/14, fix for handling of invalid/missing [condition]als
2.1.4, 2/20/14, fix for hyphenated item:searches
2.1.3, 1/14/14, fix for mounts not completely loading on login
2.1.2, 12/26/13, frames join UISpecialFrames only when they're shown (out of combat)
2.1.1, 9/11/13, toc update for 5.4
2.1.0, 6/22/13, semi-rewrite: state driver added, flyouts indexed by their list instead of their macro, DontSelectWithAlt option, item cache added,
2.0.13, 5/19/13, toc update, summonpet works in combat, menus at top of screen grow downward
2.0.12, 5/5/13, added mount:favorites filter if Select Favorite Mounts loaded
2.0.11, 4/18/13, BAG_UPDATE unregistered if all menus populated, added Select_PerCharacter_Settings to restore initial actions to last attributes, removed profiling tools
2.0.10, 4/06/13, removed G_PetRoster, added profiling tools
2.0.9, 3/28/13, removed internal pet system, added G_PetRoster
2.0.8, 2/18/13, added macrotext support, centralized timer system, internal pet system
2.0.7, 1/26/13, added tooltips to /select macros
2.0.6, 9/23/12, added nil,1 to GetItemCount in parent:OnShow, added throttled UpdateMacroIcons on BAG_UPDATE, PLAYER_EQUIPMENT_CHANGED
2.0.5, 9/21/12, rewrite release
1.0.0, 11/08/08, initial release
Optional Files (0)


Archived Files (13)
File Name
Version
Size
Author
Date
2.3.0
18kB
Gello
08-30-14 04:14 PM
2.1.5
18kB
Gello
02-23-14 06:41 AM
2.1.4
18kB
Gello
02-20-14 12:38 AM
2.1.3
18kB
Gello
01-14-14 10:08 PM
2.1.2
18kB
Gello
12-26-13 06:11 AM
2.1.1
17kB
Gello
09-11-13 10:15 AM
2.1.0
17kB
Gello
06-22-13 04:46 PM
2.0.13
17kB
Gello
05-21-13 11:15 AM
2.0.12
18kB
Gello
05-05-13 07:24 PM
2.0.11
18kB
Gello
04-18-13 10:47 PM
2.0.6
16kB
Gello
09-23-12 05:20 PM
2.0.5
16kB
Gello
09-21-12 07:06 PM
1.0
4kB
Gello
11-08-08 12:23 PM


Post A Reply Comment Options
Unread 07-07-14, 02:09 PM  
OmniBlade
A Murloc Raider

Forum posts: 4
File comments: 15
Uploads: 0
Re: Re: Missing Pets

Originally Posted by Gello
Unfortunately, Blizzard did not consistently carry the "spell" behavior of pets when they made pets account bound and gave them a petID. If you haven't tried yet, you'll note the "spell" version of the pets don't actually summon.

I'm afraid companion pets are not officially supported in Select. There's some backend work to support them, but it waits for a method to change the macro icon securely. These "work" but the macro icon doesn't reflect the selected pet:

/select pet:Dragon Kite
/select pet:favorite
/select pet:any

The major, major roadblock to implementing pets is the ability to set the macro icon to an arbitrary icon. I spent months on this problem. I have a messy proof of concept that should work but I've since gotten immersed in Rematch which is eating up all my free time at the moment.

I was hopeful that WoD would add a SetMacroIcon or something but it's not looking likely. We'll know for sure once they enable scripting/addons on beta.
This worked fantastically! Ive been looking for a way to keep all my best mounts and pets down to 1 button, when you have so many of them but like a lot Select is perfect. As for the icon of the macro it is no big deal for it to pick a default icon, the functionality is good. Thanks a lot for the reply.
OmniBlade is offline Report comment to moderator  
Reply With Quote
Unread 07-07-14, 05:59 AM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
Re: Missing Pets

Originally Posted by OmniBlade
For some reason most TCG items wont show up on the macro when I make them. I tried using the pet name, spell id, and several other things.

/select Dragon Kite, Ethereal Soul-Trader, Deathy, Grunty, Bananas, Brilliant Kaliri, Lil' XT, Mojo, Proto-Drake Whelp, Teldrassil Sproutling,
/click [btn:2]S20:M;S20:A

When I click the icon the Dragon Kite, Ethereal, and Mojo (not TCG) wont show up. Along with some other pets I have tried. Do you have a way I can get them to show?
Unfortunately, Blizzard did not consistently carry the "spell" behavior of pets when they made pets account bound and gave them a petID. If you haven't tried yet, you'll note the "spell" version of the pets don't actually summon.

I'm afraid companion pets are not officially supported in Select. There's some backend work to support them, but it waits for a method to change the macro icon securely. These "work" but the macro icon doesn't reflect the selected pet:

/select pet:Dragon Kite
/select pet:favorite
/select pet:any

The major, major roadblock to implementing pets is the ability to set the macro icon to an arbitrary icon. I spent months on this problem. I have a messy proof of concept that should work but I've since gotten immersed in Rematch which is eating up all my free time at the moment.

I was hopeful that WoD would add a SetMacroIcon or something but it's not looking likely. We'll know for sure once they enable scripting/addons on beta.
Last edited by Gello : 07-07-14 at 06:00 AM.
Gello is online now Report comment to moderator  
Reply With Quote
Unread 07-06-14, 04:03 PM  
OmniBlade
A Murloc Raider

Forum posts: 4
File comments: 15
Uploads: 0
Missing Pets

For some reason most TCG items wont show up on the macro when I make them. I tried using the pet name, spell id, and several other things.

/select Dragon Kite, Ethereal Soul-Trader, Deathy, Grunty, Bananas, Brilliant Kaliri, Lil' XT, Mojo, Proto-Drake Whelp, Teldrassil Sproutling,
/click [btn:2]S20:M;S20:A

When I click the icon the Dragon Kite, Ethereal, and Mojo (not TCG) wont show up. Along with some other pets I have tried. Do you have a way I can get them to show?
OmniBlade is offline Report comment to moderator  
Reply With Quote
Unread 03-01-14, 09:39 AM  
daelysid
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Thanks for bringing this up. I'll look into it this weekend. In the meantime you can do:

/select [@mouseover, exists] Heal, Flash Heal; none

(don't use nil as a dummy spell; that's a separate issue I need to fix. nil has an arbitrary specific function to the addon.)
Glad that my bug report makes you feel happy !
This work around might be a bit tricky without using an extra script to launch a dummy spell without triggering a lua error but thank for shedding a light on that!

Indeed, it looks like SpellToggle cam make what I was looking for but I was hopping that a flyout addon could handle that as well ^^!

By the way I am using the Beta of Ion (previously called 'Macaroon' and 'Trinitybar') which had a flyout system integrated (not anymore because it's on work in progress) and it looks like the your addon is working well with it safe the fact that the icon doesn't show properly. It keeps showing the question mark no matter what.

Thank in advance for your time!
Last edited by daelysid : 03-01-14 at 12:52 PM.
daelysid is offline Report comment to moderator  
Reply With Quote
Unread 02-28-14, 03:45 AM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
Re: Condition issue

Originally Posted by daelysid
Hello Gello,

thank for your work on this add-on!

I have noticed that there is a kind of glitch while using conditions on a /select macro.

For instance:

- The macro:
/select [@mouseover, exists]Heal, Flash Heal
/click [btn:2]S12:M;S12:A
Thanks for bringing this up. I'll look into it this weekend. In the meantime you can do:

/select [@mouseover, exists] Heal, Flash Heal; none

(don't use nil as a dummy spell; that's a separate issue I need to fix. nil has an arbitrary specific function to the addon.)

I only recently found out that an open-ended /select--that is, a /select that doesn't have all conditions covered--was a real problem. I'm surprised and a little depressed there have been, prior to yours, no bug reports about it for the 8 months that conditions have been supported, so thanks again for mentioning it.

That said, you may have another issue with using this addon to choose mouseover spells. To decide which [condition] you're /select'ing, this addon needs to be in that condition. When you're right-clicking the macro to change the spell, it can never be in the [@mouseover, exists] state to choose between those two spells. It's kind of inherent in how [condition]s work in this addon to switch flyouts depending on what state you're in.

There's a chance Spell Toggle may do what you want, but I'm pretty certain /click doesn't have the unit support that /cast does. An addon may need to separately define the unit for the /click (which Select does, but unfortunately without a mechanism for changing which flyout to choose outside of the current state).
Gello is online now Report comment to moderator  
Reply With Quote
Unread 02-27-14, 01:40 PM  
daelysid
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Condition issue

Hello Gello,

thank for your work on this add-on!

I have noticed that there is a kind of glitch while using conditions on a /select macro.

For instance:

- The macro:
/select [@mouseover, exists]Heal, Flash Heal
/click [btn:2]S12:M;S12:A
Step 1:
- Actual Target: Player#1
- Actual Mouseover: <none>
- Reaction when I pressed the button: nothing happened, which is the expected result

Step 2:
- Actual Target: Player#1
- Actual Mouseover: Player#2
- Reaction when I pressed the button: cast <Heal> on Player#2, which is also the expected result

Step 3:
- Actual Target: Player#1
- Actual Mouseover: <none>
- Reaction when I pressed the button: cast <Heal> on Player#1, which is totally wrong because the condition wants the spell be launched on the Mouseover ONLY if it is existing else do nothing.
If I don't have any target, it will put the spell on 'hold' by highlighting the mouse cursor in blue (which means that no spell will be launched no matter what -- until I click on a target to release the current spell on 'hold')

If you do the same test with this macro: /cast [@mouseover, exists] Heal
it will react as expected.

Do you have any idea how to fix this issue? if you could help me to localize the code, I might be able to help you to fix this.

Thank in advance for your quick reply.
Kind regards,

Dael
Last edited by daelysid : 02-27-14 at 01:43 PM.
daelysid is offline Report comment to moderator  
Reply With Quote
Unread 01-18-14, 01:42 AM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
Re: Haven't tried this completely yet...

Originally Posted by Barleduq
... cause I'm still trying to get unconfused about macros in general.

I'm mostly playing around iwth mounts at the moment, tho I really like hte idea of multiple things on one button.

If I have multiple flying mounts set as favorite, what will /select mount:fflying do? Will it randomly choose one, or will it choose the first, or will it break?

-Barleduq
If you have multiple flying mounts set as a favorite with Select Favorite Mounts, /select mount:fflying will initially have the first loaded. Hitting the macro will cast the first favorite flyer. The macro will continue to use that mount until you right-click the macro and choose another. That change will persist across game sessions too. It will remember the last preferred mount.

If you also have some land mounts marked as favorites, you can do:

/select [flyable] mount:fflying; mount:fland

Now when you're in an area you can fly, the macro will cast your last-chosen flying mount; and in areas you can't fly it will cast your last-chosen land mount.

That preference is also saved per-character. If all of your characters use the same macro, they can each have a different preferred mount selected.
Gello is online now Report comment to moderator  
Reply With Quote
Unread 01-17-14, 09:29 PM  
Barleduq
Ruler of All I Survey
 
Barleduq's Avatar

Forum posts: 62
File comments: 261
Uploads: 0
Haven't tried this completely yet...

... cause I'm still trying to get unconfused about macros in general.

I'm mostly playing around iwth mounts at the moment, tho I really like hte idea of multiple things on one button.

If I have multiple flying mounts set as favorite, what will /select mount:fflying do? Will it randomly choose one, or will it choose the first, or will it break?

-Barleduq
Barleduq is offline Report comment to moderator  
Reply With Quote
Unread 01-15-14, 06:10 PM  
Sintacks
A Murloc Raider

Forum posts: 4
File comments: 116
Uploads: 0
no error when logging in. now gonna reload.
edit: no error on reload. now relogging.
edit2: seems to be fixed. well done. <3
__________________
i has a cookie
Last edited by Sintacks : 01-15-14 at 06:11 PM.
Sintacks is offline Report comment to moderator  
Reply With Quote
Unread 01-14-14, 10:25 PM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
Originally Posted by Sintacks
Got this one twice when logging into the druid. (oddly the count only says 1. maybe it resets when you log.. idk)
2.1.3 just posted should fix it. Let me know if not.

(For anyone not getting this error, that was only change in 2.1.3, no need to download)
Gello is online now Report comment to moderator  
Reply With Quote
Unread 01-14-14, 02:20 PM  
Sintacks
A Murloc Raider

Forum posts: 4
File comments: 116
Uploads: 0
Got this one twice when logging into the druid. (oddly the count only says 1. maybe it resets when you log.. idk)

Date: 2014-01-14 15:14:18
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\Select\Select_Filters.lua line 235:
bad argument #1 to 'band' (number expected, got nil)
Debug:
[C]: band()
Select\Select_Filters.lua:235: ?()
Select\Select_Menu.lua:171: UpdateFlyoutButtons()
Select\Select_Menu.lua:75: CreateFlyoutFromList()
Select\Select.lua:244: UpdateSelectMacros()
Select\Select.lua:123: UPDATE_MACROS()
Select\Select.lua:42: Initialize()
Select\Select_Filters.lua:83: UpdateItemCache()
Select\Select.lua:35: ?()
Select\Select.lua:10:
Select\Select.lua:8
Locals:
(*temporary) = nil
(*temporary) = 2
(*temporary) = "number expected, got nil"


This completely breaks select.
__________________
i has a cookie
Sintacks is offline Report comment to moderator  
Reply With Quote
Unread 11-01-13, 05:14 PM  
10leej
A Scalebane Royal Guard
 
10leej's Avatar
AddOn Author - Click to view AddOns

Forum posts: 428
File comments: 324
Uploads: 18
Not sure why, not working for mage ports used to work fine, gonna have to go back see what version that was.

macro
Code:
/select Portal: Orgrimmar, Portal: Undercity, Portal: Thunder Bluff, Portal: Silvermoon, Portal: Stonard, Portal: Shattrath, Portal: Dalaran, Portal: Tol Barad, Portal: Vale of Eternal Blossoms
/click [btn:2]S49:M;S49:A
EDIT: rolled back to 2.0.11 works fine there.
Last edited by 10leej : 11-01-13 at 05:23 PM.
10leej is offline Report comment to moderator  
Reply With Quote
Unread 06-22-13, 04:50 PM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
2.1.0

Version 2.1 posted today is a fairly large overhaul. If you encounter any bugs please let me know what bar addon you're using, if any, and the select macro if it's relevant.

A few notes for existing 2.0.x users:
  • Be aware that your 'Use When Selecting' (if checked) and initial selected buttons will reset on this update. They should persist afterwards.
  • Some may have noticed in 2.0.x that if the last-selected item wasn't available when you logged in (like a healthstone) it would fetch the first available item instead. 2.1 will remember the healthstone now. This is a much better implementation technically (wasn't satisfied with the ad-hoc method of the old one), but usability trumps all so let me know if there's a strong demand to get this back.
  • I'm still working on pets! It's hilarious that creating a complex inter-frame secure state driver is a more trivial task than getting pet icons to happen in combat. But I've finished a proof of concept that says it can be done, and some of the 2.1's internal changes are preparation for that.
  • If you were using the unsupported pet:filter in 2.0, it won't work in 2.1. It should in next update.
Sorry for these annoyances. When I began 2.0, I wasn't even sure this addon was possible. With 2.1, I decided to go back and rewrite most of it to get it done right.
Last edited by Gello : 06-22-13 at 10:31 PM.
Gello is online now Report comment to moderator  
Reply With Quote
Unread 05-05-13, 07:27 PM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
2.0.12

Version 2.0.12 just posted only adds support for Select Favorite Mounts. That addon allows you to right-click mounts in your mount journal to favorite them, just like you do for battle pets in the pet journal.

Due to macro space issues, and the desire to get a lot more mounts into /select macros, the other addon was created.

If you don't intend to use that addon, and you're on 2.0.11, there's no need to download this update.
Last edited by Gello : 05-05-13 at 07:36 PM.
Gello is online now Report comment to moderator  
Reply With Quote
Unread 05-04-13, 02:49 PM  
Gello
A Scalebane Royal Guard
AddOn Author - Click to view AddOns

Forum posts: 441
File comments: 323
Uploads: 96
Originally Posted by kaiden
Would it be possible to make a macro for Disenchanting like you do with milling? I can't seem to figure that out.
I assume this is for greens you make with another profession with a random suffix. If so, it won't at the moment, sorry. The reason is the button loads the item by name instead of the id. I felt this would be more useful when you get items with the same name but different id (healthstones in the old days, quest items nowadays), then you wouldn't need to swap in the new item you can just continue using it. But I'll consider an option or switching it over.

You may already know this, but for a mass DE macro I recommend something like this (which is in the default UI, don't need this addon or any to do this):

/cast Disenchant
/use item:1234
/use item:5678
/use item:91823
/use item:9821398

instead. If it can't find the first item it will attempt to DE one of the second item and so on.

The item id can be found by looking up the item on wowhead. ie:

http://www.wowhead.com/spell=124571

is item:124571

The reason you want to use an item:id is because this can be a "Misthide Helm of the Monkey", "Misthide Helm of Landslide", "Misthide Helm of Stamina", etc. By using the number instead of the name you tell the game to DE "MistHide Helm of anything, I don't care". But note for the recipes that sometimes make a blue quality instead of a green quality: blue items a different item:id from green items. You'll want to include both item:id's. (Search for "Misthide Helm" on wowhead and you'll see it shows both, with separate item id's)
Gello is online now Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: