This highly configurable mod allows players to associate buttons to unit frames. It is meant as a replacement to GroupButtons which stopped functioning with the 2.0 patch in December 2006. The mod extends the capabilities of GroupButtons by providing these additional features:
an unlimited number of buttons per unit frame
Buttons which turn on/off depending on the amount of damage a unit has
Buttons which are dimmed if a unit as that buff or a related buff applied.
Buttons which appear when a debuff is applied to a unit.
Buttons which allow you to have any type of "/" slash or macro command on a button
A variety of a modes for different activities in the game. For example, a set of buttons
for soloing, buttons for instances, buttons for raids, buttons for specific bosses (such as Baron Geddon in MC (to all priests to debuff), buttons for PvP, etc.
Assign buttons to unit frames that when clicked cast spells on different units. This feature allows, for example, buffs and heals for the player unit to appear within the target buttons to minimize the amount of mouse movement between buttons.
Works for any kind of non-casting classes; specifically warriors and rogues.
Version 1.8.2 (July 26, 2008) (by Palidindrome )
Changelog:
Code:
CHANGED: TOC for 2.4
NOTE This is a incremental releasefor the toc
CHANGED: TOC for 2.3
CHANGED: Tainting issue fix. Copied Tayedaen's combat update code
ADDED: Copied in Cosmic Cleric's UI code for additional settings
ADDED: User Guide back to release package
NOTE - other 1.9 changes are NOT copied in. This is a incremental releasefor the toc/ bug and UI
ADDED: PerfectRaid support
ADDED: Pitbull Raid Frames Raid frames appear to work - Party frames do not work well.
ADDED: Countdown for cooldowns with remaining time < 10 secs can now be displayed with decimals
To enable decimals use '/XUB showdecimals'
ADDED: BUFFx: BUFF/BUFFBLINK buttons can now blink if a buff is about to expire
By defining a BUFFx, the button will blink if the buff is x seconds away
from expiring. Examples: BUFFBLINK15, BUFF10
ADDED: Global Dim
This dims all buttons in state STATE_ENABLED while player is casting a spell
To enable GlobalDim use '/XUB useglobaldim'
(Macro buttons are not dimmed because of the possibility of /stopcast macros)
If you use 'Color coded' instead of 'Transparency' then the dimmed buttons
are colored with c_globaldim (mint at the moment).
Please note that Global Dim has quite a cost in terms of performace, since
it has to dim all ENABLED buttons if you start a cast, and undim them after.
ADDED: new Tooltip option "Show Cooldown even in Combat"
ADDED: Global cooldowns no longer start a countdown timer by default
To enable a countdown timer for global cooldowns use '/XUB showglobalcooldown'
ADDED: Garbage collection after applying a profile
CHANGED: raid/group changes are handled better (does not work while in combat !!)
CHANGED: debuff handling
Some debuffs have no debuff type. Now for these debuffs the name of
the debuff is added to the debuff list instead of the debuff type.
This allows to check for a specific debuff if necessary.
CHANGED: Display of all buttons after a party/raid change (request by Torwauki)
The duration of the display of the buttons after a raid/party change is
now 0 secs per default, the duration after a manual change is still 3 seconds.
Eventually these times will be adjustable in the future, for now they can only be changed in code.
Search in 'eXtremeUnitButtons.lua' for:
XUB_DelayTime_after_automaticProfileChange = 0;
XUB_DelayTime_after_manualProfileChange = 3;
and change the values to your liking.
CHANGED: Improved pitbull support (thx paladindrome)
CHANGED: "Hide and Disable" --> "Show as Hidden"
CHANGED: "Enable and buffed" --> "Show as Buffed"
CHANGED: "Red Cooldown/Blue Mana" --> "Color Coded"
CHANGED: "Heal Button action" --> "Heal/Buff button action"
CHANGED: Button behaviour regarding buffs
After long development discussion we agreed to implement it this way:
A button in buffed state is shown either as BUFFED or INVALID (hidden).
This is adjustable with the modified Healbutton option in the option window (see 'Heal Button action')
CHANGED: Color system
New: Red=Range,Ochre=Buffed,Purple=Cooldown,Cobalt=Mana
There are also some changes to make implementing a color selector easier later
CHANGED: OutOfRange buttons have now a separate alpha from Invalid buttons
The alpha for invalid is set to '0'.
This can be changed to 'x' with '/script XUB_INVALID_ALPHA=x (0 <= x <= 1)
CHANGED: behaviour of unusable buttons
They are no longer higlightened if mouseovered, indicating that ou can't use the button at the moment
FIXED: Spells defined as BUFFS can be debuffs on target units (fixed in hotfix1)
FIXED: fix for "XUB_UF_Apply( "PlayerPet" , "PlayerFramePetFrame" )"
FIXED: workaround for API call 'UnitClass' sometimes returning NIL
Known addon bugs:
none
Known blizzard bugs:
------------------------
'isUsableSpell' is broken, there is nothing I can do to change that.
That means: Some spells are reported 'not usable' if you target a hostile target or NPC (like 'PowerWord: Shield' for example).
NOTES:
Code:
NOTE 1: !!!! Limited Pitbull support is enabled but does not work well
- consider it experimental and unsupported!!!!
NOTE 2: The colors for 'Color coded':
STATE_OUTOFRANGE = c_range = red
STATE_COOLDOWN = c_cooldown = purple
STATE_BUFFED = c_buffed = ochre
STATE_OUTOFMANA = c_outofmana = cobalt
Dimmed button = c_globaldim = mint
These colors can be changed in eXtremUnitButtons.lua.
To do this, open the file and search for 'XUB COLOR DEFINITION BLOCK'
NOTE 3:
The correct spelling for the 4 existing debuff types are :
Magic
Poison
Curse
Disease
Please note that the first character is uppercased.
NOTE 4: The historical changes have been removed from the online
display - they are availible in the embedded Changelog_complete.txt file.
Originally posted by Vetus
But not being a programmer, I didn't know if there might be an easy fix... I love this mod, but I'm losing too much of it's functionality... Keep in mind, none of the buttons change while I'm fighting... No 'out of range', or 'needs rebuffing', or 'needs healing', or 'is poisoned'... Not even on myself... Just dead buttons...
So... no ideas on this? Are we saying I cannot use any caster type buttons (with blink, fade, etc) while I'm in bear or cat form?
Originally posted by AFrench
I like the add-on, and it work more or less correctly with WoW french version (tested with druid/shaman/hunter/warlock).
I have however noticed a few "bugs":
- Xperl pet unit frame name is incorrect in the default setting: It should be XPerl_Player_Pet and not XPerl_Playerpet. I had nothing displayed for my hunter pet until I had the idea to look for Xperl frame name and change it (switch to custom, change the name and boum...everything was fine)
This will be fixed in v2.0
Quote:
- In the french localisation, 2 out of 4 weapon buffs work as advertised for Shaman (i.e. dimmed when the buff is active). Croque-roc (Rockbitter) and Furie-des-vents (windfury) don't (they are never dimmed), and for me the only thing that they have in commun and don't share with the two that are working is this '-' in the french version name. Not a big deal as I am able to apply the weapon buff...these two are never dimmed, that's all.
For each of the weapon buffs/enchants, can you tell me the exact format that appears in on the weapon and I'll modify the pattern accordingly. Right now, the mod has to parse the game tooltip to get the weapon enchant; works great for English but without a non-English game version I have no idea what the format is for other languages.
Quote:
And a few features requests/ideas/suggestions:
- I don't know if this is similar to the English version but Rank needs to be specified for the simple spells that are defined in Make Group. Also the spell name used is not the one used in buff/heal synthax (an abreviation vs the full name of the spell). For consistency sake, it would be nice to have Make group use a similar syntax than buff, heal etc, which would allow an optional rank. something like: group name, spell name , <optional rank>, target
The way XUB works is the gamer defines a set of buttons. The mod auto generates buttons based on spells, but the gamer needs to create custom buttons for macros, used items, buff, debuff, health, their blink equivalents and other types I might create in the future.
Once a button is defined, you create it in a group. Then assign groups to modes in your profile definition.
Quote:
- I would like the location (Top, Left etc) to be different per frame type: I like for player and Target to have the buttons bellow the frame, but for pet and party I prefer to have them at the right of the frame. Would it be possible to have an independant setting per frame type instead of a global one?
I'll consider it.
Quote:
- Stances: Ok, with my druid, I use a CR to separate the different stances. It works, but it it would feel less cluttered/more intuitive if we could have sets of buttons switching according to stance. OK, it is probably difficult to code and maybe too complicated for the user to set-up. Just a thouth for a future additional option....
Maybe could be set-up with something like that in profile: profile, target, groupname1 </groupname2, stancename1/stancename2> ?
In the next version, the mod will allow you to specify "/" in your profile specification so that you can apply several modes at a time. For example, you might say:
- Kind of complementary to the last one could it be possible to use a macro in the health/buff etc syntax. This way my druid could have a macro that bring me out of bear form (using /cancelstance) that would appear when party health is bellow a certain value. The previous Stance option would then make visible my healing spells...and another button to switch back to bear when this is done.
Maybe by separating macro definition and button definition?
Something like:
macroname,macroicon#,macrotext. (Another option would be to use directly a macro defined in the general interface)
buttonname,heal, macroname, ,visibility value?
I don't think it will be possible to define more than one macro line at a time. I've been searching for a way for some time but it doesn't appear possible. I'll add a mechanism to execute a pre-existing macro.
Quote:
- And last have a "mana" condition similar to the health condition. This way my warlock could have the spell that convert life into mana, my shaman could have shaman rage and water shield, visible when mana is bellow a certain value...
And my warrior (rage being, to my knowlege treated similary than mana) could, in defensive stance, have a macro that switch to Berseker stance if Rage is high enougth and Intercept can be used...I can see quite a lot of usefull tricks with that one...ok in my last exemple, it needs the button to be visible when rage level is above (a new set of visibility condition than the one presentlly used) and a target distance condition...probably for version 2...
mana and manablink will be part of v2.0 (next release) (2.0 has a doc rewrite and some other surprises)
Originally posted by Botch I can answer some of these
-Button location can be set based on frame, it's in the docs and involves adding a -123,+123 in the first button.
Check the .pdf docs for an example.
Thanks, I didn't saw that in the docs. That's perfect
Quote:
Originally posted by Botch -Stances, you can have different profiles, then use a macro like this (which is better than the default stance-switching anyway)
/cancelaura [stance:1] Bear Form; [stance:2] Aquatic Form;[stance:4]Travel Form
/xub p KittyProfile
/cast [nostance] Cat Form
Woah...nice trick, switching profile on the fly. I'll try that, it seems to do exactly what I need
I like the add-on, and it work more or less correctly with WoW french version (tested with druid/shaman/hunter/warlock).
I have however noticed 2 small "bugs":
- Xperl pet unit frame name is incorrect in the default setting: It should be XPerl_Player_Pet and not XPerl_Playerpet. I had nothing displayed for my hunter pet until I had the idea to look for Xperl frame name and change it (switch to custom, change the name and boum...everything was fine)
- In the french localisation, 2 out of 4 weapon buffs work as advertised for Shaman (i.e. dimmed when the buff is active). Croque-roc (Rockbitter) and Furie-des-vents (windfury) don't (they are never dimmed), and for me the only thing that they have in commun and don't share with the two that are working is this '-' in the french version name. Not a big deal as I am able to apply the weapon buff...these two are never dimmed, that's all.
And a few features requests/ideas/suggestions:
- I don't know if this is similar to the English version but Rank needs to be specified for the simple spells that are defined in Make Group. Also the spell name used is not the one used in buff/heal synthax (an abreviation vs the full name of the spell). For consistency sake, it would be nice to have Make group use a similar syntax than buff, heal etc, which would allow an optional rank. something like: group name, spell name , <optional rank>, target
- I would like the location (Top, Left etc) to be different per frame type: I like for player and Target to have the buttons bellow the frame, but for pet and party I prefer to have them at the right of the frame. Would it be possible to have an independant setting per frame type instead of a global one?
- Stances: Ok, with my druid, I use a CR to separate the different stances. It works, but it it would feel less cluttered/more intuitive if we could have sets of buttons switching according to stance. OK, it is probably difficult to code and maybe too complicated for the user to set-up. Just a thouth for a future additional option....
Maybe could be set-up with something like that in profile: profile, target, groupname1 </groupname2, stancename1/stancename2> ?
- Kind of complementary to the last one could it be possible to use a macro in the health/buff etc syntax. This way my druid could have a macro that bring me out of bear form (using /cancelstance) that would appear when party health is bellow a certain value. The previous Stance option would then make visible my healing spells...and another button to switch back to bear when this is done.
Maybe by separating macro definition and button definition?
Something like:
macroname,macroicon#,macrotext. (Another option would be to use directly a macro defined in the general interface)
buttonname,heal, macroname, ,visibility value?
- And last have a "mana" condition similar to the health condition. This way my warlock could have the spell that convert life into mana, my shaman could have shaman rage and water shield, visible when mana is bellow a certain value...
And my warrior (rage being, to my knowlege treated similary than mana) could, in defensive stance, have a macro that switch to Berseker stance if Rage is high enougth and Intercept can be used...I can see quite a lot of usefull tricks with that one...ok in my last exemple, it needs the button to be visible when rage level is above (a new set of visibility condition than the one presentlly used) and a target distance condition...probably for version 2...
Originally posted by Peregran Finally got the right combo "Shadow Word: Death". I had to do several tests. I even looked in the make groups area and that didnt help.
This problem will go away when I finish the Button Maker mechanism.
I manually commented all the lines that disable my buttons (I don't like mods disabling/enabling buttons because it reduces my healing per second).
however it appears that range check is now broken. the buttons don't fade out. this was not the case with the previous version which I edited in the same way.
Originally posted by paladindrome I dont know where this would be on the priority list. I know one of the mods i used prior to BC used to maintain a timer on buff spells (it was pallypower or something like that). It would let you know when a spell was about to run out via a heads up message. In the XUB world I could see something like
mybuf,timeblink,mybuf,,270
where the last number is the number of seconds to start blinking the icon (4 1/2 minutes = 270 seconds which is a typical paladin buff)
Drome
Yeah, I also figured the priority wouldn't be high... Although I would think any Druid would be happy to see a way to change this... I just hate not being able to know when someone needs healing while I'm fighting, without watching all the HP bars... In Cat or Bear... And without feedback from the buttons, I guess I can just add a new Trinity bar...
But not being a programmer, I didn't know if there might be an easy fix... I love this mod, but I'm losing too much of it's functionality... Keep in mind, none of the buttons change while I'm fighting... No 'out of range', or 'needs rebuffing', or 'needs healing', or 'is poisoned'... Not even on myself... Just dead buttons...
My problem is that all of the buttons stay dark while he's in cat form... I'm sure this is because he cannot cast any of the spells/buffs/debuffs while in cat form...
I dont know where this would be on the priority list. I know one of the mods i used prior to BC used to maintain a timer on buff spells (it was pallypower or something like that). It would let you know when a spell was about to run out via a heads up message. In the XUB world I could see something like
mybuf,timeblink,mybuf,,270
where the last number is the number of seconds to start blinking the icon (4 1/2 minutes = 270 seconds which is a typical paladin buff)
I also appreciate your hard work on this great addon...
But I have a problem...
I have a level 34 druid that is speced ferel... And therefore he is usually in cat form... He even stays in cat form between fights unless he needs to rebuff (like Thorns) or he needs some healing...
My problem is that all of the buttons stay dark while he's in cat form... I'm sure this is because he cannot cast any of the spells/buffs/debuffs while in cat form...
But then means features like buffblink aren't working until be goes back to caster form...
Any ideas or workaround that you can think of? I'd like the buttons to flash in cat form even if that means I have to shape shift back to use the spells...