Get an Epic Experience with Premium

Ovale Spell Priority

Buffs & Debuffs Login to Add Favorites
  • 48 Likes
  • World of Warcraft
  • 17,392 Monthly Downloads
  • Supports: 6.1.0
  • 2,362,411 Total Downloads
  • Updated 02/25/2015
  • Created 08/17/2008
  • 787 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: MIT License
  • Newest File: 6.1.2
or

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.

Features

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

FAQ

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.

Comments

First Previous Page 43 of 89 Next Last
  • #712

    constant errors in the warlock module and telling me to constantly soulburn or haunt and nothing else.

  • #710

    (Hi Thanks alot for taking the time to update his amazing addon, but i seem to be getting this Lua Error)

    Hope this helps

     

    Message: Interface\AddOns\Ovale\OvaleBestAction.lua:634: attempt to concatenate local 'n' (a nil value)

    Time: 08/29/12 16:53:43
    Count: 87
    Stack: Interface\AddOns\Ovale\OvaleBestAction.lua:634: in function <Interface\AddOns\Ovale\OvaleBestAction.lua:194>
    (tail call): ?
    Interface\AddOns\Ovale\OvaleBestAction.lua:484: in function <Interface\AddOns\Ovale\OvaleBestAction.lua:194>
    (tail call): ?
    Interface\AddOns\Ovale\OvaleBestAction.lua:483: in function <Interface\AddOns\Ovale\OvaleBestAction.lua:194>
    (tail call): ?
    Interface\AddOns\Ovale\OvaleBestAction.lua:185: in function `ComputeBool'
    Interface\AddOns\Ovale\OvaleBestAction.lua:462: in function `Compute'
    Interface\AddOns\Ovale\OvaleBestAction.lua:185: in function `ComputeBool'
    Interface\AddOns\Ovale\OvaleBestAction.lua:392: in function `Compute'
    Interface\AddOns\Ovale\OvaleBestAction.lua:663: in function `Compute'
    Interface\AddOns\Ovale\OvaleFrame.lua:162: in function `OnUpdate'
    Interface\AddOns\Ovale\OvaleFrame.lua:58: in function <Interface\AddOns\Ovale\OvaleFrame.lua:57>

    Locals: self = <table> {
    GetActionInfo = <function> defined @Interface\AddOns\Ovale\OvaleBestAction.lua:68
    Compute = <function> defined @Interface\AddOns\Ovale\OvaleBestAction.lua:194
    ComputeBool = <function> defined @Interface\AddOns\Ovale\OvaleBestAction.lua:184
    StartNewAction = <function> defined @Interface\AddOns\Ovale\OvaleBestAction.lua:63
    }
    element = <table> {
    a = <table> {
    }
    type = "operator"
    b = <table> {
    }
    nodeId = 100
    result = <table> {
    }
    operator = "/"
    }
    startA = 0
    endA = nil
    prioA = 3
    elementA = <table> {
    value = 100
    type = "value"
    rate = 0
    origin = 0
    }
    startB = 0
    endB = nil
    prioB = 3
    elementB = <table> {
    value = 0
    type = "value"
    rate = -1
    origin = 20831.134
    }
    a = 100
    b = 0
    c = 0
    x = 0
    y = 20831.134
    z = -1
    l = nil
    m = nil
    n = nil
    result = <table> {
    type = "value"
    }
    (*temporary) = <function> defined @Interface\AddOns\Ovale\Ovale.lua:201
    (*temporary) = <table> {
    SetDefaultModuleLibraries = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:383
    EnableModule = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:348
    modules = <table> {
    }
    baseName = "Ovale"
    IterateEmbeds = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:458
    GLYPH_ADDED = <function> defined @Interface\AddOns\Ovale\Ovale.lua:142
    casesACocher = <table> {
    }
    Printf = <function> defined @Interface\AddOns\Ovale\Libs\AceConsole-3.0\AceConsole-3.0.lua:69
    PLAYER_REGEN_DISABLED = <function> defined @Interface\AddOns\Ovale\Ovale.lua:168
    defaultModuleState = true
    IsEnabled = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:467
    DisableModule = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:366
    UpdateVisibility = <function> defined @Interface\AddOns\Ovale\Ovale.lua:225
    Log = <function> defined @Interface\AddOns\Ovale\Ovale.lua:201
    RegisterMessage = <function> defined @Interface\AddOns\Ovale\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:118
    UnregisterMessage = <function> defined @Interface\AddOns\Ovale\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:181
    ToggleCheckBox = <function> defined @Interface\AddOns\Ovale\Ovale.lua:313
    dropDowns = <table> {
    }
    SetEnabledState = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:440
    enabledState = true
    RegisterEvent = <function> defined @Interface\AddOns\Ovale\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:118
    DebugListAura = <function> defined @Interface\AddOns\Ovale\Ovale.lua:56
    UNIT_INVENTORY_CHANGED = <function> defined @Interface\AddOns\Ovale\Ovale.lua:124
    traced = false
    checkBoxes = <table> {
    }
    frame = <table> {
    }
    IsChecked = <function> defined @Interface\AddOns\Ovale\Ovale.lua:294
    score = 0
    Enable = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\AceAddon-3.0.lua:315
    listes = <table> {
    }
    GetModule = <function> defined @Interface\AddOns\Ovale\Libs\AceAddon-3.0\Ac

  • #711

    Use http://pastebin.com/ for large things like this in the future.

  • #709

    Addon seems to be having issues with proc bases abilities:


    Maelstrom Weapons for Enhancement

    Bloodsurge for Fury

    Overpower for Arms

    It can't recognize that these are up and is not pushing them into their priority.

  • #708

    Thanks so much for continuing this.  I have alts of every class and multiple specs, and this is a HUGE sanity saver!

  • #707

    I cannot menage to get "TargetDistance" function to work. I have instaled LibRangeCheck-2.0 but it is not working. Similar problem with "TargetDeadIn" function also.

  • #706

    I'm sorry I'm a bit noob in programmation, I want to do a simple rotation with an unique spell icon the order will be : 1.Stormstrike 2.Lava Lash 3. Unleash elements. 

    Nothing else. (Stormstrike is 8secs CD, lava lash 10 and unleash elements 15).

    How can I do that, code is really complex for me :(

    Thanks a lot for your future help in coding :)

    Last edited by glonglon on 8/29/2012 5:03:23 PM
  • #719

    Can someone just give me a simple adaptable example that i can work on ? :(

     

    Thanks a lot for your future help

    Last edited by glonglon on 8/30/2012 12:02:07 PM
  • #704

    the code for affliction warlock doesn't work correctly. I didn't try the code for demonology or destruction.

    ManaPercent not working properly. Always show me to use life tap.

    TicksRemains not working properly. Always show me to cast Agony.

    ...

  • #703

    One of my favorite addons, I hope it gets updated soon.

     

  • #702

    Hi again

    Managed to get the Lua message for you to check.

    Date: 2012-08-29 17:55:28 ID: 2 Error occured in: Global Count: 2 Message: ..\AddOns\Ovale\OvaleData.lua line 297:    GetSpellBookItemInfo(): Invalid spell slot Debug:    (tail call): ?    [C]: GetSpellBookItemInfo()    Ovale\OvaleData.lua:297: FillSpellList()    Ovale\OvaleData.lua:234: ?()    ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147:       ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147    [string "safecall Dispatcher[1]"]:4:       [string "safecall Dispatcher[1]"]:4    [C]: ?    [string "safecall Dispatcher[1]"]:13: ?()    ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: Fire()    Ace3\AceEvent-3.0\AceEvent-3.0.lua:120:       Ace3\AceEvent-3.0\AceEvent-3.0.lua:119 AddOns:   Swatter, v5.13.5258 (BoldBandicoot)   Ace3, v   ACP, v3.4   Babylonian, v5.1.DEV.312(/embedded)   BankStack, vv26   Configator, v5.1.DEV.312(/embedded)   DBMCore, v   DBMLDB, v   DBMSpellTimers, v   DebugLib, v5.1.DEV.312(/embedded)   EnsidiaFails, v302   GTFO, v4.14   HunterFocusBar, v0.93beta   Informant, v5.13.5258 (BoldBandicoot)   LibExtraTip, v5.12.DEV.319(/embedded)   OmniCC, v5.0.1   Ovale, v4.3.13   Pawn, v1.6.2   Recount, v   RecountEnsidiaFails, v   ReforgeLite, v1.12   Stubby, v5.13.5258 (BoldBandicoot)   TidyPlates, v6.7.0 (R521)   TidyPlatesGraphite, v   TidyPlatesGrey, v   TidyPlatesNeon, v   TidyPlatesQuatre, v   TidyPlatesHub, v   TidyPlatesWidgets, v   TipHelper, v5.12.DEV.315(/embedded)   WIM, v3.5.9   WoWDBProfiler, v   BlizRuntimeLib_enUS v5.0.4.50001 <eu>   (ck=317)

     

    Hope this is of help

     

  • #701

    Hi,

    I am having a problem getting this to work with new patch, things were fine before today but whilst it shows as loaded I am now not getting the icons showing at all. I was getting a lua error but now that seems to have gone away so I am unable to copy it here for you to check. I have gone through the config menu and cannot see how I can make the icons show either in combat or out.

    I'm hoping this is just a patch issue and whether you will be updating this at all.

    Thanks in advance for any help you can offer

  • #700

    thanks alot jlam for this awsome addon rly love it mate <3 

    keep up the good work my dear sir and i wish that there will be update for it :-D

  • #699

    How does http://wowdps.com/ works? What did you have in mind when you wrote this "Simply paste the full Simulationcraft profile". Do we need to open those ".simc" files in notepad and copy paste its content in that first field on http://wowdps.com/?. When i dod that I get this message " Une erreur s'est produite lors du traitement de votre demande."

  • #705

    Yes, it is how it should work. There might be bugs.

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

Legends of Hoenn Tin Giveaway