Hekili

Combat Login to Add Favorites
  • 31 Likes
  • World of Warcraft
  • 58,716 Monthly Downloads
  • Supports: 7.3.0
  • 742,110 Total Downloads
  • Updated Sep 24, 2017
  • Created Nov 18, 2013
  • 268 Favorites
  • Project Site
  • Release Type: Release
  • License: GNU General Public License version 3 (GPLv3)
  • Newest File: 7.3.0.3
Support development! **
Donate

About Hekili

Hello everyone! Version 7.2.0.x has been released for Legion. Please report any issues you experience via the CurseForge Ticket system. I do not receive notifications about comments posted below.

What is Hekili?

Hekili is a priority helper addon that can make recommendations several steps into the future. It works by collecting information about the game's current state, using a SimulationCraft-like action priority list (APL) to recommend the next ability to use, then modifying the game state and making the next prediction.

Currently Supported Classes
Shaman:  Enhancement, Elemental
Paladin:  Retribution, Protection
Monk:  Windwalker, Brewmaster

In-Testing
Hunter:  Survival
Demon Hunter:  Havoc, Vengeance
Druid:  Feral*
Death Knight:  Frost, Unholy

* Feral Druid support is paused and has no default action lists at this time.  I can't continue work until I unlock my Druid with a L100 token, which is not my highest priority at the moment.


The action lists are visible in-game, accessible via /hekili > Action Lists. The default action lists tend to be imported directly from SimulationCraft, with a few custom tweaks to allow for special Class Settings to be integrated. (You can see the Class Settings through the /hekili interface as well.)

Action lists are presented when attached to a display. You can have an unlimited number of displays, though the addon comes pre-loaded with two displays. Through the /hekili interface, you can customize these defaults.

  • Specialization Primary - With the default settings loaded, the primary display will automatically present the next four recommended abilities with consideration for the number of enemies. This display reacts to the Current Mode option found in /hekili > Toggles. The default behavior reflects a Current Mode set to "Auto." If the Current Mode is set to "Single Target" then the primary display will show recommendations based on the assumption that there is only 1 target in range of your abilities.
  • Specialization AOE - With the default settings loaded, the AOE display will be hidden. This is because the Specialization Primary display automatically adjusts to Single Target vs. AOE when /hekili > Toggles > Current Mode is set to "Auto." The AOE display would be redundant under those circumstances. However, when the Current Mode is set to "Single Target", the Specialization Primary display will only show Single Target. This display then appears to provide you recommendations assuming there are 3 or more targets.

Getting Started

https://medium.com/@hekili/getting-started-with-hekili-d2850c1cb76b

https://medium.com/@hekili/feature-review-for-hekili-in-legion-cc722dbbf844

Alternate Customization

Example:

Enhancement Shaman, Primary Display, Current Mode: Auto

Above is the default Enhancement Primary display. The Current Mode is set to Auto, so this display will automatically adjust to the number of enemies that are detected by the addon.

Enhancement Shaman, AOE (top) and Primary (bottom) dsplays, Current Mode: Single

This shows both displays, because Current Mode is set to Single Target, forcing the Primary display to pretend there is only 1 target no matter how many are detected. Under those circumstances, the AOE display appears to give you these alternate recommendations.

Note on 'Current Mode' Setting

In the vast majority of cases, the Current Mode: Auto setting will be optimal. However, sometimes there are special mechanics in a fight that involve wanting to focus on one enemy at a time rather than maximizing DPS across multiple targets. In this case, it can be helpful to force both displays to be shown. You can set a keybinding to toggle this setting while in-combat. Bind a key for Mode Switch under /hekili > Toggles.

The Mode Switch is sensitive to two factors: the Switch Type and the Current Mode.

1. If Switch Type is "Auto", then pressing your Mode Switch key will toggle between Auto (using actual detected target counts) and Single Target.

2. If Switch Type is "Manual", then pressing your Mode Switch key will toggle between Single Target (forcing 1 target regardless of count) and AOE (forcing the addon to believe there is a minimum of 3 targets). This impacts your Specialization Primary displays only.

Other Customization

You are able to customize displays further. You can change the direction of your recommendation queues, modify its alignment, turn on Blizzard's overlay glow for the first recommendation icon in your display. You can specify that up to 10 icons are shown (more recommendations equals more processing power, though!), change the spacing, the zoom, the primary and queued icon sizes. You can specify the font and font sizes. You can specify that some additional information should appear on the base of the primary icon. You can use SpellFlash if you have that addon loaded as well.

You can use the Masque icon to apply a custom style to your displays.

You can specify visibility in PvE and PvP settings with custom alpha/transparency settings for each. You can specify special Conditions using the SimulationCraft-like syntax used in the Action Lists (this is how the Specialization AOE displays are scripted to see if your Current Mode is "Single Target").

Enhancement Primary, with customized settings to show 2 icons, with the second recommendation smaller than the first.

A display like the above can be created by going to /hekili > Displays > Specialization Primary > UI and Style and adjusting the following:

1. Set Icons Shown to 2.

2. Set Queued Icon Size to 30.

Enhancement Primary, 5 queued icons, with first recommendation at the bottom.

A display like the above can be created by going to /hekili > Displays > Specialization Primary > UI and Style and adjusting the following:

1. Set Icons Shown to 5.

2. Set Queue Direction to Up.

3. Set Queued Icon Size to 30.

Enhancement Primary, 1 recommendation.

A display like the above can be created by going to /hekili > Displays > Specialization Primary > UI and Style and adjusting the following:

1. Set Icons Shown to 1.

(Hey, that looks a lot like a single-icon priority helper WeakAura!)

Troubleshooting

1. There's nothing showing!

A. Did you use this addon before Legion? You may have old, incompatible data in your profile. Go to /hekili > Profiles and click Reset Profile to start from scratch. You may want to reload your UI at that point as well.

2. There's still nothing showing!

A. /hekili > General: Make sure Enabled is checked. If it's not checked, the addon may have detected an error and shut itself off. If that is the case, use an addon like BugSack/BugGrabber to collect any error messages and submit it via the ticket tracker (linked above). If the addon is enabled and nothing is showing, check your displays. /hekili > Displays > Specialization Primary and Specialization AOE: Make sure Enabled is checked. If your issue is with one of the default displays, you can reload the display with the Reload Display button at the bottom and see if it is restored.

commit f6b919e145d05664c6c7e2520e10ce84b2a0f1fe
Author: Hekili <[email protected]>
Date:   Tue Sep 5 12:36:05 2017 -0400

    Don't force refresh when the number of targets changes...

    I suspect this is where the CPU-intensiveness gets out of hand for WW.

commit 300a54920e4dcc1cc6a55b6d0d781d2cb5317f97
Author: Hekili <[email protected]>
Date:   Tue Sep 5 12:31:46 2017 -0400

    Elemental, test-fix for redundant Flame Shocking.

    BrM, fix for, you know, not working (IV Default will now call IV APLs).

commit 9a0f811a18d53338f3d6f1249a0af862d99ff1be
Author: Hekili <[email protected]>
Date:   Fri Sep 1 18:51:09 2017 -0400

    Fix Doom Winds desync logic to only apply to Ascendance builds...

commit e7c12b706f666e180cd71bb2e90fd70261dc9c0b
Author: Hekili <Heki[email protected]>
Date:   Fri Sep 1 13:21:54 2017 -0400

    Fix Specter of Betrayal in Ret CDs APL.

commit 7484913f7bbf4aa32a663b982aaea4ba791f3819
Author: Hekili <[email protected]>
Date:   Fri Sep 1 09:33:52 2017 -0400

    Switch to Lib_UI

commit d9ed920d1c1c87e23f851deee62341783502478c
Author: Hekili <[email protected]>
Date:   Fri Sep 1 09:22:32 2017 -0400

    Support new Unholy DK APL logic for Outbreak.

    PTR flag is now when the client version is not 7.3.0.

commit 668978f9ecd4df09b9963f4e220ad51ff1ee836f
Author: Hekili <[email protected]>
Date:   Fri Sep 1 08:50:20 2017 -0400

    Force Paladins to refresh their action lists, in case they didn't.

commit f0e2476e3b53e041e0feda31a907f6688e6759ef
Author: Hekili <[email protected]>
Date:   Tue Aug 29 22:20:30 2017 -0400

    Fix Fury of Air in single-target.

    Fix throttle on target recounting (up to 20x/sec).

commit 2e61530a2fc6c6b2ce8993333320d69eecef19be
Author: Hekili <[email protected]>
Date:   Tue Aug 29 18:43:51 2017 -0400

    7.3 WW Import.

commit bb29a4cf20cb2d72fcc345facea9d6a2830e0336
Author: Hekili <[email protected]>
Date:   Tue Aug 29 18:37:14 2017 -0400

    7.3 Updates.

commit 552990a6963c71f758dd784e4dc437a5e2209f4d
Author: Hekili <[email protected]>
Date:   Tue Aug 29 00:14:13 2017 -0400

    Fix rune regen model, again...  Unholy thought it always started with 6 runes, leading to never casting Dark Transformation...

    Update DK APLs, 7.3 value tweaks.
    Update Shaman APLs, remove "crash ST" option since it doesn't matter
    with current APL.
    Re-un-re-un-re-un-re-undo the change that advances the clock to the GCD
    if the GCD is active.
    Don't recalculate stuff in forecastResources() that doesn't need to be
    recalculated.

commit fcc3afb082ebfeb761b45402c74162ff54c29253
Author: Hekili <[email protected]>
Date:   Mon Aug 28 17:05:27 2017 -0400

    PTR 7.3 changes.

    Frost DK, Feral Druid (still not *really* supported), Paladin, Monk,
    Shaman changes.

    Also improved importing for some esoteric garbage.

commit 93e30e55afa2ad137a69098c10f9d7d3252d239d
Author: Hekili <[email protected]>
Date:   Thu Aug 3 21:05:05 2017 -0400

    Efficiency fixes...

    Clean up usable item detection a bit more, still need to fix a bug with
    cooldown detection on first load...

    Frost DK:  Tweak hungering_rune_weapon based on recent changes.  APL
    updates to follow.

    Paladin:  APL updates for Protection; correct Soul ring Talents.

    Shaman:  APL updates.

    Warrior:  Not supported, don't look here!

    Core:  First round of efficiency tweaks; far fewer retests when
    double-checking predictive recommendations.  Also, resource modeling and
    forecasting is more efficient.

    Events:  Will only update recommendations for 1 display per frame at
    maximum.  Cycles so that one particular display isn't repeatedly updated
    while others are ignored.

    Importer:  Will automatically replace debuff.judgment.up with
    judgment_override on imports to allow usage of the Retribution class
    option.

    Scripts:  Adding flagging for time-sensitive scripts.  Will use this
    later to avoid retesting criteria that isn't time-sensitive (i.e.,
    talent.X.enabled) vs. stuff that is time-sensitive (buff.X.up).

    More on Resource Modeling:  The addon will now update resource forecasts
    when resources are spent or gained, and only update the resources that
    were changed (via spendResources(), spend(), or gain()).  This is a lot
    more efficient than remodeling resources every time the engine steps
    forward in time (which happens multiple times per icon displayed).

commit fc0324c114915cf7d86c8a5fd6891987f917831a
Author: Hekili <[email protected]>
Date:   Wed Jul 26 22:04:22 2017 -0400

    More detailed info re: Trinket Settings.

commit 7fdf63c89fd41519e17316768d7e46c457f668fa
Author: Hekili <[email protected]>
Date:   Tue Jul 25 00:07:51 2017 -0400

    BrM, support BrewmasterTools for stagger data.

    Resources, fix for accidental overgeneration of modeled regen (fixes
    stuff like Liadrin's for Retribution).

commit b41c46ed761b26adb3b70cdf0b0bb048c1db08c8
Author: Hekili <[email protected]>
Date:   Mon Jul 24 11:00:58 2017 -0400

    Clean up item detection.

    Brewmaster updates.

commit 0e40b084aebc63961df9cd9ae6da1176d1501110
Author: Hekili <[email protected]>
Date:   Sat Jul 22 15:56:15 2017 -0400

    Protection Paladin APL adjustments.

commit 423488ad60418dbf2f82ac7175307376c92c6f18
Author: Hekili <[email protected]>
Date:   Thu Jul 20 18:29:00 2017 -0400

    Update (and hide) usable items APL.

commit 423488ad60418dbf2f82ac7175307376c92c6f18
Author: Hekili <[email protected]>
Date:   Thu Jul 20 18:29:00 2017 -0400

    Update (and hide) usable items APL.

commit 8865d11fbb1956b984bd4ec919f6259b4554067b
Author: Hekili <[email protected]>
Date:   Thu Jul 20 18:19:13 2017 -0400

    Update Paladin APLs.

    Use judgment_override.

commit 8dba843f03c424bb8d7af19934da9e8db118ae39
Author: Hekili <[email protected]>
Date:   Thu Jul 20 17:27:08 2017 -0400

    More tweaking of item name detection.

commit b1887df088f737008f00d36b6cdf286fe017830b
Author: Hekili <[email protected]>
Date:   Thu Jul 20 16:00:58 2017 -0400

    Refine Item Data Caching...

    Hopefully, fix caching bug causing errors for Gnarfoz.

commit 363e3f977f68a84144a0d5ae8b6db0a7383de3ff
Author: Hekili <[email protected]>
Date:   Tue Jul 18 17:21:22 2017 -0400

    Survival Hunter updates.

    Plus, don't cache bad item names when scraping keybinds.
    Don't inadvertently reset the CDs for abilities that are linked to
    specific toggles.

commit ca23211586f3e444c69b1e9e8965adfb12792b39
Author: Hekili <[email protected]>
Date:   Mon Jul 17 17:46:49 2017 -0400

    Update DK, Retribution APLs.

commit 75ee44b91053d8d261896716bd9dee492e300518
Author: Hekili <[email protected]>
Date:   Mon Jul 17 00:31:03 2017 -0400

    DK Updates

    Adjusted addon to allow Frost DK to weave in off-GCD abilities a little
    better.

    Updated APLs for Frost, Unholy.

commit 12af4919ecda42e3819be4ab620d554312c9295f
Author: Hekili <[email protected]>
Date:   Sun Jul 16 23:52:16 2017 -0400

    Trinket Support

    Shaman:  Added APL tweaks and class setting to allow Doom Winds to
    desynchronize from Ascendance when cooldowns are turned off.

    Added baseline support for a number of trinkets.

    They are accessible via the "Usable Items" action (which will try each
    support trinket, with settings available through /hekili).  They can
    also be added manually to action lists (i.e., "Kil'jaeden's Burning
    Wish" is a supported action).

commit e2875e378c4d60c25b465ad358b47f36189e703e
Author: Hekili <[email protected]>
Date:   Sun Jul 16 16:22:33 2017 -0400

    Back to my modified LibArtifactData...

commit c25673de941abe512e23f554ff88edb764f8094d
Author: Hekili <[email protected]>
Date:   Sun Jul 16 13:25:26 2017 -0400

    Lots of stuff.

    DeathKnight:  Add Blighted Rune Weapon.
    Monk:  Add Pressure Point from WW T20.
    Shaman:  Add setting for saving Crash Lightning stacks (will want to
    adjust this on a per-fight basis).
    Add 'Strike' as an alias for 'Stormstrike' for simc compatibility.
    Warrior:  Commit contributed Warrior updates.
    Core:  Commit hybrid prediction system; tries to find a recommendation
    for now.  If there's no recommendation right now, uses the iterative
    system to take steps forward in time to see if that changes.  If that
    finds nothing, uses the recommendation it came up with for later.
    Hekili:  Load library or other addon stubs as needed instead of keeping
    them in a library table.
    Scripts:  Fix infinite loop when cleaning up =/== assignment/comparison
    operators.
    Ready scripts round up to 2 decimals again...
    State:  Abilities that are disabled by a toggle or otherwise not known
    will no longer have a false cooldown of 1 hour.  Need to decide what to
    do for synchronized abilities (i.e., Doom Winds will be held until
    Ascendance is up, just following default SimC APL).
    Stop losing track of memory by wiping the forecast table, we just ignore
    extra tables at this point.

commit 4f9a703903760356e935c9ec6c6da9931a3a4567
Author: Tal Steiner <[email protected]>
Date:   Fri Jul 7 14:13:12 2017 +0300

    Fix CB info

commit 0f7e14c77c2e73d4494e527bc360efcf196ef27f
Author: Hekili <[email protected]>
Date:   Fri Jun 30 06:35:13 2017 -0400

    Unholy:  Fix for T20 4pc.

    Enhancement Shaman:  1 stack of Crashing Lightning per cast of SS, not
    2.

commit ddf295920410255a51a4347752fbf57f981adbaf
Author: Hekili <[email protected]>
Date:   Wed Jun 28 20:49:13 2017 -0400

    Re-unfix keybinds.

    Fix BrM error ('last_tick').

commit 96ff11f7223ad43d823a3cc4bf0f31ab73514e29
Author: Hekili <[email protected]>
Date:   Tue Jun 27 22:30:15 2017 -0400

    Quick fixes.

    T20 fix for Shamans.
    Stuff.

commit 470b7d2f9136ab040182cbbfdbfac5b79c55771e
Author: Hekili <[email protected]noreply.github.com>
Date:   Mon Jun 26 23:36:48 2017 -0400

    Paladins

    Use new talent checking system.
    Fix? Crusade detection.  If it was broken.  IDK.

commit 0bcef853c5753ba34c8900a0dae11b8050bc4065
Author: Hekili <[email protected]>
Date:   Sun Jun 25 23:51:22 2017 -0400

    Vengeance

    - Still work-in-progress, but fix Spirit Bomb and toggle.defensives ->
    toggle.use_defensives.

commit d49c89219853a674dd3bcc91b728663fe626eaf2
Author: Hekili <[email protected]>
Date:   Sun Jun 25 23:42:24 2017 -0400

    Warlock.lua

    Fix soul_shard forecasting error that prevented loading.

commit bb814f9e91c85312459de8e0241ae40d9db766ff
Author: Hekili <[email protected]>
Date:   Sun Jun 25 23:37:23 2017 -0400

    Patch 7.2.5 Legendary Rings

    - Alpha test for DK, DH, Druid (sorta), Hunter, Monk, Paladin, Shaman.
    - Remove some outdated PTR flags.

commit 5aa15685ad0b17e83fe6ad8537a1eccbfaf6cd95
Author: Hekili <[email protected]>
Date:   Sun Jun 25 21:23:44 2017 -0400

    Maelstrom doesn't auto-regen.

commit a044572d556512f9f3c50377b00401f5e686eeb6
Author: Hekili <[email protected]>
Date:   Sun Jun 25 21:23:29 2017 -0400

    Lots of Post 7.2.5 Updates/Fixes/Testing...

    Classes.lua
    - Do a better job of labeling resources/modeling/resources.
    - Preliminary support for the legendary talent rings, not able to test
    personally at this time.
    - Support some more on-use trinkets (have to manually add to your APLs,
    unfortunately).

    DeathKnight.lua
    - Model Runes/RP more accurately.
    - Update APLs.

    DemonHunter.lua
    - Model resources.
    - Update APLs.

    Druid.lua
    - Update resource installation process.

    Hunter.lua
    - Update Survival APLs.

    Monk.lua
    - Update resource regen model.
    - Update RJW talent detection.

    Paladin.lua
    - Update APLs.

    Shaman.lua
    - Update resource regen/detection.
    - Add in default clash for Windstrike.

    Warrior.lua
    - Initial Warrior stuff ( later prediction stuff not yet supported )
    from UnleashedD3.

    Constants.lua
    - Update resource names/IDs.

    Core.lua
    - Revamped base engine again, still work-in-progress...

    Events.lua
    - Still working on keybinding detection (and responsiveness)...

    Options.lua
    - Add clashes to the Class Settings tab.

    State.lua
    - Revise mt_resources to handle forecasting.

    Targets.lua
    - Ignore enemies not in your phase (i.e., Desolate Host adds).

    UI.lua
    - Maybe fix a bug where locking/unlocking via minimap icon would leave
    your displays unlocked even though you locked them.

    Utils.lua
    - Convert APLs with "cds" sections to read "CDs" because ugh.

commit 0547fa8d3190697f2c8c6f0e8bc65434a2644546
Author: Hekili <[email protected]>
Date:   Thu Jun 15 08:50:17 2017 -0400

    Fixes.

    - prevent infinite loop in modelResources()
    - workaround for Windstrike CD (it can end up about a hundredth of a
    second greater than GCD, leading to two lower priority abilities woven
    in instead of alternating Windstrikes).  Better fix is pending.
    - prevent bug that allowed lower priority abilities to sometimes sneak
    through.  Sneaky abilities.

commit 49a852733e3150bba97ee58c08967b218987130f
Author: Hekili <[email protected]>
Date:   Wed Jun 14 00:32:23 2017 -0400

    Preliminary fix for Frost Strike.

commit f001da37f573a3004f08c498b6d03a4be70b6c16
Author: Hekili <[email protected]>
Date:   Wed Jun 14 00:23:31 2017 -0400

    Fix mt_default_action.

    action.X.whatever should return the value of whatever, not the function
    (if it is a function).

commit 62f896a15f768a4eb0e2556fbc89e646e34baf1e
Author: Hekili <[email protected]>
Date:   Wed Jun 14 00:23:03 2017 -0400

    Paladin bugfix.

    Fix divine_hammer detection; IsSpellKnown( id ) fails after reloading or
    changing talents.

commit 7a3ba5771d5d4a0652d6704f76ee13f28f6b870f
Author: Hekili <[email protected]>
Date:   Tue Jun 13 22:11:32 2017 -0400

    Shaman fixes.

    Update Shaman APLs.
    Fix Windstrike CD duration.

    Disable equipped/set_bonus in BG and arenas.

commit 78952ae9e2129d936cca0be5af9e5564d9c9dfa8
Author: Hekili <[email protected]>
Date:   Tue Jun 13 18:52:59 2017 -0400

    Revert to old engine til further testing is completed.

    Revert TOC to 70200, 70205 reports Out of Date.

commit 44e4c934b5bb5923c01966005cb32330200cf81b
Author: Hekili <[email protected]>
Date:   Tue Jun 13 12:41:32 2017 -0400

    7.2.5

    Overview
    --------
    Updated for 7.2.5.

    Engine is now autotuned, there's no slider for it.

    Engine now crawls through slices of time instead of attempting to
    project ready times.  The former method was inconsistent with
    SimulationCraft *AND* could fail due to ability criteria timing (i.e.,
    if the conditions were buff.X.remains < 3, then the timing for that
    ability could be much later).

    Classes:
    Added Shadowmeld (mainly for Feral Druid support).

    Demon Hunters:
    Testing logic to make Fel Rush reflect the 0.25s GCD like in-game.
    Updated APLs; dumped the SimC APLs and using handwritten APL from Icy
    Veins (Havoc).

    Feral Druid:
    Some iteration on the Feral Druid model.  Long way to go.  Don't use it.

    Survival Hunters:
    Added logic for spending Bone Apron stacks.
    Updated APLs.

    Paladins:
    Updated Retribution APLs.

    Shamans:
    Updated APLs, removed old MP generation logic, using new model.

    Core:
    Cache known/ready/usable criteria to reduce CPU load in each cycle.
    Addon will give up after 50 iterations through an APL (that's around 1s
    + 10 GCDs).
    Delay text only shows tenths of a second at < 1s remaining.

    Events:
    Updates Per Second is 0.25s baseline, w/ auto-updates based on events.

    Options:
    Minor tweaks.

    State:
    Minor fixes for checking ability cost (action.X.cost) and regenerating
    resources as needed.

    Targets:
    Nameplate checks will also check boss1 - boss5 in case a huge boss has a
    nameplate that goes off the screen.
    Preliminary support for storing permanent modifiers on auras (for Feral
    Druids, mainly).

commit ab6d3c027336fbf7ac29260e0e60ef97bca6e83e
Author: Hekili <[email protected]>
Date:   Fri Jun 9 00:56:51 2017 -0400

    Regen Modeling, 7.2.5 Prep

    Death Knight:
    + Rune, Runic Power regen models added.
    + T20 modeling.
    + Added Unholy artifact traits.
    + New legendaries.

    Demon Hunter:
    + Regen model.
    + Added Blade Turning, Empower Wards, Fel Barrage auras.
    + 7.2.5 stuff.
    + Tier 20.
    + New legendaries.
    + Class setting for making sure you're actually in melee range before
    hitting Fury of the Illidari.
    + Fel Barrage updates.
    + Added Demonic Infusion and Empower Wards for Vengeance.

    Hunter:
    + Added T20, new legendaries.
    + Actually proc Mongoose Power.

    Monk:
    + T20, legendaries.
    + 7.2.5 mechanics changes.
    + RJW changes for Brewmaster.
    + CDR adjustment for split_personality.

    Paladin:
    + New legendaries.
    + New regen model for Liadrin's.

    Shaman:
    + New maelstrom regen model for Enhancement.

    Core:
    + Fixed texture cache for Windstrike, Stormstrike.
    + Adjusted linear time stepping for new engine.
    + Show delay timers for Death Knights; don't use CD wheel for abilities
    that don't have real CDs (should make Frost DK less silly when Hungering
    Rune Weapon is up).

    Scripts:
    + Fix conversion of "!0>1" to "not (0>1)" as "not 0>1" is "false>1"
    which is a mismatch.

    State:
    + Use new regen model system (linear, not projecting forward).
    + isReadyNow() uses 'ready' resource vs. 'spend' when appropriate.

commit 1b593a81c019ed30dd44a87dc3b849e5cfc2e78e
Author: Hekili <[email protected]>
Date:   Mon Jun 5 00:10:49 2017 -0400

    I should split things off more often.

    General
    -------
    + Trying out a new time-slice based engine instead of the
    projection-based system.  The projection-based system has required too
    many special accommodations (time scripts, hidden retesting, etc.).  The
    major difference is that the addon will try to see what to recommend
    now, and if it doesn't find something, it will just step forward a bit
    in time and try again.  This is more like SimulationCraft, which tests
    for an action and waits 0.1 seconds if no action is available.  The
    addon takes a first 0.1s step and if it doesn't find anything there, it
    starts looking at every quarter-GCD for a recommendation until it finds
    one or runs out of time trying.  Work in progress.

    + The remnants of a new resource modeling system has been added, but
    will likely be removed again soon.  It was build for the projection
    system which is no longer used.

    Classes
    -------
    + Qualify some auras as "incapacitates" so that the addon will assume
    you can't use abilities during that time frame.  (And by some, I mean
    only Draught of Souls for now.)

    Paladin
    -------
    + Guarantee that Liadrin's grants you the first Holy Power from
    AW/Crusade.

    Warlock
    -------
    + Rebuilt Soul Shard model; they don't regenerate in any way that we are
    concerned with.

    Scripts
    -------
    + Legend has it that C++ "!0>1" and Lua "not 0 > 1" are not equivalent.
    Fix up auto-conversion to make the addon use "not ( 0 > 1 )" where
    applicable.

    State
    -----
    + Lots of resource modeling nonsense still in here.
    + Support 'in_flight' check (if an ability has been cast before the
    addon simulation, but hasn't hit).

commit 8a799c74ab268821f9e8e82c0a197d4a4a09f8a0
Author: Hekili <[email protected]>
Date:   Thu May 25 18:39:37 2017 -0400

    Ensure no more than 5 Unstable Afflictions can be applied to the target...

commit 1a2db35a0098b760d025363e83162d78c035fac9
Author: Hekili <[email protected]>
Date:   Thu May 25 09:59:54 2017 -0400

    Fix DH APLs.

commit a73ff160a0cea5895704aba4b215078a17c33341
Author: Hekili <[email protected]>
Date:   Thu May 25 00:47:23 2017 -0400

    Paladin:  Added latency option for Judgment.

    + If checked, the use_latency flag will require Judgment to remain up
    for at least latency x 2 before recommending spenders.
    + Updated APLs to use judgment_override again, which includes the
    use_latency behavior above.

commit 25adca9caad7438aa0691d3c58fa9342be06fb76
Author: Hekili <[email protected]>
Date:   Wed May 24 07:59:59 2017 -0400

    Test auto-versioning.

    + Include WARNING.blp
    + Test flagging APLs as having issues in the configuration UI.

commit 4db9a70f724a3c4faf200a8a7792045f55b0cb75
Author: Hekili <[email protected]>
Date:   Tue May 23 21:18:32 2017 -0400

    Many fixes, handle it.

    Classes
    + Instead of requiring custom funcions for abilities that require a
    talent (or replace a talent), added talent= and notalent= fields to
    abilities.
    + Added Faulty Countermeasure to usable items.
    + Added some shared legendaries and related auras.

    Death Knight:
    + pre-populate gargoyle as a pet.
    + sudden_doom stacks to 2 with artifact trait.
    + clawing_shadows fixed.

    Demon Hunter
    + health regen effects will no longer cause the addon to stop updating
    health information.
    + APL tweaks to reduce Fel Rush overusage, added class setting for Keep
    Fel Rush Recharging.

    Druid
    + Health gains should affect health.actual (to avoid breaking
    health.current) or use gain().

    Hunter
    + Fix for T19 detection (wrong itemID used for 1 of the pieces).
    + Health gains should affect health.actual or use gain().

    Monk
    + Added healing_elixir, touch_of_karma per request (ToK is in the
    updated APL).
    + Imported latest WW APL, hope nothing breaks.

    Core/Engine
    + Start looking up to 60 seconds out, to be more friendly to
    Brewmaster's defensive icon.

    Formatting/UI/Debug
    + Show 'nil' value for variables/conditions that are nil, when looking
    at tooltips, etc.

    Options
    + Don't let people disable the Global Cooldown using Class Settings /
    Exclusions.
    + Imported APLs will now be spaced out for readability's sake.
    + Added Issue Reporting tab to simplify complaining about my shoddy
    coding.
    + Special modifiers that tend to be string values (i.e., action list
    names) will return string values consistently.

    State
    + Possible improvement in time-to-die calculations, though I think I
    still want to rewrite this.
    + Non-boss enemy time-to-die now starts at 15 seconds instead of 300
    seconds.

    Utils
    + Imported APL names will get cleaned up a little more
    consistently/accurately using "frontier match" logic.

commit 2b09cacc26f2d8302a5cc8a33a9255f89a9d3600
Author: Hekili <[email protected]>
Date:   Sun May 21 13:36:22 2017 -0400

    Improve pet handling (mainly for UH DK)...

    + Improve pet.ghoul/abomination/valkyr_battlemaiden handling.
    + Improve buff.dark_transformation handling.
    + Fix Sudden Doom spell ID.
    + Fix use_item imports.
    + Reset pet data on reload.

commit 16d0cda19e2e4ff8923f5868d880399d7bcf1628
Author: Hekili <[email protected]>
Date:   Thu May 18 23:20:28 2017 -0400

    ...

commit 854994d5a2316105527751df126449788ab73c78
Author: Hekili <[email protected]>
Date:   Thu May 18 23:20:18 2017 -0400

    Support unstable_afflictions table (like buff.active_uas, but not a fake buff...).

    + unstable_afflictions.stack will return the # of active UAs on the
    target.
    + Importer should convert the above.
    + Importer should also convert 'use_item,name=X' to use ability 'X' if
    the ability exists.

commit fae2590baa424bc6f7d6d26e1b195b07d402391b
Author: Hekili <[email protected]>
Date:   Wed May 17 22:19:32 2017 -0400

    Fixes

    + Recheck item names after entering world, may not be available at
    login.
    + Fix Stormstrike/Windstrike cost.

commit 6b4da6bcc0e0dcb42cab37016532f4c1280d280e
Author: Hekili <[email protected]>
Date:   Wed May 17 19:45:13 2017 -0400

    PTR Bugfix.

    + Ability entries in APLs that are no longer supported will be ignored
    (i.e., Boulderfist is not a spell).
    + Add some default APLs for PTR.

commit 8eed5bda0a14d0048e2005764f889e4d4a6d5dbe
Author: Hekili <[email protected]>
Date:   Wed May 17 19:19:03 2017 -0400

    Very alpha.  Much warning.

    + Preliminary support for on-use items (Draught of Souls, KJBW) -- but
    need to update the importer to convert use_item,name=X to just
    draught_of_souls or kiljaedens_burning_wish.
    + PTR changes for Enhancement Shaman for testing purposes.
    + Affliction Warlock uses prolonged_power pot.
    + Low Impact Mode is now default, uncheck for stronger predictions
    further out, but uses more CPU.

commit b7991e62a22b13201990f19e93fa3fd9fe7120e5
Author: Hekili <[email protected]>
Date:   Fri May 12 23:27:12 2017 -0400

    Testing Warlock stuff (thanks UnleashedD3!)

    + Warlock (Affliction) module started by UnleashedD3.
    + Added a feature to tell the addon to break a cast/channel -- the addon
    won't assume you're planning to complete every 6 second channel and will
    instead show you what to do at the next GCD.
    + The feature above is specifically for Drain Soul -- addon will show
    you what to do at next GCD.  Will iterate on this.
    o Also, working on keybindings again, please disregard keybind
    weirdness.

    Will prevent this from showing up on Curse for now.

commit c6ed58e902f92fe19f0c42531d962222cb7a2cb5
Author: Hekili <[email protected]>
Date:   Thu May 11 17:39:50 2017 -0400

    Remove debug print from Empower Rune Weapon.

commit 3a4400380a7954536aac6dc4d859a222169a5501
Author: Hekili <[email protected]>
Date:   Thu May 11 16:13:08 2017 -0400

    Fixes.

    + Block bad regen values for resources that don't regen.
    + Fix swing-based resource regen.
    o WiP:  use_item support, not ready for primetime.
    + For modifiers, if the value doesn't resolve to an actual value, the
    value will be stored as a string.  So name=blah will first try to assign
    the value of blah to args.name, but if that is nil, it will store the
    strong "blah" in args.name.  Because.

commit 5ff769d5e1235a1eda890eae504ea1c557ae35bb
Author: Hekili <[email protected]>
Date:   Mon May 8 12:01:27 2017 -0400

    Add Blinding Sleet aura.  Flag Breath of Sindragosa as a friendly DoT.

commit c8f5690dffe670b7aa610e53acdb7c307976bfc8
Author: Hekili <[email protected]>
Date:   Sun May 7 23:49:46 2017 -0400

    Commit new APLs for Ret from Solsacra.

commit 9857b56dab4d3fa5f5ca58d90fb0b8d694c2d628
Author: Hekili <[email protected]>
Date:   Sun May 7 23:01:05 2017 -0400

    Resource Fixes

    + Fury, Pain, Holy Power, Maelstrom do not "regenerate" under the new
    model.

commit 353ceed8f7e7363195a9917ed432322fe138c3d4
Author: Hekili <[email protected]>
Date:   Sun May 7 22:50:46 2017 -0400

    Start of DK (Unholy, Frost) and Druid (Feral) support.

    + Fix for Survival Hunter
    + Fixes for MP generation from weapon swings.
    + Fix for Snapshots actually grabbing the right values for some
    keywords.

commit dcd66c464aa05d99aff878922383610dc0851ed4
Author: Hekili <[email protected]>
Date:   Thu Apr 27 22:47:38 2017 -0400

    Quick fixes.

    + Allow action lists flagged as "Any" spec to work.
    + Don't default spell duration to 0 if no other value is available.

commit a18bd35960612a45417ead8427994c031a6b48e5
Author: Hekili <[email protected]>
Date:   Tue Apr 25 21:48:49 2017 -0400

    Update Elemental APLs...

    + Used the tweaked importer to try SimC's Elemental APLs instead of my
    handwritten versions from SEL.  Will see how that goes.
    + Aura Info can actually be shown on displays now.  Added Buff/Debuff
    Remaining Time as an option.

    o Tweaked the aura counting code to leave auras alone since debuffs
    won't actually "tick" to keep themselves off the clock.  May be adverse
    impacts...
    + Added customization options for Show Aura Info consistent with the
    other Extras.
    + Quick and dirty fix for Snapshots doing duplicate string replacements
    (i.e., 'buff.X.duration' and 'duration' in the same script).
    + Buffs/debuffs will grab info from the class aura table if it exists,
    so that we anticipate 'duration' information for auras we know about.

commit 61b366ff9ae63de471b157c2e1043e757f8373c8
Author: Hekili <[email protected]>
Date:   Mon Apr 24 23:27:03 2017 -0400

    Assorted Fixes

    o Fixed assignment of textures for abilities that change during
    Metamorphosis.
    o Use NoTaint_UIDropDownMenu to avoid taint issues.
    o Skin the dropdown menu if ElvUI is installed.

commit 2ba73ef1935a7560e8e36732153b582d0b1aec2d
Author: Hekili <[email protected]>
Date:   Mon Apr 24 18:54:54 2017 -0400

    Clear all stashed gear when updateGear() fires.

commit 9ac60dd657511ccfcc536eab8f601cfe7dc80c7d
Author: Hekili <[email protected]>
Date:   Mon Apr 24 18:40:15 2017 -0400

    Added Class Settings: Exclusions

    + Added checklist of abilities one can use to exclude abilities from
    your displays.  This is done on a per-profile basis for now, but could
    conceivably be done per-display if needed.

    + Added 'active_mongoose_fury' which compares buff.mongoose_fury.remains
    > latency * 2 -- this hopefully makes the addon slightly less likely to
    recommend another Mongoose Bite when Mongoose Fury is falling off faster
    than you can realistically react.  APL will be updated to use this.

commit 1b9d51eafd4d2c8ce2da1c821b9891834190e5b2
Author: Hekili <[email protected]>
Date:   Mon Apr 24 00:26:10 2017 -0400

    Fix Demon Hunter APL.

    Fix 'arget.time_to_die' -> 'target.time_to_die'

commit 89af533533a708c1aa2417f35dd6562bdf8d875c
Author: Hekili <[email protected]>
Date:   Sun Apr 23 22:59:46 2017 -0400

    Fix LibDataBroker-1.1 bake-in.

commit d55a496c7deda8ee1f46b8811c919926e4a51683
Author: Hekili <[email protected]>
Date:   Sun Apr 23 22:29:08 2017 -0400

    Unleashed Demons is an artifact trait, not a talent.

commit 9058d498f75071b7f2fee6983e9c7e2c2fb8fec9
Author: Hekili <[email protected]>
Date:   Sun Apr 23 22:18:57 2017 -0400

    Import latest Hunter APLs.

    + Fix import when the specific potion isn't indicated.

commit 657c45745304a67b3113f770e9d6d34c43d49bf6
Author: Hekili <[email protected]>
Date:   Sun Apr 23 22:04:40 2017 -0400

    Paladin - make sure APLs are up to date.

    Fix extraneous code in DH module.

commit f8d30dcd944b57e87eb4ab1b8605e31725430ea5
Author: Hekili <[email protected]>
Date:   Sun Apr 23 21:52:35 2017 -0400

    Ugh.

commit 4bf32a5275d1aab0f2456b99d18614c8896b21a5
Author: Hekili <[email protected]>
Date:   Sun Apr 23 21:51:21 2017 -0400

    Tweaks, work on DH, etc.

    o Delay keybind overrides until out of combat, if needed.
    o Fix typo 'csating' -> 'casting'.
    + Added DH traits and legendary effects (very few, really).
    + Change 'variable' or "Store Value" actions to just grab the result
    from the action list, instead of snapshotting it.
    o Do a better job of grabbing keybinds for abilities that shift between
    forms.
    + Create some really, really ugly string manipulation code to simplify
    importing the DH Havoc APL directly from SimulationCraft.
    + target.distance will now return the average of the minimum and maximum
    range estimates.
    + target.exists is now a valid check.
    + target.in_range is now a valid check, will check on a per-ability
    basis or default to true.
    + cooldown.X.adjusted_remains added, simply returns the 'remains' value.

commit d692fffedbf4da4a6913ac2d1d304ab25f83c570
Author: Hekili <[email protected]>
Date:   Fri Apr 21 09:27:32 2017 -0400

    Shaman traits.

commit 28cd3f75242b14b3121dc0ba98505966f2b69c10
Author: Hekili <[email protected]>
Date:   Fri Apr 21 09:27:19 2017 -0400

    Fixes, tweaks.

    + Artifact traits will now use the English-version SimC-like keys
    regardless of region.  (Ashes to Ashes -> ashes_to_ashes, even if your
    client is in Spanish or German or whatever.)

    o Fix for Rainfall duration extension, because that matters.

    o Iterate on minimap icon.

    o Don't force update on UNIT_SPELLCAST_START or
    UNIT_SPELLCAST_SUCCEEDED.  Wait for SPELL_CAST_START and
    SPELL_CAST_SUCCESS in the combat log.

commit ff87fdedac818c897b449e48dff295a5037d6588
Author: Hekili <[email protected]>
Date:   Sun Apr 16 23:22:39 2017 -0400

    Minimap Icon, integrate Monk and Hunter support

    + Added LibDataBroker and LibDBIcon to support a minimap icon, some
    quick setting adjustment w/o keybindings.
    + Brought the Monk and Hunter modules into the addon.
    + Iterated on Demon Hunter support.
    + Debug setting is no longer needed.  When you pause, debug info is
    collected for one cycle and then shut off again.
    + Put Custom Toggles back in.

    ? Still trying to figure out when to rescrape keybindings to
    most-efficiently catch when abilities change due to a form change.

    + SEL and SimC Elemental APLs will default to the Ascendance APL when
    you aren't 110 yet (so that you at least get *something*).

    + Intentionally broke the module code (for now) so that the forked
    modules stop working.

commit b9f85b23c4902ec85c7f1345fffb0913c92d6646
Author: Hekili <[email protected]>
Date:   Thu Apr 13 23:40:10 2017 -0400

    Reduce aura caching workload.

    Instead of recaching auras on every UNIT_AURA for player/target, notify
    the addon to update auras on the next reset if UNIT_AURA fired for
    player or target.  Much less CPU, such performance.  WoW.

commit b541a599a0142cf6e244ea96d595615c6e201dc3
Author: Hekili <[email protected]>
Date:   Thu Apr 13 21:30:50 2017 -0400

    Fix for projectiles; clean-up actionlist and potion options.

commit d5a37249971b2958211aec13daeaff98801ec3bb
Author: Hekili <[email protected]>
Date:   Thu Apr 13 20:00:06 2017 -0400

    Harder, faster, better, stronger...ish.

    Re-fix judgment_override to work at 4+ HoPo (the previous issue was
    related to aura-detection rather than HoPo check).

    Trying new on-demand debug system that only snapshots info when you push
    the button.

    Fix broken update frequency logic that slowed the addon down in boss
    fights.

    ...Need to decide when to queued abilities that haven't actually fired
    yet.

commit 6dcf5ce499c2a6f7a1471ba9866c8e2fd8150087
Author: Hekili <[email protected]>
Date:   Wed Apr 12 21:38:20 2017 -0400

    Efforts to improve reactivity and responsiveness.

    + Fix for spells that are 'in flight' or have been cast but have not yet
    impacted.

commit 5ecb683d4222ccadc02b6141b289340204623970
Author: Hekili <[email protected]>
Date:   Tue Apr 11 23:22:44 2017 -0400

    Test fix for 'oh_speed' error.

commit 758dae7f231a5bd01a3b272e04a4af266ec78cfe
Author: Hekili <[email protected]>
Date:   Tue Apr 11 21:43:59 2017 -0400

    Fix for aura detection by spell ID (use localized name as backup).

commit 0531136f2b2c06893d84d332fa6780cc119d3c5c
Author: Hekili <[email protected]>
Date:   Tue Apr 11 20:47:17 2017 -0400

    Fix for buff/debuff detection.

commit 3e850e7486c260dcaa036bcdc4cd10ab1b7ea69b
Author: Hekili <[email protected]>
Date:   Tue Apr 11 18:22:49 2017 -0400

    Please don't look.

    1.  Fixed a bug with judgment_override for Retribution Paladins.  Thanks
    @Notcalx for the report.

    2.  Please ignore the Demon Hunter stuff.  It's not anywhere near ready.

    3.  Added 'variable' (a.k.a. Store Value) support like SimC.  Specify a
    value name "taco" and the conditions are stored in it.  Other actions
    can use value.taco to retrieve that.  SimC does stuff with this.  Just
    embrace it.

    4.  Action Lists can no longer be disabled because wtf is the point of
    disabling an action list?

    5.  Added 'deficit_pct' and 'deficit_percent' to resource values.

    6.  Uggh.

commit 5fcd42f17883ff2652f96e68d317e122c8de0ebf
Author: Hekili <[email protected]>
Date:   Sun Apr 9 21:27:22 2017 -0400

    Tweaks, Updates, Fixes

    + The addon will now try to learn about buffs that aren't manually
    entered into the addon.
    + The addon will now cache aura information instead of grabbing it fresh
    from the API every update cycle.
    + The addon will now throttle itself to 1 update/second outside of
    combat, unless something relevant happens (target change, buffs/debuffs
    drop/refresh, you cast something...).

    Shaman:
    + Added duration info to several auras.
    + Corrected Stormbringer ID.
    + Removed the special logic for Spiritual Journey, since the game
    handles it well-enough without workarounds.
    + Added Lightning Rod as a target-cycling aura when it is talented (this
    means that using cycle_targets for Lightning Bolt/Chain Lightning should
    work at least a little better until I suppose the target_if syntax).
    + Imported the newer SimC APLs for Elemental and made adjustments
    accordingly.

commit 9f26b2cf865a15657ecbf971412e33152e29d3ff
Author: Hekili <[email protected]>
Date:   Mon Apr 3 00:31:08 2017 -0400

    Tweak placement of SpellFlash settings.

commit 3b4bba30b83cc55512d8d201522a5f1b37e8c561
Author: Hekili <[email protected]>
Date:   Sun Apr 2 13:36:11 2017 -0400

    Manually include LibArtifactData-1.0 (as LibArtifactData-1.0h) because Curse won't package the new one.

commit f149f59b9f5fc9bac36d97bf11386344bf397ac1
Author: Hekili <[email protected]>
Date:   Sun Apr 2 13:17:15 2017 -0400

    Try updated LibArtifactData-1.0...

commit 63bc63c64e7ed83edb44af328200faf070d93e70
Author: Hekili <[email protected]>
Date:   Sun Apr 2 13:11:38 2017 -0400

    Fixes, Tweaks, Refinements

    + Added a system to force one-time changes to
    displays/profiles/action-lists.  This enables me to fix settings without
    pushing people to reset their whole profiles.  Example usage here will
    be that I'm going to turn off 'Debug' mode because it uses a lot of CPU
    for folks who aren't actually debugging.
    o Added Spell ID for Lashing Flames because duhhh.

    + Added simplified Mode Visibility to displays.  This basically makes it
    easier to quickly decide whether a display is a "Primary" or "AOE"
    display (like how I make them) with regard to both target detection and
    visibility.  This includes a fix that makes it so the two-display,
    ST/AOE mode only happens under the right circumstances.  Your experience
    with the addon may change.
    + Refinements made to which events are tracked and which force updates.
    + Minor tweaks to default Paladin/Shaman displays.

commit b34cd76afd034e20b6300a0e62463ca576db9119
Author: Hekili <[email protected]>
Date:   Thu Mar 30 21:13:48 2017 -0400

    Update helper system.

    + When I screw things up, I can set up one-time profile patches now.
    The addon will now make a good faith effort to fix up your APL hooks
    under the new system.  Once.
    + Forcing Debug mode off one time only.  Shouldn't have it on by
    default.
    + Really, really don't do unnecessary data crunching with Debug mode
    off.
    + More tweaks to forced addon updates based on events.

commit e90f9b4223215634af9efd99b19d35e79ff37d9f
Author: Hekili <[email protected]>
Date:   Wed Mar 29 16:25:05 2017 -0400

    Ascendance is 15 seconds.  Adjust forced updates.

commit f1cfb1dfb0c641684644b39d6504cab1dacee672
Author: Hekili <[email protected]>
Date:   Tue Mar 28 23:27:41 2017 -0400

    7.2:  Force update on CLEU: SPELL_CAST_START/SUCCESS rather than UNIT_SPELLCAST_START/SUCCEEDED.

commit b092925522e93f7dc841c85d1d410671679ba3f4
Author: Hekili <[email protected]>
Date:   Tue Mar 28 18:41:56 2017 -0400

    7.2:  Update some PTR data to live.

commit 49d6017332d1d05f0ff9d0908205b2ef4a9daf0c
Author: Hekili <[email protected]>
Date:   Tue Mar 28 18:40:03 2017 -0400

    7.2:  Update Paladin Defaults

commit 3bf3cce2818118cc4a356d93bb3cb9c1461c352f
Author: Hekili <[email protected]>
Date:   Tue Mar 28 18:29:44 2017 -0400

    7.2:  So much stuff.

    This update note is objectively bad.

commit de640f1f8ced7fc6463ab6a9335c96d6ba723c7a
Author: Hekili <[email protected]>
Date:   Sat Mar 18 23:30:31 2017 -0400

    ALPHA:  Try event-driven (with 0.05 ICD) updates instead of interval updates.

    + Add resource.time_to_XX calculation.

commit 5cbec630ff5d800987bd91140db622507f6d752e
Author: Hekili <[email protected]>
Date:   Sat Mar 18 10:52:15 2017 -0400

    Fixes for run_action_list, call_action_list, ...

    o When an action list's criteria is checked, it will not use padded
    criteria (i.e., recheck in 0.1s, half-GCD, etc.) because this has caused
    the addon to test inferior action lists before their criteria are met
    (blocking higher priority lists).
    o Added 0.05s of padding to regenerated resource prediction time.  Wew
    lads!

  • 1
  • 2
  • 3
  • 4
  • 5
  • Next