Aloha all,
Note: As of r22, Hekili supports Elemental Shamans as well. It's in early testing, feedback appreciated.
After playing with several of the popular rotation helper addons, I decided to draw upon the strengths of several of them and develop my own from the ground up. The features I appreciated and drew inspiration from are as follows:
From EnhaPrio, I liked the 'queue' and being able to see the next several abilities rather than just one or two. It helps with decision-making if I know I don't want to use the highest priority ability for some reason.
From clcEnh, I liked that its second recommended ability was based off of using the first, applying/consuming buffs and debuffs if appropriate, but it seemed limited to just two abilities.
From Nemo, I liked that it tracked some combat events that are useful for making decisions about what abilities to use, like application of Flame Shocks.
With those features in mind, I built Hekili (Hawaiian for Thunder, and, conveniently, my Shaman's name).
Key Features
- Two priority queues, one for single-target and one for multiple targets. You can configure the number of abilities shown for each queue, from 1-5. The primary buttons are independently resizable and the queue buttons are sized and spaced according to your settings. You can adjust the direction of each queue (left-to-right or right-to-left). Each queue is independently skinnable with Masque/LBF, so you can make them visually distinct if needed.
- The addon's recommendations are affected by things like buffs, debuffs, and number of active targets. Targets are counted by looking at who you have damaged in the past X seconds (see 'Grace Period') that is still alive. If you have multiple active targets, your AE rotation may be highlighted.
- At this time, each queue is closely based on available theorycrafting information. The Enhancement profile is very closely based on SimulationCraft. The Elemental profile follows Icy-Veins and TotemSpot. Some slight adjustments are made (refreshing your totem if there's nothing else to do, for instance). Because of this, it also adjusts quite well to talent and glyph changes if they impact your priority list.
- The addon can project the next 5 abilities it will recommend, barring some things like random procs. Each ability is recommended based on what the game state will look like after using its predecessor. Additionally, each prediction is made with the player's buffs, debuffs, and target debuffs in mind. If the addon is predicting what to use in 3 seconds, and Flame Shock wears off in 2 seconds, this will be factored into its recommendation.
- Showing hardcasts (Lightning Bolt without 5 Maelstrom Weapon stacks / no Ancestral Swiftness) can be toggled in the options or with a keybind (Hi, Thok!). Cooldowns can be toggled as well, and can be filtered out based on a number of criteria, including racials, professions, cooldown duration, etc. This is useful if you're holding CDs for another phase of a fight.
- Memory usage is stable (no leaking!) and CPU usage is moderate, comparable to addons like TellMeWhen.
- OmniCC compatible if you want to see cooldown timers on each icon. Additionally, the greentext in the upper right shows its own "time to use" which may be different from the ability's actual cooldown. The text at the bottom is intended to give some indication why an ability is recommended. These will be hide-able in a future version.
- Tracker icons are available, to show buffs/debuffs/cooldowns/totems. They are customizable and each module has recommended settings for your specialization.
Key Faults (why not?)
- Unpredictable events remain unpredictable. Maelstrom Weapon stacks are not projected (though I intend to experiment with this). Tier 16 4pc can cause Lava Lash resets which can't be predicted, but can only be responded to. These unpredictable events are not missed by the addon, but they will cause those abilities to 'jump' to their position in the queue. All recommendations are re-evaluated 10x/second.
- Cannot edit the priority queues from in-game.
- No alternative rotations/modules are available at this time.
- No 'help the healers' mode to recommend popping Healing Stream/etc. when no other abilities are available at this time.
- No localization efforts have been made at this time. Will need a few translators available before that effort begins. (Contact me if interested!)
Help, It's Broken!
- "I logged in and it doesn't show anything!" Make sure you have a module selected on the Basic Settings tab in the addon's options. Your choices are between "Enhancement Shaman SimC 5.4.1" and "(none)". If you are not an Enhancement Shaman, you will not be able to select anything but "(none)". If you downloaded r6 or earlier, the default priority list was "(none)". For r7 and later, the Enhancement Shaman SimC 5.4.1 is loaded by default, but will unload if you are the wrong class or specialization.
- "I logged in but the addon doesn't look like the picture!" I use Masque to change the look of the frames; I recommend it. Next, I change the multi-target queue direction to be right-to-left and place the multi-target queue next to the single target queue. I only show two of the multi-target icons but you can show as many as you want. I also make the multi-target priority icon size '45' and the queued icons '40'. I believe I left both at 50 by default.
If you use a priority helper, you may want to check this one out and see if you find it helpful. I have been using the addon in normal and heroic raiding (up to and including Heroic Malkorok) for the past couple of weeks without issue. I only have a few testers at this point, so there are likely bugs to be discovered. No warranty if it breaks while you're soloing Heroic Garrosh. Please drink responsibly. If you find a bug, please report it via the CurseForge ticket interface! Or make a recommendation/feature request there. Whatever works!
I just wanted to get the word out, so I hope this is an appropriate venue. I would appreciate any constructive impressions, thoughts, testing, and criticism y'all may have. Thanks for taking a look!