Raven tracks auras and cooldowns on player, target, focus and pet and uses that information to provide:
Timer bars displayed in customizable bar groups
Raven provides two types of bar groups. Auto bar groups are used to automatically display bars for buffs, debuffs and cooldowns based on factors like who they're on, who cast them, how long they last, and how much time they have left. Custom bar groups allow you to manually configure a mix of specific buffs, debuffs, cooldowns, and condition notifications.
Comprehensive condition checking
Condition checking is a key feature of Raven and, while somewhat complex to set up, has enough flexibility to prioritize, to use a feral druid example, refreshing Savage Roar before it runs out over using accumulated combo points for another Rip or Ferocious Bite. Raven includes tests for checking detailed status of player, target and focus, tests for checking combinations of buffs and defuffs, and tests for checking when spells or items are ready to be used. Each named condition can include any combination of individual tests and all of the tests must be true for the condition itself to evaluate to true. You can add dependencies between conditions that allow you to both factor them in useful ways and to prioritize between them. You can also reference Raven conditions from other addons so they could be checked from, say, PowerAuras.
Button highlights for active spells and cooldown counters
Raven can add colored overlays to action bar buttons to indicate when buffs and debuffs are active on the player, target or focus. Customizable counters can also be displayed on buttons for spells with cooldowns. Highlights and cooldown counters are currently only supported with Bartender4 and Dominos action bars.
Presets for class-specific spells and conditions
Raven includes a database containing default bar colors, cooldown info, and buffs/debuffs for class-specific spells. It also includes built-in conditions for each class (except warriors and death knights, at this time) for basic buffing and decursing.
Optional class-specific spell rotation modules
Raven supports optional modules that suggest spell rotations for particular classes/specs. These modules will contain conditions that prioritize spell selection based on player and target status plus resource availabilty (combo points, energy, etc.). You can, of course, tune the condition definitions to your own preferences. These modules will be separate addons and distributed/enabled separately. Initially, I plan to release modules for survival hunters and feral druids.
Raven uses Ace3 libraries, LibSharedMedia-3.0, and LibDataBroker-1.1.
This is my first large addon and I welcome advice and feedback from the developer community before going public with a beta release.
I've added support for Macaroon now--my first experience with this very different and interesting action bar mod. I use Bartender4 so I'd appreciate further testing of the highlight and cooldown module by avid Macaroon and Dominos users. You do not need to set up anything in Raven in order to see active buff/debuff highlights and cooldown counters--they should be on by default when Raven is loaded (cooldown counters only if OmniCC is not loaded).
Thanks to the authors of DrDamage for the example code!
Since Raven already tracks auras and cooldowns it is a small step to include button highlights and cooldown counters on action bars. Highlighting active spells was once a feature of Bongos--I missed it in Bartender4 and included it in Raven. OmniCC only does cooldown counters (but does them more extensively for those who want that, adding them to more places). Automatically turning off the counters in Raven when OmniCC is loaded seems like a pretty good solution to the feature overlap.
I haven't tried your addon yet, but a addon I love is Inline Aura. Maybe that would be a nice feature the add for your addon, as it is already tracking auras.
I've started playing around with this and I must say I like the amount of customisation this mod allows! One thing I've found that so far doesn't seem to work is the icon only mode, if I remove the tick from bars everything disappears even when icons is ticked. It would also be great if it would be possible to anchor groups of bars together like EBB does. And lastly it would be nice to have an easier way of changing bar colours, having to do it by spell id seems a bit too involved. As personally I prefer the default effect colours most other buff/frame addons use, ie red for bleeds, green for poison, etc; however having buffs class coloured is a gem of an idea which will make seeing what buffs I'm missing at a glance so much easier!
Craxziz, thank you for trying the addon. I checked in a fix for the issue with icon only mode. There was also a related issue with disabling sparks addressed with the fix. I'll go through more test cases tomorrow.
I'll look at how EBB anchors groups of bars together soon.
I'll think about bar coloring alternatives too. You can directly change bar colors in custom bar groups but in the auto bar groups the bars are created on the fly from detected auras and cooldowns which is why their colors are associated with spell names. Typing in spell names is a bit of a pain...
Thanks for fixing up the icon only mode and also adding the anchoring of groups together, much appreciated. I was also quite pleasantly surprised to find that it tracks eclipse cds out of the box, nice to see this in as default in a generic buff mod.
Going back to colours, whilst I appreciate colours can be set for custom groups, or indeed I could go and amend them in the lua files for class spells, when it comes to mob spells it becomes an exercise in futility. Specifically when I get debuffed by a mob I've always relied on being able to quickly glance at the active debuffs on me to tell what type of debuff it is, ie red for physical, green for poison, blue for magic, etc. Hence why I asked about this... With Raven this isn't possible unless I wade through wowhead and add every npc debuff spell to a custom group.
Whilst on the subject of potential feature requests, would it be possible to add an invert option to the sort by time remaining option for displaying bar order, just when you anchor two groups together and set one to grow up and the other down, they don't sort in the same direction.
And thank you for all your hard work so far, I've managed to rip out and replace 4 mods by using Raven.
Excellent addon and work on this Tomber. I love the customization and the fact that it can actually replace several addons I am using.
Only one thing that puts me off using it at the moment... I don't really care for bars and I only use icons. Yes I know I can only leave icon up but doing so I lose the timers (unless I am missing something really obvious here).
Again, thanks for the feedback. I have been working on adding the features requested. You found the bar group attachment addition and there is now a "standard color" mode that can be set per bar group. I added ButtonFacade support (but highlighting doesn't work with all skins so it is off by default). I'm still actively testing these changes, which is why I held off on posting. The version I checked in tonight is getting close though. I'm still working on how Raven shares bar group settings between characters (the Link Layout feature is morphing into a more complete Link Settings feature).
As for the use of icon-only mode, it is possible currently to still see the timing numbers with just icons but setting it up is not obvious. Also, you can't see stack counts then since they are currently in the bar labels but I'll be moving the stack count to the icon soon. I'll test a couple approaches to simplify the setup--I can't even remember how to do it off the top of my head so clearly it needs some work.
I uploaded r22 to back out a part of the Link Settings change in r21 that caused timer options to be reset in bar groups that previously had Link Layouts enabled. If you loaded r21 then the standard bar groups can be repaired by going to the Setup tab, selecting the standard bar groups you are using, clicking Configure, and confirming the overwrite.
I played around a bit with icons-only and came up with these bar group settings:
Orientation = Vertical icon on top
Height = 25
Width = 35
Spark and Label disabled (don't turn off the bar itself)
Bar Texture and Background Texture = Empty
Spacing = 1
This yields a strip of icons with their remaining times underneath them.
I'll be looking at how to simplify setup for icons-only bar groups later this week. If you have any preferences for how they should look and work please let me know. Thanks!
Me again, not played around with colours on the latest version yet, but will do at somepoint tonight. However I have been playing with conditions and really like this feature! I've got it set up currently on my druid to show short cd spells as icons when they're available, to save having to glance at bars or indeed actions bars. Now I've managed to get them all working just fine, but I'm having trouble getting one to display swiftmend when it is off cd. The problem is unless regrowth or rejuv are rolling the action is greyed out on the action bar, and hence raven seems to still consider it on cd. Am I missing something with the conditions to get this to work?
Also I've been trying to set raven up to handle totem timers for my shammy and failed miserably, looking at the guts of the options it looks like I should be able to do this, but either I'm trying to over complicate things or being amazingly dense (either of which is a possibility!). Any help much appreciated.
And finally going back to icons, is there anyway of being able to individually change the alpha of them depending on conditions? Ie have them at full alpha when the ability is off cd for example but reduced alpha whilst cooling down? I can't see this anywhere atm, so it may be something that is a potential feature request? Though I guess I could do this with 2 bars that overlap each other exactly.
I'm having trouble getting one to display swiftmend when it is off cd.
I've added an "Is Usable" option to the "Spell Ready" condition test. It defaults to true so it will be backward compatible. If you turn it off then it should do what you want (I tested it on my tree with Swiftmend). I will do more testing but it is a pretty isolated code change so I'm checking it in now for you.
With respect to totem timers, I am using the terrific TotemTimers addon on my shaman and haven't tried to replicate its functionality in Raven. I'll add it to my list to look at it though.
Also, I'll look at using icon alpha as an indicator when I work on icon-only modes later this week.
Whilst on the subject of potential feature requests, would it be possible to add an invert option to the sort by time remaining option for displaying bar order, just when you anchor two groups together and set one to grow up and the other down, they don't sort in the same direction.
Indeed that is a good idea. I have now generalized the sort order selection. You can chose between sort methods (alphabetical, time left, overall duration, class, and custom, with custom only for custom bar groups) plus you can select "Reverse Order" for any of them.
In keeping with making the usability test optional for the "Spell Ready" condition, I also made it optional for cooldown ready bars. These bars are an option for cooldown timer bars within custom bar groups, so you can now show ready bars even if a spell is not actually usable (as in the Swiftmend example).
Thanks for the work on colours, timers and swiftmend; all seem to be working without any issues. And yes Totemtimers is an excellent mod, it's what I'm currently using for now.
1. When two buffs share the same time, they sometimes appear to flicker as they swap places within the group when set to sort by time remaining. This is most easily replicated when eating health/mana food.
2. Occasionally in combat, and I can't easily replicate this the screen will fill up with bars. It seems to be linked to a bar group I have for displaying cds with 5 seconds or less remaining. As per screenshot below:
Timer bars displayed in customizable bar groups
Raven provides two types of bar groups. Auto bar groups are used to automatically display bars for buffs, debuffs and cooldowns based on factors like who they're on, who cast them, how long they last, and how much time they have left. Custom bar groups allow you to manually configure a mix of specific buffs, debuffs, cooldowns, and condition notifications.
Comprehensive condition checking
Condition checking is a key feature of Raven and, while somewhat complex to set up, has enough flexibility to prioritize, to use a feral druid example, refreshing Savage Roar before it runs out over using accumulated combo points for another Rip or Ferocious Bite. Raven includes tests for checking detailed status of player, target and focus, tests for checking combinations of buffs and defuffs, and tests for checking when spells or items are ready to be used. Each named condition can include any combination of individual tests and all of the tests must be true for the condition itself to evaluate to true. You can add dependencies between conditions that allow you to both factor them in useful ways and to prioritize between them. You can also reference Raven conditions from other addons so they could be checked from, say, PowerAuras.
Button highlights for active spells and cooldown counters
Raven can add colored overlays to action bar buttons to indicate when buffs and debuffs are active on the player, target or focus. Customizable counters can also be displayed on buttons for spells with cooldowns. Highlights and cooldown counters are currently only supported with Bartender4 and Dominos action bars.
Presets for class-specific spells and conditions
Raven includes a database containing default bar colors, cooldown info, and buffs/debuffs for class-specific spells. It also includes built-in conditions for each class (except warriors and death knights, at this time) for basic buffing and decursing.
Optional class-specific spell rotation modules
Raven supports optional modules that suggest spell rotations for particular classes/specs. These modules will contain conditions that prioritize spell selection based on player and target status plus resource availabilty (combo points, energy, etc.). You can, of course, tune the condition definitions to your own preferences. These modules will be separate addons and distributed/enabled separately. Initially, I plan to release modules for survival hunters and feral druids.
Raven uses Ace3 libraries, LibSharedMedia-3.0, and LibDataBroker-1.1.
This is my first large addon and I welcome advice and feedback from the developer community before going public with a beta release.
A nice touch would be to automatically disable these if OmniCC is enabled, or set the .noCooldownCount flag on the button to disable OmniCC's timers.
Also, Macaroon support in general would be nice. You could look in DrDamage to see how it supports Macaroon buttons.
Thank you for the suggestion. I have checked in this change.
I'll see if I can add Macaroon support next.
Thanks to the authors of DrDamage for the example code!
I haven't tried your addon yet, but a addon I love is Inline Aura. Maybe that would be a nice feature the add for your addon, as it is already tracking auras.
I'll look at how EBB anchors groups of bars together soon.
I'll think about bar coloring alternatives too. You can directly change bar colors in custom bar groups but in the auto bar groups the bars are created on the fly from detected auras and cooldowns which is why their colors are associated with spell names. Typing in spell names is a bit of a pain...
Going back to colours, whilst I appreciate colours can be set for custom groups, or indeed I could go and amend them in the lua files for class spells, when it comes to mob spells it becomes an exercise in futility. Specifically when I get debuffed by a mob I've always relied on being able to quickly glance at the active debuffs on me to tell what type of debuff it is, ie red for physical, green for poison, blue for magic, etc. Hence why I asked about this... With Raven this isn't possible unless I wade through wowhead and add every npc debuff spell to a custom group.
Whilst on the subject of potential feature requests, would it be possible to add an invert option to the sort by time remaining option for displaying bar order, just when you anchor two groups together and set one to grow up and the other down, they don't sort in the same direction.
And thank you for all your hard work so far, I've managed to rip out and replace 4 mods by using Raven.
Only one thing that puts me off using it at the moment... I don't really care for bars and I only use icons. Yes I know I can only leave icon up but doing so I lose the timers (unless I am missing something really obvious here).
Again very nice work.
As for the use of icon-only mode, it is possible currently to still see the timing numbers with just icons but setting it up is not obvious. Also, you can't see stack counts then since they are currently in the bar labels but I'll be moving the stack count to the icon soon. I'll test a couple approaches to simplify the setup--I can't even remember how to do it off the top of my head so clearly it needs some work.
Height = 25
Width = 35
Spark and Label disabled (don't turn off the bar itself)
Bar Texture and Background Texture = Empty
Spacing = 1
I'll be looking at how to simplify setup for icons-only bar groups later this week. If you have any preferences for how they should look and work please let me know. Thanks!
I had something with similar settings so as to make the bar "disappear"
I will play around with it some more and if something comes up I'll drop in a suggestion.
Thanks :)
Also I've been trying to set raven up to handle totem timers for my shammy and failed miserably, looking at the guts of the options it looks like I should be able to do this, but either I'm trying to over complicate things or being amazingly dense (either of which is a possibility!). Any help much appreciated.
And finally going back to icons, is there anyway of being able to individually change the alpha of them depending on conditions? Ie have them at full alpha when the ability is off cd for example but reduced alpha whilst cooling down? I can't see this anywhere atm, so it may be something that is a potential feature request? Though I guess I could do this with 2 bars that overlap each other exactly.
I've added an "Is Usable" option to the "Spell Ready" condition test. It defaults to true so it will be backward compatible. If you turn it off then it should do what you want (I tested it on my tree with Swiftmend). I will do more testing but it is a pretty isolated code change so I'm checking it in now for you.
With respect to totem timers, I am using the terrific TotemTimers addon on my shaman and haven't tried to replicate its functionality in Raven. I'll add it to my list to look at it though.
Also, I'll look at using icon alpha as an indicator when I work on icon-only modes later this week.
Indeed that is a good idea. I have now generalized the sort order selection. You can chose between sort methods (alphabetical, time left, overall duration, class, and custom, with custom only for custom bar groups) plus you can select "Reverse Order" for any of them.
In keeping with making the usability test optional for the "Spell Ready" condition, I also made it optional for cooldown ready bars. These bars are an option for cooldown timer bars within custom bar groups, so you can now show ready bars even if a spell is not actually usable (as in the Swiftmend example).
1. When two buffs share the same time, they sometimes appear to flicker as they swap places within the group when set to sort by time remaining. This is most easily replicated when eating health/mana food.
2. Occasionally in combat, and I can't easily replicate this the screen will fill up with bars. It seems to be linked to a bar group I have for displaying cds with 5 seconds or less remaining. As per screenshot below: