Get an Epic Experience with Premium

Ovale Spell Priority

Buffs & Debuffs Login to Add Favorites
  • World of Warcraft
  • 6,182 Monthly Downloads
  • Supports: 6.1.0
  • 2,375,390 Total Downloads
  • Updated 02/25/2015
  • Created 08/17/2008
  • 792 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: MIT License
  • Newest File: 6.1.2

About Ovale Spell Priority

Ovale Spell Priority is a rotation-helper addon that shows you what spell or ability you should use in order to maximize your damage.

It displays one or more icons that show the cooldown of an action. The action is conditionally defined through a user-defined script, e.g. you may display either Corruption if the DoT is not on your target or Shadow Bolt if the Corruption DoT is already on your target.

The current release of Ovale provides default scripts for the following classes for Warlords of Draenor:

  • Death Knight: Blood, Frost, Unholy
  • Druid: Feral, Guardian, Restoration (Balance is NOT currently supported)
  • Hunter: Beast Mastery, Marksmanship, Survival
  • Mage: Arcane, Fire, Frost
  • Monk: Brewmaster, Windwalker
  • Paladin: Protection, Retribution
  • Priest: Shadow
  • Rogue: Assassination, Combat, Subtlety
  • Shaman: Elemental, Enhancement, Restoration
  • Warlock: Affliction, Demonology, Destruction
  • Warrior: Arms, Fury, Protection

Default scripts are based on SimulationCraft. You may also customize the default script to suit your needs (see Documentation) or use scripts made by other users.

See the video of a survival hunter using Ovale during Wrath of the Lich King.

Please use the forums to submit scripts or discuss them. If you want to report bugs, use the ticket manager.


  • Tracks DoTs, buffs, debuffs, cooldowns, combo points, runes, mana -- everything that a player would need to decide what to do.
  • Adapts to your talent points and glyphs.
  • 100% configurable: everything is in an easy-to-understand script that you can modify and test in real-time without reloading your UI.
  • Compatible with the action icon skinning library Masque.
  • Use SpellFlashCore to flash abilities on action bars in addition, or as an alternative, to displaying the ability icons.


How closely are the default scripts based on SimulationCraft?

The SimulationCraft APL language and the Ovale script language are functionally very similar and concepts from one can be translated into the other in a very direct and mechanical way. For all intents and purposes, the default scripts are the SimulationCraft APLs imported into the game and displayed visually.

Why is the key binding displayed for an action wrong?

You may be running an action bar addon, e.g., Bartender4, etc., that does not use the Blizzard action bar frames.

Why is the icon sometimes red?

The cooldown that is displayed in an icon is not always the true action cooldown. If this cooldown is longer than the action cooldown, then the icon is red. In most cases, it means that if you use this action too soon, then you will overwrite or clip a DoT, which may not be what you want.

How do I make the spells flash on the action bar?

Simply install SpellFlashCore (included if you install SpellFlash) and Ovale will use it to flash the spell to cast on the action bar in addition to displaying the spell in the Ovale icon bar.

Why can't I click on the icon to cast the spell?

Blizzard does not allow this. Only a predefined sequence of spells can be bound to an action icon and this sequence can not change in combat.

On my low-level character, there is nothing at all.

You need to reach level 10 and choose a specialization. However, be aware that the default Ovale scripts are tuned for max-level characters and you may be missing key abilities at low levels that are assumed to exist. If the default script is not working for you, you will need to find or write a script more appropriate for your character's level.

Ovale Spell Priority 6.1.2

Changes from version 6.1.1:

  • Hunter: Fix spell ID of Kill Shot after gaining Enhanced Kill Shot perk.

Changes from version 6.1.0:

  • Druid: Update restoration script for WoD.

    • Properly detect Omen of Clarity if talented into Moment of Clarity.

    • Rejuvenation (Germination) is a Swiftmend-able HoT.

    • Add restrictions for casting Swiftmend on a target.

    • Wild Mushroom is a more expensive spell nowadays, so no longer maintain
      it as the top priority.

    • Use the correct Arcane Torrent (for when Blizzard decides to allow Blood
      Elf druids.

  • Regenerate scripts based on SimulationCraft profiles from release-610-02.

  • Merge branch 'simulationcraft'.

    Pull in changes from SimulationCraft release-610-02.

  • Only prefix the pet ability with the pet name if it's not "pet_<name>".

  • Simplify some SimulationCraft translations after aura ownership change.

    A pet-applied buff is now considered to belong to the player as well, so
    simplify some translations to drop "any=1" and handle Beast Cleave in a
    simpler way.

  • Import Tier17M profiles from SimulationCraft tag "release-610-02".

  • Consider auras applied by the player's pet to belong to the player, too.

    Fixes ticket 569 by @LunaEclipse.

  • Add requirement handlers to check for auras applied by anyone.

    The requirement handlers are:

    • buff_any
    • debuff_any
    • target_buff_any
    • target_debuff_any

    These check for buffs and debuffs on the player or the target that are
    cast by anyone, not restricted to the player.

  • Shaman: The spell IDs for Ascendance have changed in patch 6.1.

    Fixes ticket 571 by @Leafkillr.

  • Remove attempted loading of LibDispellable-1.0, which was removed.


First Previous Page 1 of 89 Next Last
  • #1387

    Very broken at the moment, wont load, just errors

    8x Ovale\Scripts.lua:110: attempt to call method 'IsSpecialization' (a nil value)
    Ovale\Scripts.lua:110: in function <Ovale\Scripts.lua:107>
    (tail call): ?
    ...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0-60.lua:249: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:197>
    ...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0-60.lua:1178: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1055>
    ...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0-60.lua:1588: in function `FeedGroup'
    ...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0-60.lua:1868: in function `Open'
    ...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0-60.lua:1896: in function <...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1894>
    (tail call): ?
    [C]: ?
    [string "safecall Dispatcher[2]"]:9: in function <[string "safecall Dispatcher[2]"]:5>
    (tail call): ?

  • #1386

    Hey, just checking, will this addon be supported for 6.2 ? I would def miss it if not :(

  • #1384

    Thanks for your work, really!

    But you must do something for the fps drops.

    I've uninstalled ovale :(

  • #1385
    Quote from psychosonic »

    Thanks for your work, really!

    But you must do something for the fps drops.

    I've uninstalled ovale :(

    I have unfortunately done the same, the performance hit due to Ovale is massive from 80fps down to 20 in some cases.

  • #1383

    Any news on a balance script yet? Is this something that is ever gonna be possible?

  • #1382

    Greataddon, but is really having some problems.

    Like others here, I play demo lock - but the addon throws errors, most often "script ran too long errors", most commonly in a raid environment (these cause the game to almost freeze when they happen), but also suffers another error that conflicts with auctionator.Once the error has occurred, wow becomes very slow, framerate drops from 80 to 29, or even less. The only way to fix it is to completely exit the game (even unloding the addon doesnt help once its happened).

    I have installed bugsack and will try and capture and post some of these errors.

    1x Ovale\Data.lua:306: script ran too long
    Ovale\Data.lua:306: in function `SpellInfo'
    Ovale\Compile.lua:362: in function <Ovale\Compile.lua:358>
    Ovale\Compile.lua:657: in function `EvaluateScript'
    Ovale\Frame.lua:182: in function `OnUpdate'
    Ovale\Frame.lua:89: in function <Ovale\Frame.lua:88>



    1x SpellFlashCore\SpellFlashCore-2.0.6.lua:40: script ran too long
    SpellFlashCore\SpellFlashCore-2.0.6.lua:40: in function <SpellFlashCore\SpellFlashCore.lua:39>
    SpellFlashCore\SpellFlashCore-2.0.6.lua:804: in function `FlashAction'
    Ovale\SpellFlash-6.22.lua:335: in function `Flash'
    Ovale\Frame.lua:220: in function `OnUpdate'
    Ovale\Frame.lua:89: in function <Ovale\Frame.lua:88>




    1x Ovale\BestAction.lua:465: script ran too long
    Ovale\BestAction.lua:465: in function `PostOrderCompute'
    Ovale\BestAction.lua:425: in function `Compute'
    Ovale\BestAction.lua:836: in function `?'
    Ovale\BestAction.lua:487: in function `RecursiveCompute'
    Ovale\BestAction.lua:464: in function `PostOrderCompute'
    Ovale\BestAction.lua:425: in function `Compute'
    Ovale\BestAction.lua:836: in function `?'
    Ovale\BestAction.lua:487: in function `RecursiveCompute'
    Ovale\BestAction.lua:464: in function `PostOrderCompute'
    Ovale\BestAction.lua:425: in function `Compute'
    Ovale\BestAction.lua:386: in function `GetAction'
    Ovale\Frame.lua:208: in function `OnUpdate'
    Ovale\Frame.lua:89: in function <Ovale\Frame.lua:88>


    Last edited by thetravellor on 4/5/2015 7:27:11 PM
  • #1381

    Love this addon - thank you for it! 

    I play mostly as a Destro Warlock, but when I switch to Demonology, I have the same drop in frame rate or "microstutter" reported by some others. Increasing the update interval didn't  help.

  • #1380

    Hi!  First off thanks for a great addon!  I've been having some trouble recently trying to import a SimC APL into Ovale.  The APL I'm trying to import is  Whenever I import it and copy the output to my custom script, I get the error 

    Ovale AST: Syntax error: unexpected token '.' when parsing FUNCTION; '(' expected.  Ovale AST: Next tokens: dot . blood_plague . ticking Spell ( outbreak ) if BuffPresent ( crimson_scourge_buff ) Spell ( blood_boil ) } AddFunction

    Now I've looked through the script and found the area where it's throwing the error.  At that location the script looks like this:

    if pet.DebuffPresent(outbreak_debuff) and not Spell(outbreak)
    if BuffPresent(crimson_scourge_buff) Spell(blood_boil)

    AddFunction BloodBosShortCdActions


    Obviously the script doesn't work due to the error and if I try to fix it manually nothing changes.. any ideas?


  • #1379

    Is there any way/option to move the frame?

  • #1377
    It's very helpful to me. Thanks a lot!
  • #1374

    Back after a short break away from coding for a few weeks.  Development should start up again shortly.  If you want to report a bug or suggest an enhancement, please post a ticket so the ideas don't get lost in these comments.

  • #1373

    It would be nice if when playing a shadow priest, the Cascade icon were the blue tinted icon, rather than the gold tinted icon (used for holy and disc).

  • #1371

    Changing the update interval to 0 fixed the micro stutter on my spriest...try that to see if it helps you guys.

  • #1375
    Quote from Droole »

    Changing the update interval to 0 fixed the micro stutter on my spriest...try that to see if it helps you guys.

    How do you set the update interval?

  • #1376

    Under the ovale options, undericon it's on the bottom right next to range indicator 

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