Download
(7Kb)
Download
Updated: 12-01-10 12:47 PM
Pictures
File Info
Updated:12-01-10 12:47 PM
Created:10-22-10 02:59 PM
Downloads:14,732
Favorites:97
MD5:

nivBuffs  Popular! (More than 5000 hits)

Version: r24
by: Luzzifus [More]

News

I don't play WoW anymore (at least currently) and do not have an active subscription. So I cannot and will not work on my addons anymore. Sorry.

However, Calebzor has done awesome work in updating and improving this addon, including an ingame config. Check it out here!




About

nivBuffs is a replacement for blizzards default buff frames. It shows your buffs, debuffs and temporary weapon enchants.


Features

  • Using SecureAuraHeaders, so you can cancel buffs via rightclick!
  • Remaining duration can be displayed as spiral texture, bar and/or text.
  • Shows stack count for buffs/debuffs with 2 or more stacks.
  • Blinking icons for buffs/debuffs that will expire soon.
  • Sorted by time, name or spell ID.
  • Custom icon border (change the texture if you don't like it).
  • Support for custom styling with ButtonFacade.
  • Differently colored borders for temporary weapon enchants and debuffs.
  • Debuff highlighting by debuff type.

Config

There is no ingame config (at least not yet), but you can adjust appearance and behaviour in "config.lua" using a text editor.


Known Issues
  • You can cancel weapon enchants by now, but the second one still references to the first.
  • Third weapon enchant doesn't work (because of broken Blizzard code).

FAQ

Because some people still have problems with correctly setting up the anchoring and grow direction stuff, here are some examples (r14+). These are only the settings for buffs, but changing the debuffs works the same way.
lua Code:
  1. -- Anchored to topleft corner of the UI,
  2. -- growing horizontally to the right in rows of 20 icons,
  3. -- next row exactly below the previous
  4. buffAnchor = { "TOPLEFT", "UIParent", "TOPLEFT", 15, -15 },
  5. buffXoffset = 35,
  6. buffYoffset = 0,
  7. buffIconsPerRow = 20,
  8. buffMaxWraps = 10,
  9. buffWrapXoffset = 0,
  10. buffWrapYoffset = -55,
  11.  
  12. -- Anchored to topright corner of the UI,
  13. -- growing horizontally to the left in rows of 20 icons,
  14. -- next row exactly below the previous
  15. buffAnchor = { "TOPRIGHT", "UIParent", "TOPRIGHT", -15, -15 },
  16. buffXoffset = -35,
  17. buffYoffset = 0,
  18. buffIconsPerRow = 20,
  19. buffMaxWraps = 10,
  20. buffWrapXoffset = 0,
  21. buffWrapYoffset = -55,
  22.  
  23. -- Anchored to topleft corner of the UI,
  24. -- growing vertically down in rows of 15 icons,
  25. -- next row to the right of the previous
  26. buffAnchor = { "TOPLEFT", "UIParent", "TOPLEFT", 15, -15 },
  27. buffXoffset = 0,
  28. buffYoffset = -35,
  29. buffIconsPerRow = 15,
  30. buffMaxWraps = 10,
  31. buffWrapXoffset = 35,
  32. buffWrapYoffset = 0,
  33.  
  34. -- Anchored to bottomleft corner of the UI,
  35. -- growing vertically up in rows of 15 icons,
  36. -- next row to the right of the previous
  37. buffAnchor = { "BOTTOMLEFT", "UIParent", "BOTTOMLEFT", 15, 250 },
  38. buffXoffset = 0,
  39. buffYoffset = 35,
  40. buffIconsPerRow = 15,
  41. buffMaxWraps = 10,
  42. buffWrapXoffset = 35,
  43. buffWrapYoffset = 0,
  44.  
  45. -- Anchored to the topleft corner of the minimap,
  46. -- growing vertically down in rows of 15 icons,
  47. -- next row to the left of the previous
  48. buffAnchor = { "TOPRIGHT", "Minimap", "TOPLEFT", -25, 0 },
  49. buffXoffset = 0,
  50. buffYoffset = -35,
  51. buffIconsPerRow = 15,
  52. buffMaxWraps = 10,
  53. buffWrapXoffset = -35,
  54. buffWrapYoffset = 0,
If you need in-depth info about anchoring, read this and this.


TODO
  • Add third weapon enchant (as soon as Blizzard fixes their code base).
  • Consolidation (as soon as Blizzard fixes their code base).

Credits

A big "Thank You!" goes to sigg, as he posted this nice tutorial on SecureAuraHeaders in the forums.

r24
- Debuff border coloring now also works with ButtonFacade.

r23
- Removed experimental code that caused more taint errors.
- Added position offset settings for duration text.

r21
- Fixed taint errors with enabled ButtonFacade.
- Added separate font color settings for duration text and stack counter.
- Added position settings for stack counter.

r20
- Fixed that garbage thingy -> mem usage should stay low now.
- Due to patch 4.0.3 the following things now properly work (at least): canceling weapon enchants, sorting and disabling "separateOwn" attribute.

r19
- Added ButtonFacade support (disabled by default, requires ButtonFacade r344+).
- Added options to adjust font, font size and font style.

r17
- The duration spiral doesn't overlap the border anymore.
- Added duration bars inside of the icons.
- Added option to toggle duration bars.
- Added option to toggle duration text timers.

r15
- Added some options which allow vertical growth and more.
- Duration text now can also be placed to the left or right of the icon.
- Removed "(de)buffGrowDir" options (you can still change it).
- If you have problems setting it up as you wish, check out the example configs on the description page!

r12
- Fixed duration spirals (again).
- Set "separateOwn" header attribute. So whenever blizz fixes their wonderful code, this will actually make your own buffs not be separated from the others.. *cough*
- Fixed buffs/debuffs not hiding when the whole interface is hidden (ALT+Z).
- Random code improvements.

r10
- Added debuff border coloring by debuff type.
- Added separate scale option for debuffs.
- Nicer border via SetBackdrop.
- Border doesn't look awkward anymore when the icon is blinking.
- Stack counter stays opaque when the icon is blinking.
- Increased maximum number of rows to 10.

r9
- Duration spiral can be turned off again.
- Added option for brightness of the default non-colored icon border.
- Remaining time text matches the tooltip time now.

r8
- Even further reduced CPU usage.
- New blinking algorithm.
- Added option to adjust blinking speed.
- Fixed border color error of second weapon enchant (correct icons, tooltip still broken, blame Blizzard).

r7
- Added different border coloring for temporary weapon enchants (item quality) and debuffs (darkred).
- Added option to disable these colored borders.
- Added cooldown spiral for temporary weapon enchants.
- New border texture.
- Reduced CPU usage.
- Removed updateDelay option (not longer neccessary).

r6
- Removed experimental code that caused an error in the SecureAuraHeader code.
- Fixed bug that hides stack count when the cooldown spiral is disabled.

r4
- Growth direction for Dummies.
- Added option to hide cooldown spirals.

r3
- Fixed cooldown spiral overlaying the stack count.
- Fixed cooldown spiral disappearing.
- Added more detailed positioning/anchoring options.
- Added options for font color, update interval and temporary weapon enchants.
Post A Reply Comment Options
Unread 11-18-10, 06:26 PM  
reale
A Kobold Labourer

Forum posts: 1
File comments: 164
Uploads: 0
r21 Taint

Getting *tons* of these taint warnings:

11/18 15:10:50.418 An action was blocked in combat because of taint from nivBuffs - nivBuffs_BuffsTempEnchant1:SetAttribute()
11/18 15:10:50.418 Interface\AddOns\nivBuffs\nivBuffs.lua:262 updateWeaponEnchantButtonStyle()
Report comment to moderator  
Reply With Quote
Unread 11-18-10, 04:27 PM  
Dawn
A Molten Giant
 
Dawn's Avatar
AddOn Author - Click to view AddOns

Forum posts: 918
File comments: 959
Uploads: 22
Thanks for a really nice buff addon.

Here's what I made out of it. Really sucks that you can't set the actual size of an icon anymore, but scale only?!? Scaling 1px borders hurts.



The timers around the icon are just an experiment, I think I'll hide them completely.
__________________
Rock: "We're sub-standard DPS. Nerf Paper, Scissors are fine."
Paper: "OMG, WTF, Scissors!"
Scissors: "Rock is OP and Paper are QQers. We need PvP buffs."

"neeh the game wont be remembered as the game who made blizz the most money, it will be remembered as the game who had the most QQ'ers that just couldnt quit the game for some reason..."

Report comment to moderator  
Reply With Quote
Unread 11-18-10, 03:28 PM  
Valik
A Defias Bandit

Forum posts: 2
File comments: 12
Uploads: 0
This is nothing big, I'm just throwing this idea out there. Is there any chance we can get an option for the minimum alpha during the blink? Right now it fades from 1.0 to 0.0 and back to perform the blink. I'd prefer my buff icon not totally disappear so I'd like the option to set my minimum alpha at something like 0.1 or whatever so I could see the icon/duration but also retain the blinking effect.
Report comment to moderator  
Reply With Quote
Unread 11-18-10, 03:08 PM  
dssurge
A Kobold Labourer

Forum posts: 0
File comments: 20
Uploads: 0
minor cosmetic issue:

If the player gains a debuff while in a vehicle, the border is displayed behind the debuff icon. You can replicate this pretty easily doing jousting dailies at the Argent Tourney.
Report comment to moderator  
Reply With Quote
Unread 11-18-10, 12:48 PM  
Luzzifus
A Warpwood Thunder Caller
 
Luzzifus's Avatar
AddOn Author - Click to view AddOns

Forum posts: 94
File comments: 237
Uploads: 6
Originally posted by kbc8090
This addon is shaping up quite nicely now One of the last things I can think about doing is adding options for duration X and Y, I think some people like their timers kind of overlapping the actual icon, it looks nice.
I'll add it.

Originally posted by dssurge
Any chance you can add a "stackFontOffset" variable in the next version? Mine is currently displaying ontop the border. Having it's own color variable would be nice as well.
Both done in r21.

Originally posted by Gilgallad
I keep getting this one when a buff or debuff is added while in combat. Is it ButtonFacade related or something to do with nivBuffs?
My error. Fixed in r21, I hope. I did a quick random dungeon and didn't get any taint errors anymore.

Originally posted by Fiercy
Hello, the addon is looking great so far! I might start using it instead of SBF, however is there anyway to define auras as max time? I'm sorting from max time to least time and auras always show up 1st and not the actual buff thats running out.
That's the fun with SecureAuraHeaders: I don't have any possibilities to change the sorting behaviour beyond the basic "sortMethod" and "sortDirection" attributes. So no, sorry.
Report comment to moderator  
Reply With Quote
Unread 11-18-10, 10:44 AM  
Fiercy
A Cyclonian
 
Fiercy's Avatar
AddOn Author - Click to view AddOns

Forum posts: 40
File comments: 142
Uploads: 7
Hello, the addon is looking great so far! I might start using it instead of SBF, however is there anyway to define auras as max time? I'm sorting from max time to least time and auras always show up 1st and not the actual buff thats running out.
__________________
There are countless ingredients that make up the human body and mind, like all the components that make up me as an individual with my own personality. Sure, I have a face and voice to distinguish myself from others, but my thoughts and memories are unique only to me, and I carry a sense of my own destiny. Each of those things are just a small part of it. I collect information to use in my own way. All of that blends to create a mixture that forms me and gives rise to my conscience.
Last edited by Fiercy : 11-18-10 at 10:56 AM.
Report comment to moderator  
Reply With Quote
Unread 11-18-10, 01:40 AM  
Gilgallad
A Kobold Labourer

Forum posts: 0
File comments: 15
Uploads: 0
I keep getting this one when a buff or debuff is added while in combat. Is it ButtonFacade related or something to do with nivBuffs?

Code:
9x <event>ADDON_ACTION_BLOCKED:AddOn 'ButtonFacade' tried to call the protected function 'UNKNOWN()'.
<in C code>: ?
<in C code>: in function `SetFrameLevel'
...uttonFacade\Libs\LibButtonFacade\LibButtonFacade.lua:664: in function <...uttonFacade\Libs\LibButtonFacade\LibButtonFacade.lua:586>:
...uttonFacade\Libs\LibButtonFacade\LibButtonFacade.lua:763: in function `AddButton':
nivBuffs\nivBuffs.lua:102: in function <nivBuffs\nivBuffs.lua:39>
nivBuffs\nivBuffs.lua:198: in function <nivBuffs\nivBuffs.lua:197>
nivBuffs\nivBuffs.lua:303: in function <nivBuffs\nivBuffs.lua:300>
<in C code>: ?

  ---
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 06:38 PM  
dssurge
A Kobold Labourer

Forum posts: 0
File comments: 20
Uploads: 0
Any chance you can add a "stackFontOffset" variable in the next version? Mine is currently displaying ontop the border. Having it's own color variable would be nice as well.
Last edited by dssurge : 11-17-10 at 07:18 PM.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 04:54 PM  
kbc8090
A Murloc Raider

Forum posts: 6
File comments: 73
Uploads: 0
This addon is shaping up quite nicely now One of the last things I can think about doing is adding options for duration X and Y, I think some people like their timers kind of overlapping the actual icon, it looks nice.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 04:24 PM  
brotherhobbes
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 313
File comments: 41
Uploads: 2
Originally posted by Luzzifus
What I meant was I don't know what the condition is for rogues to actually apply a poison to the ranged slot. Which would be essential before I can test code for it.
This is just a guess, but it is possible that poisoning your thrown weapon is not available until level 62, when Deadly Throw is trainable. If it's not available at 62, then it would be 80, when Fan of Knives is trainable. Those two abilities are supposed to use the poison on your thrown weapon. Note that you can not poison your ranged slot, ie: a bow, only a thrown weapon.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 02:14 PM  
sfooze
A Kobold Labourer

Forum posts: 0
File comments: 5
Uploads: 0
How can i change wpn enchants sort OH MH to MH OH without touching other things
Last edited by sfooze : 11-17-10 at 02:19 PM.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 01:45 PM  
Luzzifus
A Warpwood Thunder Caller
 
Luzzifus's Avatar
AddOn Author - Click to view AddOns

Forum posts: 94
File comments: 237
Uploads: 6
Originally posted by shUI
Luzz, one more thing I think you forgot to do: In the createAuraButton function, you are creating the border texture everytime that function is called. Correct me if I'm wrong, but that is called a lot? I just took it out of the function and set it as local to the addon and not that function and it seems to be working fine. Let me know what you think?
Look closer, it's created inside the do-end-block but not inside the function. So it's basically local to the function but will only be created once:

lua Code:
  1. local createAuraButton
  2. do
  3.    local s, b = 3, 3 / 28
  4.  
  5.    -- border texture
  6.    local backdrop = {
  7.       edgeFile = "Interface\\Addons\\nivBuffs\\borderTex",
  8.       edgeSize = 16,
  9.       insets = { left = s, right = s, top = s, bottom = s }
  10.    }
  11.  
  12.    createAuraButton = function(btn, filter)
  13.       ...
  14.    end
  15. end
Last edited by Luzzifus : 11-17-10 at 01:50 PM.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 01:39 PM  
shUI
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 8
File comments: 340
Uploads: 5
Originally posted by Luzzifus
I'll have to look into it, but what you describe sounds as if it has not yet been fixed by Blizzard.


What I meant was I don't know what the condition is for rogues to actually apply a poison to the ranged slot. Which would be essential before I can test code for it.
Luzz, one more thing I think you forgot to do: In the createAuraButton function, you are creating the border texture everytime that function is called. Correct me if I'm wrong, but that is called a lot? I just took it out of the function and set it as local to the addon and not that function and it seems to be working fine. Let me know what you think?
__________________
shPerformance: Data Broker memory/latency/fps usage display utility
shNameplates: Lightweight, simple, and sexy nameplates
shClock: Lightweight and simple data broker clock
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 01:28 PM  
Luzzifus
A Warpwood Thunder Caller
 
Luzzifus's Avatar
AddOn Author - Click to view AddOns

Forum posts: 94
File comments: 237
Uploads: 6
Originally posted by Ethan Centaurai
Looking at your code doesn't give me any immediate reasons as to why so I'm going to blame Blizzard's half-finished code and hope it goes away instead.
I just checked blizzards live code and yep, the second enchant still refers to the mainhand slot. So they didn't fix it yet. And the code for the third enchant is also still missing.

Originally posted by neverg
Same thing as you do with the rest of the weapons. So if you check for a UNIT_INVENTORY_CHANGED it should do the trick.
What I meant was I don't know what the condition is for rogues to actually apply a poison to the ranged slot. Which would be essential before I can test code for it.
Last edited by Luzzifus : 11-17-10 at 01:47 PM.
Report comment to moderator  
Reply With Quote
Unread 11-17-10, 12:46 PM  
neverg
A Frostmaul Preserver
 
neverg's Avatar
AddOn Author - Click to view AddOns

Forum posts: 268
File comments: 498
Uploads: 2
Originally posted by Luzzifus
I've uploaded your fix for the memory usage issue (it really seems to help, goes slightly up to about 35-40kb and seems to stay there).

Also, due to patch 4.0.3, the following things now work:
  • Removing weapon enchants by right clicking them
  • Sorting without randomly misplaced auras
  • Disabling the "separateOwn" attribute of the headers

Now I'll look into the third weapon enchant and consolidation.
For the first one: Could somebody tell me what I have to do to apply poisons to my ranged weapon? My lvl 34 rogue can't do that and I don't know why.
Same thing as you do with the rest of the weapons. So if you check for a UNIT_INVENTORY_CHANGED it should do the trick.
__________________
My oUF Layout: oUF Lumen
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: