Get an Epic Experience with Premium

EnhaPrio

Shaman Login to Add Favorites
  • 6 Likes
  • World of Warcraft
  • 2,621 Monthly Downloads
  • Supports: 5.2.0
  • 120,918 Total Downloads
  • Updated 04/19/2013
  • Created 08/19/2010
  • 83 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: MIT License
  • Newest File: v1.6.1
or
Support development! **
Donate

About EnhaPrio

An addon that shows a enhancement shaman what spell or ability they should use to maximize dps. Only supports shamans of level 85 and above.

How to use it

EnhaPrio displays the suggested skills/spells as a queue of icons that change according to procs and cooldowns. The skill you should use is always at the front of the queue, displayed as a bigger icon. Upcoming cooldowns are shown at the end of the queue. There are also small icons for passive long cooldown skill tracking (Feral Spirit, Fire Elemental Totem and Ascendance) that are visible when those spells are not on cooldown. When you drop a Magma Totem the addon automatically switches to AoE priority mode that is better suited for fights with multiple opponents.

Priority

The priority list at the moment (under periodical revising):

Single target

  1. Elemental Mastery
  2. Fire Elemental, if Blood lust is up
  3. Ascendance
  4. Searing Totem, if not up
  5. Unleash Elements, if specced to Unleash Fury
  6. Elemental Blast
  7. Lightning Bolt, if there are 5 stacks of Maelstrom Weapon
  8. Stormstrike / Stormblast
  9. Flame Shock, if missing and Unleash Flame buff
  10. Lava Lash, if 5 searing flames stacks
  11. Flame Shock, if Unleash Flame buff and dropping soon
  12. Unleash Elements
  13. Lightning Bolt, if mw stack 3 or more, UF debuff on and time to cast
  14. Earth Shock
  15. Feral Spirit
  16. Earth Elemental
  17. Lightning Bolt, if more than one stacks of mw and time to cast
  18. Searing Totem, renew it if nothing else to do

Area of Effect

  1. Fire Nova totem when expiring
  2. Unleash Elements
  3. Flame Shock when under 10s left and UF is up
  4. Lava Lash when more than 20s left on Flame Shock
  5. Fire Nova
  6. Chain Lightning when 5 stacks of MW
  7. Stormstrike

Elemental Specialization

Elemental spec is back! There is a priority for elemental spec again. Elemental mode is in testing and not necessarily perfect as far as the priorities go. If you have suggestions for the elemental spec, let me know.

Key features

  • Customizable icons (size, spacing, amount)
  • Supports Masque
  • Simple Maelstrom Weapon tracker
  • Simple timer for Flame Shock dot on target
  • Passive trackers for Feral Spirit, Fire Elemental Totem and Ascendance
  • AoE mode that switches the priority to AoE priority when using Magma Totem
  • Localization: English, Spanish

Settings

You can get to the settings by typing /ep or /enhaprio or use the games interface options pane. You can also set key bindings in the games "Key Bindings" UI.

Planned features

AoE priority probably needs some revising. Elemental priority needs checking and tweaking.

Credits

tgunlie (ShamWow_Enhance) for original concept
Phanx for localization help

Version 1.6.1 - 19.4.2013

  • Return of the elemental build
  • Lava lash is now used regardless of stacks
  • Fixed issues with leaking memory

Version 1.6 - 17.3.2013

  • AOE mode: a feature to change the priority queue to aoe priority when dropping the magma totem
  • Flame Shock timer: a timer to track the time left on your fs dot on the target
  • A new long cooldown track icon for Ascendance
  • A basic localization support (thanks to Phanx). Spanish translation included.

Version 1.5.5 - 9.3.2013

  • Checked compatibility with the lastest patch
  • Tweaked the priority list

Version 1.5.4 - 31.12.2012

  • Checked compatibility with the latest patch
  • Reintroduced the health threshold for healing feature

Version 1.5.3 - 7.10.2012

  • Fixed some problems with the lvl90 talents

Version 1.5.2 - 30.9.2012

  • Fixed a bug with Ascendance

Version 1.5.1 - 16.9.2012

  • Removed the obsolete Greater Healing Wave option from the priority

Version 1.5 - 15.9.2012

  • Support for 5.0.4+
  • Rewrite of the queueing system. Should alleviate some problems the old one had
  • New skills and new priorities. The priority list is a rough implementation of the priorities discussed on the elitistjerks forums
  • Long CD skills (elementals, wolfs and buffs) are now added to the queue. This feature can be disabled in the options
  • Should work with the new 85+ skills in Mists of Pandaria (untested)
  • Keybindings (editable in Blizz UI): toggle addon on/off, open settings, toggle long cd skills on queue
  • Elemental spec is no more available

Version 1.3.10 - 1.1.2012

  • Checked compatibility with the patch
  • Tweaked the priority list a bit. Other than lb5 lightning bolts are off the default list. Users can still add them to the list manually if they wish to.

Version 1.3.9 - 20.10.2011

  • Fixed a bug when not having the Masque addon installed
  • Removed Lava Burst from the default prioritites

Version 1.3.8 - 19.10.2011

  • Ability to enable/disable EnhaPrio per spec
  • Hard casting Lightning Bolt, with 4 or 3 stacks of Maelstrom Weapon
  • Also implementing Lava Burst for enhancement (used at times there isn't anything else to do)
  • Priorities tweaked allowing for the new spell additions
  • The old ButtonFacede support now replaced with support for Masque

Version 1.3.7 - 16.7.2011

  • Checked compatibility with the latest build
  • Updated the priorities

Version 1.3.6 - 2.5.2011

  • Checked compatibility with the latest build
  • Finally removed the Fire Nova support from the addon. There is no way to know now when that skill is to be used. It's all up to the player now.

Version 1.3.5 - 24.4.2011

  • Added a feature where Greater Healing Wave will be suggested when a certain health level is reached and there are 5 Maelstrom Weapon charges active.
  • There is a new slider for the healing feature in the settings. Setting it to 0 will effectively disable the feature.

Version 1.3.4 - 16.1.2011

  • Added Click-Through option when locked

Version 1.3.3 - 4.1.2011

  • Should only work on lvl81 and above shamans (when you have Unleash Elements)
  • Elemental spec should be working again
  • The queue should now be correctly hidden/shown on talent spec change
  • Removed Shamanistic Rage from the passive cooldowns
  • Some other small fixes etc.

Version 1.3.2 - 13.12.2010

  • Added Unleash Elements to the queue

Version 1.3.1 - 01.12.2010

  • Added option for queued icons size
  • Added option for always show

Version 1.3 - 31.10.2010

  • Added support for elemental spec
  • Added a tracker for Shamanistic Rage

Version 1.2.2 - 18.10.2010

  • Fixed problems with non-english clients
  • Changed the priority

Version 1.2.1 - 14.10.2010

  • Bug fixes

Version 1.2 - 14.10.2010

  • Compatible with 4.0

Version 1.1.1 - 6.10.2010

  • Some minor bug fixes

Version 1.1 - 29.9.2010

  • Added upcoming cooldowns to the queue. This makes anticipating new skills easier.
  • Added an option to switch off aoe damage suggestions (Magma Totem and Fire Nova). To toggle this feature RIGHT CLICK on the main frame (the biggest icon).
  • Added an option to show long cooldowns (Feral Spirit and Fire Elemental Totem) as small icons under the main icon. The icon will appear when the skill is usable.

Version 1.0 - 13.9.2010

  • Initial release

Addon Packs Containing This...

Comments

First Previous Page 1 of 18 Next Last
  • #271

    Hello,

    Been using EnhaPrio for as long as it exists (I think), and think it is a great tool for dps shaman. Playing mostly Enhancement and have no problems there, but when I switch to Elemental the queue is not showing or tracking Ascendance and Fire Elemental Totem. Any idea what might be wrong?

  • #270

    Just wanted to say I love the mod. I've been using it since Cata, and I really like the way it operates.

    The only suggestion I have is somehow having the mod be able to track Bloodlust, Stormlash, and Elemental Mastery on the side of the priority frame; much like it does for Fire Elemental, Ascendance, and Feral Spirits.

  • #266

    With T15 4 items bonus, imo Feral Spirit should be casted asap they are up otherwise you completely miss the 4th bonus mechanic.

    Also with T15 2 items bonus if MW > 3 before and SS is ready a LB should be casted otherwise the two MW  from next SS are going to be lost.

    Last edited by kalman5 on 4/30/2013 6:20:22 PM
  • #267

    I haven't accounted for gear bonuses in the past and I don't think I'll be doing it now. If you want to change the priorities to better suit your gear or play style, you can modify the priority list manually in the EnhaPrio.lua file.

  • #269

    I haven't updated the comments for a while. They were originally for myself to remember some of the actions etc., but I haven't needed them for a while. I'll try to remember to update the legend etc. next time I make updates to the addon. I'll consider adding Blood fury to the rotation, although you should probably use it manually with other cds.

  • #268

    Ok thank you for it. I have some comments too. In the file EnhaPrio.lua I believe some comments are outdated as:  

    "This addon doesn't take long cooldown abilities like Feral Spirit or Fire Elemental into account. Usage of those skills is up to you (they are still an important part of enhancement shamans skillset during bosses)."

    May be in the past was valid but I see in the priority list: "FR" and "FE" .

    In the leggend also are missing the explanation of (at least): "STX", "LB3+", "ST0", "FSX", LBA", even if those are explained as comment in the priority list. Also while in the priority list I can read:

    "FE": Fire Elemental, if Bloodlust up

    in the leggend:

    FE - Fire Elemental Totem

    From function FE I see that the right comment is the one in the priority queue.

    I have added also to EnhaPrio.lua the BFO (Blood Fury Orc)  and fixed the priority

    list for T15. How can I give you my EnhaPrio.lua so you can merge it with the official version (at least for the BFO part), or you can do it your self: 

    I have added to Spells:

    BFO = GetSpellInfo(20572), -- Blood Fury Orc Racial

    and added to Actions:

    BFO = function ()
    if isCastable(Spells.BFO) then
    addToQueue(Spells.BFO)
    end
    end,

     

     

     

     

     

    Last edited by kalman5 on 5/1/2013 9:20:16 AM
  • #258

    EnhaPrio gradually uses more and more memory and for some reason, doesn't get garbage collected all that regularly.  I've found it creeping up on 20 or 30MB of memory at times (longer play sessions).  I've checked this with a freshly-downloaded copy and it seems there is some kind of leak.  Any ideas where to look?

    Maybe it's easier just to force a garbage collection periodically, but it seems like some frequently-created data isn't getting destroyed over time.  (And the faster you have it refresh the queue, the faster EnhaPrio uses more memory.)

  • #259

    I've discussed about this before (http://www.curse.com/addons/wow/enhaprio?page=4#c208) and came to a conclution that the culprit might be the ace libraries or blizzards own api stuff. I haven't found any reason why the addon leaks memory. There are no variables that gather data over time, all of them should be reinitialized or otherwise written over. If you find something that might be doing this please let me know.

  • #264

    Cool.

    Here's what I came up with after toying with a few different things.  I don't know if it is LUA, WoW's API, or what the deal is, but strings as keys just do not seem to get automatically deallocated.  Instead of using the "indexes" table, I did as follows:  http://pastebin.com/qE3ghYm4

    Basically, it just calculates what would've been indexes[a] and indexes[b] as aIndex and bIndex inside of sorter().

    For whatever reason, moving the "sorter" algorithm out of the sortQueue function also saved memory -- it was getting reallocated on every sortQueue() call.  It appears memory stable as far as I can tell...  May want to make sure the sorting is still working properly.  :D

    Edit:  I didn't see your update.  I'll look at your fix.  :)  Thanks for the attention!

    Last edited by kapulani on 3/29/2013 6:54:08 PM
  • #263

    I have located the issue. Apparently the problem is with the automatic garbage collection lua has. When I reinitialize an object, the program doesn't remove the old version from the memory. For instance, when I wiped the queue with queue = {} the old queue object still remained in memory. I fixed this by using the same queue by just removing the elements one by one.

    I put up a new alpha version that has this fix implemented. Now the addon only takes a steady 132,5kB of memory on my system.

  • #262

    Ok, I'll look into it.

  • #261

    It looks to me that, for some reason, the indexes table from sortQueue() never gets picked up by the garbage collector.  If you never sort the queue (stupid, I know), the addon remains at a beautifully tiny 132kb memory footprint.  Once you start sorting, the memory starts growing and growing...

  • #257

    Hello,

     

    I 'am trying to add cobalt frag bomb (www.wowhead.com/spell=67890/) to prioriry list.

    I have do this : http://pastebin.com/7xxB7amZ

    I havent any LUA error, all work good, but the no one icon about fragbomb still appear.

    Any idea about it ?

    Thank

  • #260

    I don't know if you can use GetSpellInfo() for items. That might be where the problem lies.

  • #255

    Stormcats, what are your thoughts about building in the SimulationCraft rotations?  I've done it, and frankly, it creates a big mess whereas your lists are much neater.  However, there is a DPS difference.  It just gets really ugly looking when you need to have four different kinds of Lightning Bolt (based on MW stacks, Ancestral Swiftness, CDs, etc.) and three different kinds of Flame Shock (UF up and no FS / UF up and FS ticking / FS down and no UE for several seconds) and then you have to make sure that your Earth Shock excludes itself from those different conditions for Flame Shock.

    tl;dr -- I've done this, and it's messy...  But there are results in terms of DPS.

    Second, I would strongly recommend building in a "Use Long CDs during Bloodlust" option.  It gives you a middle ground for boss fights, where you don't want it to tell you to pop your CDs in the first 20 seconds of the fight, when a Bloodlust/burn phase is coming.

    The last recommendations would be conditionals for boss-level mobs (i.e., so it only recommends long CDs when you're fighting something that's worth worrying about long CDs) and/or integrate one of the "time to die" addons, so we could modify rotations in cases where a boss is going to die soon and there's no point in saving CDs, etc.  Basically, just looking at any of the conditions that SimulationCraft's rotation requests.

    I'd be happy to send you a .zip of the edits I've made, but a lot of it is ugly, probably excessively complicated, and I'm a bit afraid you'd be insulted by how I've manhandled your project.

  • 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 »