The MoP version of Ovale has an amazing new capability - it can import Simulationcraft scripts and convert them directly to Ovale scripts. I just checked out the 5.0.0-beta2 version of Ovale on Beta, and the script itself is right out of what we have been developing. Unfortunately, I was unable to test how playable it is because some of the spell IDs of spells has changed in MoP. For example Savage Roar used to be 52610 but in MoP it is now 127538. The beta Ovale code is currently using the old spell ID for Savage Roar, so pretty much all it does is ask you to keep recasting it. I opened a ticket on the Ovale Tickets page reporting this, so hopefully this will be corrected soon.

I will check the rotation tomorrow after the servers come back up and if there are any issues, I will post something that works, but my hope is that the default Ovale script will be usable. Longer term, my focus will be on tuning the simulationcraft script directly so that Ovale can get the rotation directly from there.

The downside is that Ovale is currently only picking up scripts that exists, so there are only Feral and Balance profiles, and no Guardian or Resto rotatios (not sure if anyone would ever be able to use a resto rotation though).

If I remember correctly from my messing around on beta, savage roar is still the same ID as it is on live, but Savagery has it's own spell ID that's probably the 127 number you listed. I could be wrong.

aggixx wrote:If I remember correctly from my messing around on beta, savage roar is still the same ID as it is on live, but Savagery has it's own spell ID that's probably the 127 number you listed. I could be wrong.

PS: If that feature actually works well... that's amazing.

I checked the spell ID today - and verified it when I was testing out the new Ovale script which was stuck asking me for Savage Roar because it never detected the buff. The more interesting thing I found is that the same spells have different ids depending on the mastery. For example Incarnation is different for Boomkins vs. Ferals. Berserk is now 106951 for Ferals and 106952 for Guardian.

Install it, open the code page and hit the "Resote Default" button to nuke any existing custom script. Also, turn off Nerian's addon.

Here is a feral only script that is more or less working. Make sure you have every spell on a bar somewhere. I have a macro that includes "/cast Berserk" in it, and every time I log out and log back in, it switches the spell to be the Guardian version on my bar where the macro is and then the feral script will not recognize Berserk since it is looking for the feral version. I simply dragged the feral version onto my bars elsewhere and that is no longer an issue for me.

Go ahead and play with this script and let me know what weird things you are seeing. For the moment I simplified the script a lot - the small frames are fixed in what they show and I removed the look ahead icon because I was getting a lot of lag. Once the patch settles down I will try putting that back in.

EDIT: this script assumes you are using Glyph of Savagery and Glyph of Shred.

# Ovale Optimized Script Leafkiller 5.4# Ovale source: http://wow.curse.com/downloads/wow-addons/details/ovale.aspx# Cat Rotation based on Simulationcraft single target default script. Contributions to that have come from many ferals.# Revision History# 5.4.1 08/27/2012 First version for patch 5.4 - leaving out Guardian and Feral/Bear for the moment# Assume Glyph of Rake and Glyph of Shred# TargetDeadIn seems to be having issues - so removing the calls for now. Won't affect most combat

# TF + Berserk logic - only show Berserk if both are off of cooldown - everyone should macro TF to their Berserk key if not {BuffPresent(BERSERK) or BuffPresent(CLEARCASTING)} { if ArmorSetParts(T13 more 3) { if Energy(less 46) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } if not ArmorSetParts(T13 more 3) { if Energy(less 35) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } }

#In case Berserk was not cast with TF if BuffPresent(TIGERSFURY) and CheckBoxOn(berserk) { Spell(BERSERK) }

# Two conditions for FB during Blood of the Water phase # Add in FB code for end of fight - only do this is Rip buff is present if BITWRange() and TargetDebuffPresent(RIP mine=1) { if ComboPoints(more 4) Spell(FEROCIOUSBITE) if ComboPoints(more 0) and TargetDebuffExpires(RIP 2.9 mine=1) Spell(FEROCIOUSBITE) } #Extends Rip with shred/mangle/ravage if TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) AddCombo()

# Time to recast Rip - clip if possible - try to hold off for TF if ComboPoints() >=5 and TargetDebuffExpires(RIP 2 mine=1) and {BuffPresent(BERSERK) or target.DebuffRemains(RIP mine=1)+1.9 <=SpellCooldown(TIGERSFURY) } Spell(RIP)

I've installed the beta Ovale and have been playing with your script against target dummies, and the only thing I found odd so far is it's suggesting for me to berserk without tiger's fury. I may be missing something though. Do these no longer synergize well together? Or does the script assume you'll hit tiger's fury when it suggests berserk as a given?

If my second assumption turns out to be right, given the new T13 4-piece bonus (free OoC proc upon casting tiger's fury) wouldn't it make more sense to wait until after wasting the clearcast on a shred or something before hitting berserk? It seems like if you hit berserk with the guaranteed OoC proc from tiger's fury still active, you'll be wasting energy and valuable berserk time.

New version of the script with a basic version of a Guardian rotation and some small changes to make it more robust per a conversation I am having with Tinderhoof. The first large icon shows the rage generation rotation and the second icon shows defensive spells. If Rage is less than 60 it shows Frenzied, otherwise it shows SD. You can use this as a guide. Not sure what happens if you glyph Frenzied though...

# Ovale Optimized Script Leafkiller 5.4# Ovale source: http://wow.curse.com/downloads/wow-addons/details/ovale.aspx# Cat Rotation based on Simulationcraft single target default script. Contributions to that have come from many ferals.# Revision History# 5.4.3 08/28/2012 Misc small changes to make it more robust per discussion with Tinderhoof# 5.4.2 08/28/2012 Rudimentary Bear stuff - I need someway to track Mangle...# 5.4.1 08/27/2012 First version for patch 5.4 - leaving out Guardian and Feral/Bear for the moment# Assume Glyph of Rake and Glyph of Shred# TargetDeadIn seems to be having issues - so removing the calls for now. Won't affect most combat

# TF + Berserk logic - only show Berserk if both are off of cooldown - everyone should macro TF to their Berserk key if not {BuffPresent(BERSERK) or BuffPresent(CLEARCASTING)} { if ArmorSetParts(T13 more 3) { if Energy(less 46) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } if not ArmorSetParts(T13 more 3) { if Energy(less 35) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } }

#In case Berserk was not cast with TF if BuffPresent(TIGERSFURY) and CheckBoxOn(berserk) { Spell(BERSERK) }

# Two conditions for FB during Blood of the Water phase # Add in FB code for end of fight - only do this is Rip buff is present if BITWRange() and TargetDebuffPresent(RIP mine=1) { if ComboPoints(more 4) Spell(FEROCIOUSBITE) if ComboPoints(more 0) and TargetDebuffExpires(RIP 2.9 mine=1) Spell(FEROCIOUSBITE) } #Extends Rip with shred/mangle/ravage if TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) AddCombo()

# Time to recast Rip - clip if possible - try to hold off for TF if ComboPoints() >=5 and TargetDebuffExpires(RIP 2 mine=1) and {BuffPresent(BERSERK) or target.DebuffRemains(RIP mine=1)+1.9 <=SpellCooldown(TIGERSFURY) } Spell(RIP)

mineko wrote:I've installed the beta Ovale and have been playing with your script against target dummies, and the only thing I found odd so far is it's suggesting for me to berserk without tiger's fury. I may be missing something though. Do these no longer synergize well together? Or does the script assume you'll hit tiger's fury when it suggests berserk as a given?

If my second assumption turns out to be right, given the new T13 4-piece bonus (free OoC proc upon casting tiger's fury) wouldn't it make more sense to wait until after wasting the clearcast on a shred or something before hitting berserk? It seems like if you hit berserk with the guaranteed OoC proc from tiger's fury still active, you'll be wasting energy and valuable berserk time.

You have selected the "Berserk" option. The script assumes you are using a macro to cast TF with Berserk so when it wants you to cast both it shows you Berserk.

FYI, I just added spoiler BBcodes. LK and others, it'd be helpful if you wrapped big text blocks in the spoiler tag to make the thread a bit easier to read. I tested it on your first script and it looks like it worked fine.

# TF + Berserk logic - only show Berserk if both are off of cooldown - everyone should macro TF to their Berserk key if not {BuffPresent(BERSERK) or BuffPresent(CLEARCASTING)} { if ArmorSetParts(T13 more 3) { if Energy(less 46) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } if not ArmorSetParts(T13 more 3) { if Energy(less 35) and {0s before Spell(TIGERSFURY)} { if CheckBoxOn(berserk) Spell(BERSERK) Spell(TIGERSFURY) } } }

Umm, isn't this backwards? The energy threshold should be lower with 4pT13, not the other way around.

Seems like the FF code could be a lot more aggressive than this, making it toss a FF whenever it's got a free GCD (probably only when duration is less than 15 or so) makes it a lot less likely to interfere with the rotation.

Besides the above points, I can't help but feel that there's some serious bug in the script. It never ever tells me pool, it's always telling me to shred. It often doesn't tell me to refresh rake until the absolute last second, and I've seen a couple times (on the 1 HP training dummy, possibly has something to do with it) where it tells me to FB at incredibly dumb times. To be specific, there was one instance where my rip and SR were both about to fall of (3 seconds-ish) and it told me to use FB. Edit: See below!

Edit: Oh also, I feel that it would benefit from a SR/Rip desync line. Just a hunch though.Edit 2: After some brief testing, I guess the non-raid boss dummies having 1 HP screws with it and it seems to think the target is going to die all the time. How unfortunate.

Seems like the FF code could be a lot more aggressive than this, making it toss a FF whenever it's got a free GCD (probably only when duration is less than 15 or so) makes it a lot less likely to interfere with the rotation.

This is likely on me. I was testing this out in our DS last night and I had to turn off FF because it was suggesting it every 7 seconds (ie off cooldown). Leaf adjusted it to not look at stacks because Ovale seemed to think that we had to ramp it up like Warriors and Rogues. After that adjustment it seemed to work great for me. Personally with current gear I didn't have a lot of down time to put FF up. For the beta I can totally see this as being helpful, but live it maybe more of a hinderence then a help.

After some brief testing, I guess the non-raid boss dummies having 1 HP screws with it and it seems to think the target is going to die all the time.

Ya it trys to estimate time till death so that you don't put up bleeds that will go to long and such.

aggixx wrote:If the ComboPoints(less 5) part is derived from the SimC rotation, you can probably safely remove it. I put that there as a lazy way of making sure SR wasn't sniping DoCs from 5pt finishers.

I actually started without that but I was having trouble getting Rip up so I decided to try and limit SR some. It was in lieu of the desync code which I took out because what I had was not appropriate to what we should be doing now. I may try to put some desync code back in, but I will have to look at what is an appropriate way to do it. I don't suppose we have an easy way to do sims on a level 85 T13 toon?

aggixx wrote:Umm, isn't this backwards? The energy threshold should be lower with 4pT13, not the other way around.

That was based on the old tier 13 Ravage proc. Honestly, I had not even looked at what the new T13 4 piece proc was for cat until just now...

aggixx wrote:Seems like the FF code could be a lot more aggressive than this, making it toss a FF whenever it's got a free GCD (probably only when duration is less than 15 or so) makes it a lot less likely to interfere with the rotation.

As Tinder mentioned, the script is getting hung up on FF sometimes. I had to disable it while I was in LFR. I was hoping that lowering the threshold would stop it from trying to fire multiple times in a row. I think it may be due to others putting up the armor debuff at the same time. It would be possible to add a FF conditional at the end of the filler section that called for it when the script is pooling energy.

Leafkiller wrote:I don't suppose we have an easy way to do sims on a level 85 T13 toon?

Yep, just download the most recent version (either pre-compiled or self compiled should work just fine). You should be able to find the T13H profile in the profiles folder and edit it from there. The rotation's kind of a mess though since it's trying to do the whole super rip thing (it was like a 2k DPS gain! =P).

Leafkiller wrote:I think the other issues you saw were due to being on the 1 hp dummy.

Yeah, I agree. I'll have to see if I can hack/ticket it to get it fixed, because not being able to try to rotation on a dummy that isn't dodging you every other attack is really annoying >.>

@Leafkiller Neither version of your 5.4 scripts seem to work for me. It functions except it doesn't recognize savage roar at all. After reading:

aggixx wrote:If I remember correctly from my messing around on beta, savage roar is still the same ID as it is on live, but Savagery has it's own spell ID that's probably the 127 number you listed. I could be wrong.

ShmooDude wrote:@Leafkiller Neither version of your 5.4 scripts seem to work for me. It functions except it doesn't recognize savage roar at all. After reading:

aggixx wrote:If I remember correctly from my messing around on beta, savage roar is still the same ID as it is on live, but Savagery has it's own spell ID that's probably the 127 number you listed. I could be wrong.

In the spellbook for ferals savage roar is 127538. When you cast it the buff is also 127538. One weird thing I suggest is that you drag the icon from the spell book over whatever is on your bars to make sure you have the latest greatest. Ovale needs each spell on the spell bar to work properly.

In the spellbook for ferals savage roar is 127538. When you cast it the buff is also 127538. One weird thing I suggest is that you drag the icon from the spell book over whatever is on your bars to make sure you have the latest greatest. Ovale needs each spell on the spell bar to work properly.

I will remove cower next time I make changes.

That did it. It looks like the macro system (I have just about everything under the sun macroed =D) is referencing the old savage roar, whereas if you drag it to the action bar, you get the new version. In the macroed version, SR is permanently faded out (ie darker colored as if its not able to be used at the moment, regardless of combo points). In the non-macroed version, SR always appears usable with glyph and is faded at 0 CPs without the glyph. Skull Bash, Berserk and Wild Charge have similar problems (ie appear faded out all the time, regardless of "usable" or not). Incarnation won't even show up under the macro system. I'm guessing the macro code isn't able to reference mop spell IDs? But not a script or even an ovale problem, that's a Bliz problem. Gonna go make a bug report (assuming someone hasn't made one already).

For now as a stop gap I've put all my cat abilities on bar 10 completely unmacroed then hid it (bar 10 isn't usually accessible anyhow under the normal UI) which should solve any problems related to this bug. Probably only needed Savage Roar (maybe mangle, though it appears to function ok) so anyone else having this problem should do the same. (perhaps make a note of it in the official thread so people aren't confused as I was).