Get an Epic Experience with Premium


Combat Login to Add Favorites
  • World of Warcraft
  • 24,049 Monthly Downloads
  • Supports: 6.1.0
  • 80,759 Total Downloads
  • Updated 02/26/2015
  • Created 11/18/2013
  • 58 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: GNU General Public License version 3 (GPLv3)
  • Newest File: 2.30.7
Support development! **

About Hekili

Version 2.30

Hekili v2.30 is now released!

There is a known issue that your existing displays may shift slightly in position as I've moved the anchor for displays to be in the center of each display, rather than the center of the primary icon. This should occur only once.

If you have had issues with your displays resetting their positions after reloading, please update to 2.30.7. If the problem persists, please submit a ticket!

Getting Started

Upon installing the addon and logging in, you will be presented with two priority displays. The bottom display is your primary display, which is set to automatically switch between single target, cleave (if supported by your specialization), and AOE. The upper display is set to AOE at all times. If there is a number in the lower right corner of your AOE display in red, that indicates the minimum number of targets that the AOE display is built for. When you actually have enough targets to follow the upper display, the number in red will turn white.

Note: For Enhancement Shamans looking for more information about the recommendations, see the updated guide at Unleashed Elements. It does a good job of explaining the priority list that is used by this addon.

By default, both displays are unlocked and can be moved by clicking and dragging the first icon to where you would like it positioned. When both displays have been placed where you want them, you can right click the first icon to lock all icons in place.

Basic Customization

There are a few basic functions you should use to get the optimal benefit of this addon. To set these up, type /hekili in your chatbox and press Enter. This will open the configuration UI to the Welcome tab, which may have useful news and updates about the current version of the addon. Below, you will find a brief explanation for each section.

Basic Settings

Under Basic Settings, there are a few options you can change to alter the function of the addon. When first getting started, the most important settings are Locked and Debug. If you want to move your displays again, uncheck Locked and move them as previously instructed. The Debug function will allow advanced users to get more information about why the displays are recommending current actions by mousing over the icon when paused.

Filters and Keybinds

Skipping over Displays and Action Lists for a moment, the Filters and Keybinds section demands some attention. In this section, you'll find a few functions that help you direct the addon how to respond to certain circumstances. As noted above, the Pause feature allows you to lock the display with what it is presently showing. If you checked Debug under General Settings, placing the mouse over an icon while paused will give you additional information about why that icon is appearing right now.

The Mode Switch is a feature that helps you to control your primary display. By default, your primary display will work by detecting how many targets you've recently hit, and recommending single target, cleave, or AOE actions based upon that information. While this is helpful most of the time, there are some fights where you would want to focus on a single-target despite having additional enemies present. Setting a Mode Switch keybind lets you change your preference in combat. Pressing your Mode Switch will tell the addon to ignore adds and focus on single-target until you press the Mode Switch again.

You can also change the Switch Type to make the Mode Switch swap between single-target and AOE regardless of the number of targets detected. This is Manual mode.

Next, the Cooldowns feature is very important. Most specializations have a few abilities that you might want to save for special circumstances in a particular fight. You can check Show Cooldowns and these abilities will be recommended as frequently as possible, when appropriate. You can also set a keybinding so you can show and hide cooldowns throughout a fight at your convenience. This is highly recommended.

You can also set keybindings to tell the addon to recommend hardcasted spells (any spell with a cast time) and interrupts (or not). You may or may not want a keybinding for these, but you should probably set a preference. Note that some action lists may not work properly when hardcasted spells are disabled (i.e., it would basically render the Elemental Shaman display inactive).


Clicking the + next to Displays will show you the default displays set up for your class' specializations. Default displays and action lists are shown in Blue. Advanced users can craft their own displays and action lists; as many as you'd like. Clicking the + sign next to a specific display will allow some additional customization. With the display itself selected, you can change the PvE and PvP Visibility. Want the addon to hide in BGs? Set PvP Visibility to "Show Never."

For visual options, click UI and Style under the display. Here, you can manually set the display's X/Y position on the screen, the number of icons to display (up to 10), the icon spacing, direction, size, and so forth.

Action Lists

Clicking the + next to Action Lists will show you all the lists that are processed to make your displays work. They are closely based on SimulationCraft action lists, with minor tweaks and adjustments when necessary. If you are familiar with SimulationCraft profiles, you shouldn't have too much trouble reading each action and its criteria and seeing how they work.

Advanced Users

For users interested in making their own displays and action lists, please refer to the Advanced Usage guide, which is a work in progress.


Q. Can you add Masque support?

A. It's been in for a long time! I've recently made the addon more frequently and more aggressively check for Masque if you've installed that addon separately. If it still doesn't work, keep frequently asking me until I figure out why.

Q. I only want one display that will automatically switch between single-target and AOE. What's the best way to do that?

A. The primary display will behave this way by default. You can just turn off the AOE display by going to /hekili > Displays > (spec): AOE and unchecking Enabled. Double-check the Filters and Keybinds section to be sure that the Switch Type is set to Auto and the Current Mode is Auto as well. Again, it is highly recommended that you bind a key for your Mode Switch, so you can tell the addon to restrict itself to single-target situations when you need it to.

Q. I want the primary display to only show me single-target. What's the best way to do that?

A. Under Filters and Keybinds, make sure the Current Mode is set to "Single Target."

Q. This addon is bad. It tells me to do something other than what I want to do.

A. It's a priority helper. If it told you to do what you were already doing, it wouldn't be helping you. Also, this isn't a question. But seriously, there could be a couple of good reasons the addon shows you something different than you were expecting. In the vast majority of cases, the addon is identifying circumstances that might not be as easy to track as a living, fleshy creature. Use the Debug and Pause features to see why the recommendation is made. Otherwise, maybe it's a bug! I update the addon as often as possible and actively work to translate SimulationCraft profiles soon after any critical updates. Sometimes, that means I have to add a feature to the addon. Sometimes, there's a translation error. Post a ticket and let me know if something seems broken!


The major features added to the addon since the last release are:

  • Improved and updated action lists for all supported specializations. Default action lists and displays will be automatically updated.
  • Limited SpellFlash support (on a per-display basis).
  • Set keybinds to toggle your cooldowns, interrupts, hardcasts, or mode -- single target, cleave, or AOE. These toggles will dynamically show or hide action lists or abilities that don't meet your current criteria.
  • Use a keybind to pause the addon. A debugging mode is also available to show detailed tooltips when paused, to see exactly why a particular icon is shown at a particular time.
  • Ongoing optimization of the main engine. Instead of constantly updating every potentially useful bit of information, the addon now calculates each bit of information on demand.


Bear in mind, your settings from the 5.x version of this addon will not work with 6.0. The new version will reset any profile that wasn't created with Hekili v2.


Feel free to contact me directly if you have any issues. Private messages work well. Submitting a ticket is good as well. I do NOT get notifications if you comment on this page, unfortunately.

You can reach me on the MMO-Champion forums as Hekili, or on Twitter as @Hekili808.

r183 | kapulani | 2015-02-27 01:22:33 +0000 (Fri, 27 Feb 2015) | 1 line
Changed paths:
   M /trunk/UI.lua

UI.lua - more fixes for clicking to move displays (makes sure coords are always relative to center of screen)
r182 | kapulani | 2015-02-26 23:37:02 +0000 (Thu, 26 Feb 2015) | 1 line
Changed paths:
   M /trunk/State.lua

State.lua - change debuff filter to only watch my debuffs (again).  fixes issue where other players' flame_shocks were counted as one's own.
r181 | kapulani | 2015-02-26 19:26:37 +0000 (Thu, 26 Feb 2015) | 3 lines
Changed paths:
   M /trunk/Classes/Monk.lua
   M /trunk/UI.lua

Monk.lua - BM: Primary should use BM: Single Target if there are exactly 3 targets.

UI.lua - Hide mover frames for displays that are deleted via the UI.
r180 | kapulani | 2015-02-26 17:57:59 +0000 (Thu, 26 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes/Monk.lua

Monk.lua - BMs should use jab even when expel_harm is available (if the monk is not injured).
r179 | kapulani | 2015-02-26 08:21:59 +0000 (Thu, 26 Feb 2015) | 1 line
Changed paths:
   M /trunk/UI.lua

UI.lua - more mover fixes.
r178 | kapulani | 2015-02-26 00:19:11 +0000 (Thu, 26 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes/Paladin.lua

Paladin.lua - tweak Prot: Mitigation abilities to require some incoming damage.
r177 | kapulani | 2015-02-25 20:56:02 +0000 (Wed, 25 Feb 2015) | 1 line
Changed paths:
   M /trunk/State.lua

State.lua - support action.X.charges/max_charges return 0 for abilities w/o charges.
r176 | kapulani | 2015-02-25 20:27:47 +0000 (Wed, 25 Feb 2015) | 5 lines
Changed paths:
   M /trunk/Classes/Paladin.lua
   M /trunk/State.lua
   M /trunk/UI.lua

Paladin.lua - seal_of_righteousness uses seal_of_command's spellID to check if the spell is known (fix for EmpS)

State.lua - delete old timeToReady()

UI.lua - more tweaks to movement, fix pause/debug tooltips.
r175 | kapulani | 2015-02-25 19:31:09 +0000 (Wed, 25 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes/Monk.lua

Monk.lua - fix hook for WW: AOE (ChiEx) in WW: AOE display.
r174 | kapulani | 2015-02-25 19:19:19 +0000 (Wed, 25 Feb 2015) | 1 line
Changed paths:
   M /trunk/UI.lua

UI.lua - another wave of display movement fixes.
r173 | kapulani | 2015-02-25 08:07:24 +0000 (Wed, 25 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes/Paladin.lua

Paladin.lua - revert exorcism & 4pc back to SimulationCraft APL (was no DPS gain for FV, DPS loss for other talents).
r172 | kapulani | 2015-02-25 07:47:50 +0000 (Wed, 25 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes/Monk.lua

Monk.lua - zen_sphere checks now recommend the ability if the buff is not up on yourself.
r171 | kapulani | 2015-02-25 01:06:36 +0000 (Wed, 25 Feb 2015) | 3 lines
Changed paths:
   M /trunk/Classes/Shaman.lua
   M /trunk/Options.lua
   M /trunk/UI.lua

Shaman.lua - fix for bad liquid_magma logic.

UI.lua and Options.lua - re-enable historical movement behavior along with new behavior.
r170 | kapulani | 2015-02-24 21:40:10 +0000 (Tue, 24 Feb 2015) | 22 lines
Changed paths:
   M /trunk/Core.lua

Core.lua - added Hekili_GetRecommendedAbility() function to global namespace.
 - lets you ask the addon to tell your WeakAuras, etc. what ability is recommended in a particular display and slot.
 - returns nil if no ability is recommended, 2nd arg is a brief error message if no recommendation is available.

  ability_id, err = Hekili_GetRecommendedAbility( "Enh: Primary", 1 )

  ability_id, err = Hekili_GetRecommendedAbility( 1, 3 )

  ability_id, err = Hekili_GetRecommendedAbility( "fakedisplay", 1 )
Display name not found.
r169 | kapulani | 2015-02-24 21:00:06 +0000 (Tue, 24 Feb 2015) | 44 lines
Changed paths:
   M /trunk/Classes/Monk.lua
   M /trunk/Classes/Paladin.lua
   M /trunk/Classes/Shaman.lua
   M /trunk/Classes/Warrior.lua
   M /trunk/Classes.lua
   M /trunk/Core.lua
   M /trunk/Events.lua
   M /trunk/Hekili.toc
   M /trunk/Options.lua
   M /trunk/State.lua
   M /trunk/UI.lua

Hekili 2.30.1 for 6.1.0

 - Your displays may shift to the left by 50% of their width on the first load.


Classes.lua - change 'max_stacks' to 'max_stack' for consistency throughout the addon.

Monk.lua - fix stagger, add stagger.pct/stagger.percent
 - update all action lists, displays except MW stuff for now.

Paladin.lua - use a free customizable bind for tier90 talent toggle.
 - update Ret: Cooldowns, ST, AOE, Prot: Cooldowns, Mitigation, Default action lists.
 - update displays.

Shaman.lua - add earthquake aura (debuff).
 - add (and apply) exhaustion/sated auras.
 - add windstrike aura.
 - adjust ascendance IDs again, for some reason.
 - add baseline single charge to earthquake, lava_burst, lava_lash, stormstrike/windstrike, fire_nova.
 - modify charges to above abilities if echo_of_the_elements is talented.
 - update action lists, displays for both specs.

Core.lua - autoconvert old visibility settings to new alpha modes.
 - cleanup handling of charges a bit.

Events.lua - hide addon while at the barber.
 - clean up set_bonus tracking.

Hekili.toc - update.toc

Options.lua - add Notification frame options.
 - set default display alpha.
 - no longer allow players to start config inside combat.
 - add some helpers for moving displays when configuring the addon.
 - autoconvert set_bonus.X=Y imports to set_bonus.X or !set_bonus.X.

State.lua - clean up default debuff handling to fix some mechanics.
 - properly handle charged abilities in state.reset() while casting.
 - prevent the addon from trying to gain endless charges when an ability has recharged.

UI.lua - add some UI elements for moving stuff when configuring.
r168 | kapulani | 2015-02-14 03:37:26 +0000 (Sat, 14 Feb 2015) | 3 lines
Changed paths:
   M /trunk/Classes/Paladin.lua
   M /trunk/UI.lua

Paladin.lua - Tweak to Prot: Buffs to less-aggressively recommend Sacred Shield.

UI.lua - Don't show UI elements if the addon is disabled.
r167 | kapulani | 2015-02-01 18:45:48 +0000 (Sun, 01 Feb 2015) | 1 line
Changed paths:
   M /trunk/Classes.lua

Classes.lua - don't try to restore mana with arcane_torrent.
r166 | kapulani | 2015-02-01 05:43:58 +0000 (Sun, 01 Feb 2015) | 2 lines
Changed paths:
   M /trunk/Classes/Monk.lua

Monk.lua - fix some conditions for when each action list should be utilized in the WW: Primary display.
 - Replace SimulationCraft criteria for fortifying_brew/touch_of_death combo with "just use them together when you can."
r165 | kapulani | 2015-01-28 09:50:59 +0000 (Wed, 28 Jan 2015) | 1 line
Changed paths:
   M /trunk/Classes/Shaman.lua
   M /trunk/Events.lua

Shaman.lua - add Lightning Shield's damaging spellID to exclusions.
r164 | kapulani | 2015-01-28 09:23:10 +0000 (Wed, 28 Jan 2015) | 9 lines
Changed paths:
   M /trunk/Classes/Monk.lua
   M /trunk/Classes/Shaman.lua
   M /trunk/Classes.lua
   M /trunk/Events.lua
   M /trunk/Hekili.lua

Classes.lua - support for "exclusions" to prevent certain spells from triggering target detection.

Monk.lua - update WW action lists for Hinalover's latest updates.

Shaman.lua - exclude Lightning Shield procs from triggering target detection.

Events.lua - support for "exclusions" in COMBAT_LOG_EVENT_UNFILTERED.

Hekili.lua - add exclusions table to class table.
r163 | kapulani | 2015-01-26 08:47:11 +0000 (Mon, 26 Jan 2015) | 17 lines
Changed paths:
   M /trunk/Classes/Monk.lua
   M /trunk/Classes/Paladin.lua
   M /trunk/State.lua

* Every Windwalker action list will change in this updated.  It's been tested but not 100% (yet).

Monk.lua - fix handler for fortifying_brew.
 - fix chi_explosion with buff.combo_breaker_ce.up (was expecting chi_explosion to be free rather than just refunding 2 chi).
 - update WW: Single Target, WW: AOE, WW: Cooldowns to match updated SimC profile.
 - add WW: Single Target (ChiEx), WW: Cleave (ChiEx), WW: AOE (RJW), and WW: Opener (Serenity + CB) to match updated SimC profile.
 - update WW displays.

Paladin.lua - fix harsh_word.known() to check glyph rather than spellID.

State.lua - add 'health_percent' to target metatable (to match 'health_pct').
 - don't store target health, always use live data since we don't project target's damage taken.
 - add 'percent' to resource metatable (to match 'pct').
 - make sure and are cleared when simulated state is reset.
 - the (player) health table will now know which type of resource it is.


First Previous Page 1 of 6 Next Last
  • #146

    Is better support for Spellflash coming?

  • #142


    I installed this one only today so I might have issues because of not knowing it better but:

    I've just been to HM and tried different options on the forced minimum targets but no changes.

    1. single target ele schaman does not show cooldowns (Ascendance, Fire-Storm Elemental) although they are enabled.

    2. if I hit another target present, even if only once and it dies afterwards, the single target bar dissapears.

    3. if I set  the AOE to minimun target 1 like recommended in #136 i still see it în combat but it only shows lightning bolt.

  • #144

    1.  Reload your Ele: Primary display.  Make sure entry #3 (Cooldowns) has the Ele: Cooldowns action list attached.

    2.  Probably having the issue that, at exactly 3 targets, that display has a glitch.  See my response to the post below yours. I'm traveling and can't post a fix at the moment.

    3.  The AOE action list isn't built to work with 1 target.  That's not AOE.  The Force Minimum Targets setting is set to 3 because that's the number of targets required for the AOE recommendations to be meaningful and helpful.  If there's one target, you should be using the single-target action list.

  • #141

    My single target bar continues to bug while in combat, raiding in particular.  I have noticed two issues:

    1. The single target ele shaman bar dissapears while in combat.  It comes back after a few moments and I cant tell what is triggering the behavior.  Some commenters have mentioned the bars resetting position.  If that is true then I am not seeing where the bar is moving to.

    2. The single target ele shaman bar gets confused and consistently displays used cooldown in all slots.  I have to toggle the cooldown feature to get the display to reset. 

  • #143

    There is an error in the Ele: Primary display right now.

    To fix, change the Conditions for 4. Single Target to: single|(cleave&active_enemies<3)

    Change the Conditions for 5. AOE to: aoe|(cleave&active_enemies>=3)

    Make sure to hit Accept after pasting those in.  The issue is that, in automatic mode, the ST list shows at fewer than 3 enemies and the AOE list shows at more than 3 enemies.  At exactly 3 enemies, neither is shown.  The above edits resolve that issue.


  • #139

    Is it possible to have it auto-disable if I switch to prot spec (paladin)? Like a checkbox for each Spec?

  • #140

    You can disable the display for Protection Paladin.

  • #135

    I'm trying to get my WW: AOE display only to be visible if my_enemies>=3. I set this to the Display / WW:AOE Conditions box in the bottom and unchecked Show always/with target/in combat. 

    However, even by hitting a dummy and clones on two other dummies, the AOE display stays hidden.

    How do I get the WW display visible only when the my_enemies>=3 rule is met?

  • #136

    Turn the 'Force Minimum Targets' for the WW: AOE display to 1.

  • #131

    I am having the same issue as Danlsam since patch 6.1, its keep reseting his X & Y position to 0 value.


    Also if I put any value in the Y & X settings it doesn't move at all, dunno why this happens.

    Last edited by chufas on 2/26/2015 11:25:58 AM
  • #133

    Fixed (I hope!) in 2.30.7.

    Please try the new release and let me know if the problem is fixed for you (or not)!

    Last edited by kapulani on 2/26/2015 7:29:00 PM
  • #138

    I can confirm that the new version is working properly now, thanks for the hard work! awesome addon 

  • #132


  • #122

    Version r178

    If you move the Ret: Primary display with the mouse the X/Y settings are not saved correctly. If you enter the X/Y values into the edit boxes on the UI and Style dialog the values are saved correctly.


    Never optimize a bad algorithm.


  • #124

    Fixed (I hope!) in 2.30.7!

    Try the latest release and please report if you're still experiencing this issue.  Thanks!


    Last edited by kapulani on 2/26/2015 7:29:59 PM
  • To post a comment, please login or register a new account.
Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

Triad Wars Beta Access Bundle Giveaway

Get Your Beta Key