Register

5.04 Ovale test thread

Face-rippin fun.

Moderator: Forum Administrators

Exalted
User avatar
Posts: 1145
Joined: Fri Jun 04, 2010 4:28 am

5.04 Ovale test thread

Postby Leafkiller » Thu Aug 30, 2012 2:24 am

**********
Test script only. Please use the script in the main thread http://fluiddruid.net/forum/viewtopic.php?f=3&t=826. It is the most up to date.
**********
Posting for testing - so we don't affect the primary thread until this is proven.

Spoiler: show
Code: Select all
# 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.15  09/03/2012 Make sure Rake is refreshed when it is being held off by Shreds
# 5.4.14  09/03/2012 Fix ripshred counter by recognizing Shred!
# 5.4.13  09/03/2012 Auto-detect glyph of shred for ExtendRip when in front.
# 5.4.12  09/02/2012 Use Rake for fillers
# 5.4.11  08/31/2012 Track Wild Charge for cats in upper left box.
# 5.4.10  08/31/2012 Remove all TargetDeadIn calls for now.
# 5.4.9   08/30/2012 Added Bear AOE rotation check box
# 5.4.8   08/30/2012 Make bear cooldown buttons hideable
# 5.4.7   08/30/2012 Enrage moved to second icon, track Incarnation, make the second small box track all of the tier 2 spells and track tier 4 spells
# 5.4.6   08/29/2012 Add Savage Roar desync code
# 5.4.5   08/29/2012 Remove cower, incorporate Tinderhoof's bear rotation.
# 5.4.4   08/29/2012 Change TF code to take into account the new T13 4 piece bonus. Try to give Rake more leeway.
#                    Add opportunistic FF after fillers.
# 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

Define(BERSERK 106951) #cat+bear cd buff
Define(FAERIEFERAL 770) #bear+cat
Define(FEROCIOUSBITE 22568) #cat finish 35-70 mana
Define(MAIM 22570) #cat interrupt
Define(MANGLECAT 33876) #cat bleed+debuff
   SpellInfo(MANGLECAT inccounter=ripshreds)
Define(RAKE 1822) #cat bleed
Define(RIP 1079) #cat bleed
   SpellInfo(RIP resetcounter=ripshreds)
Define(SAVAGEROAR 127538) #cat damage buff
Define(SHRED 5221) #cat behind
    SpellInfo(SHRED inccounter=ripshreds)
Define(SHREDBANG 114236)
    SpellInfo(SHREDBANG inccounter=ripshreds)
Define(SKULLBASHCAT 80965) #cat interrupt
Define(TIGERSFURY 5217) #cat buff
Define(WILDCHARGE 49376)

Define(BERSERKBEAR 106952) #cat+bear cd buff
  SpellInfo(BERSERKBEAR duration=10 cd=180 )
  SpellAddBuff(BERSERKBEAR BERSERKBEAR=1)
Define(MANGLEBEAR 33878)
Define(LACERATE 33745)
Define(FRENZIEDREGEN 22842)
Define(INCARNATIONBEAR 102558)
Define(MAUL 6807)
Define(MIGHTOFURSOC 106922)
Define(RENEWAL 108238)
Define(NATURESSWIFTNESS 132158)
Define(CENARIONWARD 102351)
Define(FORCEOFNATURE 106737)
Define(SAVAGEDEFENSE 62606)
Define(SURVIVALINSTINCTS 61336)
Define(SWIPEBEAR 779)
Define(THRASHBEAR 77758)
Define(BARKSKIN 22812)
Define(ENRAGE 5229)

Define(cat_form 768)
  SpellAddBuff(cat_form cat_form=1)
Define(mark_of_the_wild 1126)
  SpellInfo(mark_of_the_wild duration=3600 )
  SpellAddBuff(mark_of_the_wild mark_of_the_wild=1)
Define(ravage 6785)
  SpellInfo(ravage energy=45 combo=1 )
  SpellInfo(ravage inccounter=ripshreds)
Define(incarnation 102543)
  SpellInfo(incarnation duration=30 cd=180 )
Define(treants 106737)
  SpellInfo(treants duration=15 cd=60 )
Define(weakened_armor 113746)
  SpellInfo(weakened_armor duration=30 )
  SpellAddBuff(weakened_armor weakened_armor=1)
Define(weakened_blows 115798)
  SpellInfo(weakened_blows duration=30 )
  SpellAddBuff(weakened_blows weakened_blows=1)
Define(dream_of_cenarius_talent 17)
Define(force_of_nature_talent 12)
Define(incarnation_talent 11)
Define(natures_swiftness_talent 4)
Define(renewal_talent 5)
Define(cenarion_ward_talent 6)
Define(natures_vigil_talent 18)

#Buff
Define(CLEARCASTING 16870)

#Glyphs
Define(GLYPHOFSHRED 114234)

AddCheckBox(berserk "Cat Berserk" default mastery=2)
AddCheckBox(cooldownsL "Show Left Rotation Boxes" default)
AddCheckBox(cooldownsR "Show Right Cooldown Boxes" default)
AddCheckBox(lucioles SpellName(FAERIEFERAL) mastery=2)
AddCheckBox(infront "Frontal attack"  mastery=2)
AddCheckBox(bearaoe "Bear AOE Rotaton" mastery=3)


AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsL) {
        Spell(BARKSKIN)
    }
}

AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsL) {
        if TalentPoints(natures_swiftness_talent) Spell(NATURESSWIFTNESS)
        if TalentPoints(renewal_talent) Spell(RENEWAL)
        if TalentPoints(cenarion_ward_talent) Spell(CENARIONWARD)
    }
}

# Main rotation
AddIcon help=main mastery=3 {   
    if CheckBoxOff(bearaoe) {
   if 1s before Spell(MANGLEBEAR) Spell(MANGLEBEAR)

    if not TargetDebuffPresent(weakened_blows) Spell(THRASHBEAR)
    if target.DebuffStacks(weakened_armor) <1 Spell(FAERIEFERAL)
    if TargetDebuffPresent(THRASHBEAR) <4 Spell(THRASHBEAR)

    Spell(LACERATE)
    Spell(FAERIEFERAL)
   }
   
   if CheckBoxOn(bearaoe) {   
    if 1s before Spell(MANGLEBEAR) Spell(MANGLEBEAR)
   Spell(THRASHBEAR)
    Spell(SWIPEBEAR)
   }
}

AddIcon help=defense mastery=3 {
    if Rage(less 11) Spell(ENRAGE useable=1)
    Spell(SAVAGEDEFENSE usable=1)
    Spell(FRENZIEDREGEN)
}

AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsR) {
        Spell(SURVIVALINSTINCTS)
    }
}

AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsR) {
        Spell(MIGHTOFURSOC)
    }
}

AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsR) {
        if TalentPoints(incarnation_talent) Spell(INCARNATIONBEAR)
        if TalentPoints(force_of_nature_talent) Spell(FORCEOFNATURE)
    }
}

AddIcon help=cd size=small mastery=3 {
    if CheckBoxOn(cooldownsR) {
        Spell(BERSERKBEAR)
    }
}

AddFunction ExtendRip
{
    if TalentPoints(incarnation_talent) Spell(ravage usable=1)
    if CheckBoxOn(infront) {
        if Glyph(GLYPHOFSHRED) and {BuffPresent(TIGERSFURY) or BuffPresent(BERSERK)} Spell(SHRED)
        Spell(MANGLECAT)
    }
    Spell(SHRED)
}

AddFunction AddCombo
{   
    if TargetDebuffExpires(RAKE 2.9 mine=1) Spell(RAKE)
    # try to extend Rip with Shred if overwriting Rake replaces a higher energy Rake
    if LastSpellDamageMultiplier(RAKE) >DamageMultiplier(RAKE) and Counter(ripshreds less 3)
      unless BITWRange() ExtendRip()
    Spell(RAKE)
}

AddFunction BITWRange
{
   {ArmorSetParts(T13 more 1) and TargetLifePercent(less 60)} or TargetLifePercent(less 25)
}
 
AddIcon help=cd size=small mastery=2 { # TF Icon or Barkskin for Bear
    if CheckBoxOn(cooldownsL) {
        if TargetIsInterruptible(yes) {
            Spell(SKULLBASHCAT)
            if ComboPoints(more 1)
                Spell(MAIM)
        }
        Spell(WILDCHARGE)
    }
}
AddIcon help=cd size=small mastery=2 { # Berserk Icon
    if CheckBoxOn(cooldownsL) {
        if BuffPresent(TIGERSFURY) Spell(BERSERK)
        if 0s before Spell(BERSERK) Texture(Ability_mount_polarbear_white)
    }
}
# Main rotation
AddIcon help=main mastery=2 {
    # Savage Roar
    if BuffRemains(SAVAGEROAR) <=1 or {ComboPoints(more 0) and BuffExpires(SAVAGEROAR 3)} {
        Spell(SAVAGEROAR)
    }
   
    # 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 Energy(less 36) 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)
    }
   
    if not TargetInRange(SHRED) {
        Texture(ability_druid_catformattack)
    }

    if CheckBoxOn(lucioles) and target.DebuffStacks(weakened_armor) <1 {
        Spell(FAERIEFERAL)
    }

    # 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)       
    }
   
    # 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)   
   
    #Extends Rip with shred/mangle/ravage
    if TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 5 mine=1) and ComboPoints() <5 and Counter(ripshreds less 3)
        unless BITWRange() ExtendRip()

    # FBs during Berserk
    if BuffPresent(BERSERK) {
        if ComboPoints(more 4) and Energy(more 12) and TargetDebuffPresent(RIP 5 mine=1) and BuffPresent(SAVAGEROAR 3) {
            Spell(FEROCIOUSBITE)
        }
    }
   
    # intentionally clip Rake to maximize uptime
    if TargetDebuffExpires(RAKE 2.9 mine=1) Spell(RAKE)
       
    if  ComboPoints() >=5 and BuffRemains(SAVAGEROAR) <={target.DebuffRemains(RIP)}
        Spell(SAVAGEROAR)

    if BuffPresent(CLEARCASTING) AddCombo()
   
    if ComboPoints(more 4) and target.DebuffRemains(RIP mine=1) >=6 Spell(FEROCIOUSBITE)
   
    # Shred aggressively for Berserk and TF
    if BuffPresent(BERSERK) or BuffPresent(TIGERSFURY) AddCombo()
   
    # Shred for combo points for Rip or SR
    if ComboPoints(less 5) and TargetDebuffExpires(RIP 3 mine=1) AddCombo()
    if ComboPoints(less 1) and BuffExpires(SAVAGEROAR 2) AddCombo()
   
    # Shred to burn off energy so we can TF without capping
    if { 4s before Spell(TIGERSFURY) } AddCombo()
   
    # Fallback Shred to prevent energy capping
    if 1.4s before Energy(more 99) AddCombo()
   
    # opportunistic FF
    if TargetDebuffExpires(weakened_armor 15) and CheckBoxOn(lucioles) Spell(FAERIEFERAL)
}


AddIcon help=cd size=small mastery=2 { # Rake/Manglebear Icon
    if CheckBoxOn(cooldownsR) {
        if BuffExpires(SAVAGEROAR 0) Spell(SAVAGEROAR)
    }
}
AddIcon help=cd size=small mastery=2 { # Rip/Swipebear Icon
    if CheckBoxOn(cooldownsR) {
        if TargetDebuffExpires(RIP 0 mine=1) Spell(RIP)
    }
}
AddIcon help=cd size=small mastery=2 { # Rake/Manglebear Icon
    if CheckBoxOn(cooldownsR) {
        if TargetDebuffExpires(RAKE 0 mine=1) Spell(RAKE)
    }
}
AddIcon help=cd size=small mastery=2 { # Rip/Swipebear Icon
    if CheckBoxOn(cooldownsR) {
        Spell(TIGERSFURY)
    }
}

Return to Kitty DPS

Who is online

Users browsing this forum: Google Adsense [Bot], Terias and 5 guests