Get an Epic Experience with Premium

Ovale Spell Priority

Buffs & Debuffs Login to Add Favorites
  • 41 Likes
  • World of Warcraft
  • 180,508 Monthly Downloads
  • Supports: 6.0.3
  • 2,234,813 Total Downloads
  • Updated 01/28/2015
  • Created 08/17/2008
  • 768 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: MIT License
  • Newest File: 6.0.52
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.0.52

Changes from version 6.0.51:

  • Mage: Move Cone of Cold to "shortcd" icon since there is no range check.

  • Recompile the script if the player changes specializations.

    Script controls may have changed due to the specialization change and
    recompiling the script will reset the controls and rebuild them again.

  • Use a more elegant method to generate AddIcon blocks for the script.

    This avoids extra tables and strings and should use less memory.

  • Suggest CDs at the appropriate time in case there is a pre-cast spell.

    This change should make opener suggestions more closely follow the
    SimulationCraft profile.

  • Add the Lone Wolf raid buffs.

  • Translate SimulationCraft's "shadowy_apparations_in_flight" operand.

    It currently translates to a static value of 1.

  • Update Localization.lua using the new shell script.

    Minor differences include changing some comments and removing an
    unnecessary variable assignment.

  • Git should ignore all *.tmp files.

  • Rewrite localization.lua as a shell script.

    The shell script localization.sh only uses tools found in a Windows Git
    installation.

Comments

First Previous Page 36 of 86 Next Last
  • #779

    Regarding bugs in the default class scripts:

    The Ovale default scripts are generated directly from the SimulationCraft T14H profiles by a parser that Sidoine wrote for the MoP release.  Bugs in the scripts indicate bugs in the parser that should be fixed, and tickets should be opened for those issues.  Right now, Sidoine is on a bit of a break due to work, so those issues might take some time before they are completely resolved.

    if you are looking for working scripts, there are scripts for some classes that can be used directly from the Nerien's Ovale Scripts addon, and additional scripts may be found in the Ovale forums.

  • #778

    I've been away from WoW for a few months now and I have upgraded to the latest Ovale and want to use LeafKiller's latest scripts. I have downloaded Nerien's scripts and they are sitting in my addon folder and I went into the /ovale code screen and reset the code to default.

    Now the problem is, how do I select Leafkiller's scripts as the one I want to use? I don't see an option anyway to do this.


    Edit: LoL after I posted this I found out how to select different scripts. The problem is/was that Nerien's scripts is not listed alphabetically for some reason and it is found at the very bottom of the Interface/Addons list in WoW. So for those of you who cannot find it, scroll to the very bottom of the addons list.

    Last edited by nToxiK on 9/30/2012 11:23:18 PM
  • #777

    druid skill plz ...Cry

  • #776

    I still can not get this to work properly with my feral druid. I tried downloading a script but it did nothing. Would it be possible for you to explain what I should try? Or if you are aware of whats happening with the feral druid rotation?

  • #772

    Hello, sorry if this seems a really simple question, but I have logged on today, and Ovale has gone right off my screen to the left, I have made it as big as possible but the Grab bar to move it is out of reach, is there a command to center the addon back onto the screen as as of now I can't see it without making it as big as possible ( but still can't get the relocate bar to trigger )

     

    thanks in advance

  • #773

    You can reset the profile to restore the Ovale default settings.  That will put your Ovale icons back to the middle of the screen.  If you have a custom script, you should copy it so it doesn't get lost in the reset.

  • #771

    I'm noticing that something is wrong with the Elemental Shaman rotation as it never tells me to use Earth Shock even when I have 7 stacks of lightning shield...

    So:

    if BuffStacks(lightning_shield) ==0 Spell(earth_shock)
    if BuffStacks(lightning_shield) >3 and target.DebuffRemains(flame_shock) >SpellCooldown(earth_shock) and target.DebuffRemains(flame_shock) <SpellCooldown(earth_shock) +TickTime(flame_shock) Spell(earth_shock)

    isn't triggering.

  • #770

    Not sure if this is an Ovale WITH Nerien issue, but:

    6x Ovale-5.0.6\OvaleCompile.lua:525: script ran too long Ovale-5.0.6\OvaleCompile.lua:525: in function "CompileInputs" Ovale-5.0.6\OvaleCompile.lua:570: in function "Compile" Ovale\Ovale-5.0.6.lua:78: in function "CompileAll" Ovale-5.0.6\OvaleFrame.lua:147: in function "OnUpdate" Ovale-5.0.6\OvaleFrame.lua:67: in function <Ovale\OvaleFrame.lua:66>

    Locals: self = <table> {  Compile = <func> @Ovale\OvaleCompile.lua:530  DebugNode = <func> @Ovale\OvaleCompile.lua:598  CompileInputs = <func> @Ovale\OvaleCompile.lua:521 } text = " SpellList(COMBATMIND 107970 109793 109795) SpellList(VELOCITY 107982 109787 109789) SpellList(SPELLPOWERTRINKETBUFF 73551 84968 90889 91019 91135 91136 92225 95875 97007 97008 99712 99741 102437 105134 107948) SpellList(HASTETRINKETBUFF 91041 92328) SpellList(MASTERYTRINKETBUFF 100403) SpellList(CORRUPTIONDEBUFF 172 87389) Spellinfo(980 duration=24) AddCheckBox(shadowandflame SpellName(17801) default) AddListItem(curse none "None") AddListItem(curse elements "Curse of the Elements" default) AddListItem(curse tongues SpellName(1714)) AddListItem(curse weakness SpellName(702)) AddListItem(bane none "None") AddListItem(bane agony "Agony") AddListItem(bane doom "Doom" default) AddListItem(bane havoc "Havoc" mastery=3) AddCheckBox(potions "Volcanic Potion" default) AddCheckBox(lightweave SpellName(75170)) AddCheckBox(powertorrent "Power Torrent") AddCheckBox(trinketdmcv "DMC: Volcano") AddCheckBox(trinketfoul "Foul Gift of the Demon Lord" mastery=2) AddCheckBox(trinketiotcm "Insignia of the Corrupted Minnode = <table> {} defines = <table> {  EMPOWEREDIMP = "47283"  LIFETAP = "1454"  RITUALOFSOULS = "29893"  IMPROVEDSOULFIRETALENT = "10940"  BANEOFHAVOC = "80240"  IMMOLATE = "348"  GLYPHOFLASHOFPAIN = "70947"  SOULHARVEST = "79268"  CORRUPTION = "172"  PETAXETOSS = "89766"  DEMONARMOR = "687"  SOULFIRE = "6353"  IMPROVEDSOULFIREBUFF = "85383"  HEALTHSTONE = "5512"  PETPURSUIT = "30151"  CREATEHEALTHSTONE = "6201"  DEMONSOULFELGUARD = "79462"  SHADOWANDFLAMETALENT = "10936"  POWERTORRENT = "74241"  SHADOWANDFLAMEDEBUFF = "17800"  CURSEOFWEAKNESS = "702"  BANETALENT = "10938"  VOLCANICPOWER = "79476"  ARCANETORRENTMANA = "28730"  VOLCANICPOTIONSPELL = "80481"  HAUNT = "48181"  BANEOFDOOM = "603"  VOLCANICPOTION = "58091"  PETSUCCUBUS = "Succubus"  BERSERKING = "26297"  SUMMONINFERNAL = "1122"  UNSTABLEAFFLICTION = "30108"  STONEFORM = "20594"  DEMONSOULIMP = "79459"  FELSPARK = "89937"  CHAOSBOLT = "50796"  DEMONSOULVOIDWALKER = "79464"  EMBERSTORMTALENT = "11181"  LIFEBLOOD = "55503"  SUMMONFELGUARD = "30146"  DEMONICEMPOWERMENT = "47193"  FELARMOR = "28176"  BLOODFURY = "33697"  PETSINGEMAGIC = "89808"  PETLEGIONSTRIKE = "30213"  DEMONSOULFELHUNTER = "79460"  BANEOFAGONY = "980"  SHADOWBOLT = "686"  METAMORPHOSISTALENT = "11044"  PETFELSTORM = "89751"  FELFLAME = "77799"  INCINERATE = "29722"  GLYPHOFMETAMORPHOSIS = "64318"  SOULSTONE = "5232"  DRAINSOUL = "1120"  SUMMONSUCCUBUS = "712"  SUMMONIMP = "688"  DEMONSOUL = "77801"  SUMMONFELHUNTER = "691"  GLYPHOFIMP = "56248"  CONFLAGRATE = "17962"  PETFELGUARD = "Felguard"  DEATHCOIL = "6789"  DARKINTENTBUFF = "85768"  SHADOWANDFLAMESPELL = "17801"  SUMMONDOOMGUARD = "18540"  SOULBURN = "74434"  SHADOWFLAME = "47897"  NETHERWARD = "91711"  MOLTENCORE = "71165"  SEARINGPAIN = "5676"  SOULSIPHONTALENT = "11112"  SHADOWBURN = "17877"  SHADOWTRANCE = "17941"  VOLCANICDESTRUCTION = "89091"  METAMORPHOSIS = "47241"  CURSEOFTONGUES = "1714"  LIGHTWEAVE = "75170"  PETIMP = "Imp"  PETFELHUNTER = "Felhunter"  DEMONSOULSUCCUBUS = "79463"  IMMOLATIONAURA = "50589"  DECIMATION = "63167"  HANDOFGULDAN = "71521"  SEEDOFCORRUPTION = "27243"  FOULGIFT = "102662"  DRAINLIFE = "689"  DARKINTENTTARGETBUFF = "85767"  JINXELEMENTSDEBUFF = "86105"  DARKINTENT = "80398"  CURSEOFTHEELEMENTS = "1490"  CREATESOULSTONE = "693" } unknownSpellNodes = <table> {} ParseDefine = <func> @Ovale\OvaleCompile.lua:396 subtest = <func> @Ovale\OvaleCompile.lua:353 ParseSpellName = <func> @Ovale\OvaleCompile.lua:505 ParseL = <func> @Ovale\OvaleCompile.lua:515 ParseCanStopChannelling = <func> @Ovale\OvaleCompile.lua:495 ParseSpellAddBuff = <func> @Ovale\OvaleCompile.lua:198 ParseSpellAddDebuf

     

  • #764

    Pretty annoying when you are notified to recast buffs that you already have just because somebody else of your class casts that buff (Power Word: Fortitude, Shadowform). Is there a fix for this?

  • #763

    Getting the following error upon logging characters in with the latest version. Keep up the great work on this Addon, feel naked without it  :)

     

    Date: 2012-09-21 10:57:01
    ID: 1
    Error occured in: Global
    Count: ∞
    Message: ..\AddOns\Ovale\OvaleCondition.lua line 1271:
       attempt to perform arithmetic on global 'duration' (a nil value)
    Debug:
       [C]: ?
       Ovale\OvaleCondition.lua:1271: classe()
       Ovale\OvaleBestAction.lua:304: Compute()
       Ovale\OvaleBestAction.lua:493:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:493: Compute()
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:471:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401: Compute()
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401: Compute()
       Ovale\OvaleBestAction.lua:671: Compute()
       Ovale\OvaleFrame.lua:171: OnUpdate()
       Ovale\OvaleFrame.lua:67:
          Ovale\OvaleFrame.lua:66
    Locals:

    AddOns:
      Swatter, v4.0.3 (<%codename%>)
      NPCScanOverlay, v5.0.0.1
      AckisRecipeList, v2.4
      Altoholic, v5.0.001d
      AtlasLootLoader, vv7.00.01
      Auctionator, v3.0.5
      Babylonian, v5.1.DEV.332(/embedded)
      BadBoy, v11.100
      BagBrother, v
      Bagnon, v5.0.4
      Castbars, v
      Configator, v5.1.DEV.335(/embedded)
      DataStore, v5.0.001
      DataStoreAchievements, v5.0.001
      DataStoreAgenda, v5.0.001
      DataStoreAuctions, v5.0.001
      DataStoreCharacters, v5.0.001
      DataStoreContainers, v5.0.001
      DataStoreCrafts, v5.0.001
      DataStoreCurrencies, v5.0.001
      DataStoreInventory, v5.0.001
      DataStoreMails, v5.0.001
      DataStorePets, v5.0.001
      DataStoreQuests, v5.0.001
      DataStoreReputations, v5.0.001
      DataStoreSpells, v5.0.001
      DataStoreStats, v5.0.001
      DataStoreTalents, v5.0.001
      DBMCore, v
      DBMLDB, v
      Decursive, v2.7.1.1
      Gatherer, v4.0.3
      GTFO, v4.14.2
      IceHUD, v1.8.8 (Revision: 916)
      InFlightLoad, v5.0.001
      MikScrollingBattleText, v5.7.122
      MogIt, v3.0.5
      OmniCC, v5.0.3
      Ovale, v5.0.1
      Postal, v3.5.0
      QuestGuru, v2.2.13-50001
      QuestGuruTracker, v1.5.14-50001
      Recount, v
      sellgrey, v5.0.4 (01 sept 2012)
      SilverDragon, vv3.0
      SlideBar, v4.0.3 (<%codename%>)
      TargetPercent, v2.01
      Titan, v5.1.5.50001
      TitanBag, v5.1.5.50001
      TitanClock, v5.1.5.50001
      TitanGold, v5.1.5.50001
      TitanLocation, v5.1.5.50001
      TitanLootType, v5.1.5.50001
      TitanPerformance, v5.1.5.50001
      TitanRepair, v5.1.5.50001
      TitanVolume, v5.1.5.50001
      TitanXP, v5.1.5.50001
      VuhDo, v3.5
      VuhDoOptions, v3.5
      XLoot10, vz32-release
      XPBarNone, vv1.5.10
      BlizRuntimeLib_enUS v5.0.5.50001 <eu>
      (ck=634)

  • #765

    Please test r538 and let me know if that fixes the problem.  I think it only affected warlocks since their default script used the offending Ticks() condition.

  • #769

    Yes, latest version has now sorted the login error problem  :)  thank you very much for the speedy responses.

  • #767

    I've made a fix in r539 that hopefully clears this error.

  • #766

    Downloaded r538 but getting this on login now, and yeah it does appear to be Locks that are bugging out. Hope this helps.

     

    Date: 2012-09-21 15:27:10
    ID: 1
    Error occured in: Global
    Count: ∞
    Message: ..\AddOns\Ovale\OvaleCondition.lua line 1266:
       attempt to index field 'state' (a nil value)
    Debug:
       [C]: ?
       Ovale\OvaleCondition.lua:1266: classe()
       Ovale\OvaleBestAction.lua:304: Compute()
       Ovale\OvaleBestAction.lua:493:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:493: Compute()
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:471:
          Ovale\OvaleBestAction.lua:203
       (tail call): ?
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401: Compute()
       Ovale\OvaleBestAction.lua:194: ComputeBool()
       Ovale\OvaleBestAction.lua:401: Compute()
       Ovale\OvaleBestAction.lua:671: Compute()
       Ovale\OvaleFrame.lua:171: OnUpdate()
       Ovale\OvaleFrame.lua:67:
          Ovale\OvaleFrame.lua:66



  • #762

    I asked this before to see if we could get a latency gold thing around the buttons.  Normal action buttons do this so you know if you're getting lagged or not.  This becomes a big problem when I click my ability and ovale starts cooling it down, only to have it snap back 300 or so MS later.  Regular action buttons don't do this.

    Ovale is pretty close to an actionbar mod without changing your UI to do it.  But this one thing always becomes a huge issue when the server gets lagged.

     

    Also how do you change the frame strata of the bar?

     

    Last edited by Galvin on 9/20/2012 6:33:56 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 »

Gamepedia Free-shirt Giveaway