Register

New Feral DPS Ovale Script (Updated for 4.0.1)

Face-rippin fun.

Moderator: Forum Administrators

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Sat Oct 16, 2010 12:49 am

Leafkiller wrote:I think "SpellInfo (SWIPEBEAR cd=6)" is correct. Then you would be able to type things such as "if 2s before Spell(SWIPEBEAR)"

However, "unless 2s before Spell(SWIPEBEAR)" does not work - so you have to structure your code around that (see my post when I mentioned being frustrated on page 8 of this thread).

On the subject of MANGLEBEAR, are you trying to have a second box that shows it coming off of coodown?


Thanks for replying so quickly. I feel like that solution for swipe should work... But it doesn't. Swipe gets pressed and then it is forever swipe afterwards in the box.

For the mangle bit. Mangle has a 6 second cd, If i press 3 buttons in quick succession after mangle, mangle will be off its cd at the same time as the next global.
I want it to show up with the global CD in the main box at that time. Currently it waits untill the last milisecond before its off cd and then shows up.

Code I've been modifying:
Code: Select all
Define(SWIPEBEAR 779) #bear aoe
    SpellInfo(SWIPEBEAR cd=6)


AddIcon help=main mastery=2
{
    if Stance(1) # bear
    {
        if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 2)
            Spell(FAERIEFERAL)
           
        if {2s before Spell(MANGLEBEAR)}
        Spell(MANGLEBEAR)

    unless  TargetDebuffPresent(LACERATE stacks=1 mine=1)
            Spell(LACERATE)
       
    if CheckBoxOn(adds) and {0s before Spell(SWIPEBEAR)}   
        Spell(SWIPEBEAR)   

    if TargetDebuffPresent(LACERATE stacks=3) unless {3s before Spell(MANGLEBEAR)}
            Spell(PULVERIZE)

    if CheckBoxOn(demo) and TargetDebuffExpires(lowerphysicaldamage 2)
            Spell(DEMOROAR)

        if Mana(more 10) and TargetDebuffExpires(LACERATE 4 stacks=3)
            Spell(LACERATE)

   
    if Mana(more 15)
        Spell(LACERATE)
   
    if Mana(less 15)
        Spell(FAERIEFERAL)
    }

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Sat Oct 16, 2010 3:48 am

tbot - i will have to look at your script later.

I now have a version of the Ovale script that has been optimized based on Mew modeling (see the Mew thread for more details on the modeling that Alaron did along with my subsequent testing). rather than update the post on page 8, I am going to post it here - and make updates to this one in case people are attached to that other script. This one should produce close to 300 dps more in a raid environment.

One thing that is missing is RAVAGE code - I put some in based on the latest version of Ovale (275) but I was getting errors - so I commented it out for now as my day is at an end.

======================

New version 1.0.1 with support for Ravage/Stampede and Berserk

New version 1.0.2 folded in tbot's Bear code. I did move the option for Demo Roar higher in the script - otherwise it is never cast (it is on a toggle).

New version 1.0.3 - fixed a bug I introduced when adding in the bear code. Also did some cleanup on the Ripshred code. Everyone using the script should also make sure to update Ovale - 4.09 was released on 10/17.

New version 1.0.4 - changes text for swipe on cooldown checkbox, change max energy for berserk from 91 to 96, add optional small timer boxes (on checkbox) for rake/rip and mangle/swipe cooldowns.

New version 1.0.5 - adds two additional cooldown checkboxes for cat - Savage roar and mangle. This is controlled on a separate checkbox. Also added clipping to Rip conntrolled by a checkbox.

Per request, I will keep the last two versions of the script posted here.
Code: Select all
# Ovale Optimized Script Leafkiller 1.0.5
#       Bear code from tbot
# Started with the Ovale default druid script, this includes significant work from Alaron and goes back to the work of Fatalsaints
# Script source: http://fluiddruid.net/forum/viewtopic.php?f=3&t=33
# Ovale source: http://wow.curse.com/downloads/wow-addons/details/ovale.aspx
# Initial optimized version based on Sim work from Alaron with some modifications from Leafkiller
# Revision History (post 1.0)
# 1.0.5 - 10/19/2010
#   Add option to clip Rip
#   Add two more small boxes - for cat: Mangle/SR, nothing for bear for now.
# 1.0.4 - 10/19/2010
#   Change Berserk max energy to 96 (from 91)
#   Add to small boxes to the right for cat to show Rake and Rip cooldowns and mangle/swipe for bears
#   Change name for swipe switch to "Swipe on cooldown"
# 1.0.3 - 10/18/2010
#   Fix bad "{" I put in with the bear code
#   Fix Ripshred code that is now showing up with the new Ovale (it didn't show up before)
# 1.0.2 - 10/17/2010 - Included tbot's bear code
#   Moved Demo Roar higher in the script so it will actually be called
# 1.0.1 - Changes based on Sim results
#   FF refresh at 1 second (down from 2)
#   Rake clip set to 2.9 rather than 2 - this could be a dps increase per the simulator
#   Ravage code included - fires during TF or when 3 seconds left before Stampede falls off (to make sure we don't miss it)
#   Berserk code included

Define(BARKSKIN 22812)
Define(BERSERK 50334) #cat+bear cd buff
    SpellInfo(BERSERK cd=180)
Define(DEMOROAR 99) #bear
    SpellAddTargetDebuff(DEMOROAR DEMOROAR=30)
Define(ENRAGE 5229) #bear
Define(FAERIEFIRE 770) #moonkin
    SpellAddTargetDebuff(FAERIEFIRE FAERIEFIRE=300)
Define(FAERIEFERAL 16857) #bear+cat
    SpellAddTargetDebuff(FAERIEFERAL FAERIEFERAL=300)
Define(FEROCIOUSBITE 22568) #cat finish 35-70 mana
    SpellInfo(FEROCIOUSBITE combo=-5 mana=70)
Define(FRENZIEDREGENERATION 22842) #bear
Define(LACERATE 33745) #bear bleed*3
Define(MANGLECAT 33876) #cat bleed+debuff
    SpellInfo(MANGLECAT combo=1)
    SpellAddTargetDebuff(MANGLECAT MANGLECAT=12)
Define(MANGLEBEAR 33878) #bear bleed+debuff
Define(MAUL 6807) #bear
Define(PULVERIZE 80313) #bear after lacerate*3
Define(RAKE 1822) #cat bleed
    SpellInfo(RAKE combo=1)
    SpellAddTargetDebuff(RAKE RAKE=9)
Define(RAVAGE 6785) #cat behind+(prowling or stampede)
   SpellInfo(RAVAGE combo=1)
   SpellAddBuff(RAVAGE STAMPEDE=0)
Define(RIP 1079) #cat bleed
   SpellInfo(RIP combo=-5 duration=16 resetcounter=ripshreds)
    SpellInfo(RIP glyph=GLYPHOFSHRED addduration=6)
    SpellAddTargetDebuff(RIP RIP=16)
Define(SAVAGEROAR 52610) #cat damage buff
    SpellInfo(SAVAGEROAR combo=-5)
    SpellAddBuff(SAVAGEROAR SAVAGEROAR=14)
Define(SHRED 5221) #cat behind
    SpellInfo(SHRED combo=1 inccounter=ripshreds)
Define(SURVIVALINSTINCTS 61336) #cat+bear surv cd
Define(SWIPEBEAR 779) #bear aoe
    SpellInfo(SWIPEBEAR cd=6)
Define(SWIPECAT 62078) #cat aoe
Define(TRASH 77758) #bear aoe bleed
Define(TIGERSFURY 5217) #cat buff
    SpellInfo(TIGERSFURY cd=30)

#Glyphs
Define(GLYPHOFSHRED 54815)
Define(GLYPHOFRIP 54818)
Define(GLYPHOFBERSERK 62969)

#Buff
Define(CLEARCASTING 16870)
Define(STAMPEDE 81022)

AddCheckBox(adds "Swipe on Cooldown" default)
AddCheckBox(cooldowns "Show Cooldown Boxes" default)
AddCheckBox(cooldowns2 "Show More Cooldown Boxes" default)
AddCheckBox(clip "Clip Rip" default)
AddCheckBox(lucioles SpellName(FAERIEFIRE) default)
AddCheckBox(mangle SpellName(MANGLECAT) default mastery=2)
AddCheckBox(demo SpellName(DEMOROAR) default mastery=2)
AddCheckBox(berserk SpellName(BERSERK) default mastery=2)

ScoreSpells(FAERIEFERAL DEMOROAR MANGLEBEAR LACERATE SAVAGEROAR RIP
        MANGLECAT RAKE SHRED FEROCIOUSBITE PULVERIZE MAUL)
 
AddIcon help=cd size=small mastery=2 { # TF Icon or Barkskin for Bear
   if Stance(3) {Spell(TIGERSFURY)}
   if Stance(1) {Spell(BARKSKIN)}
}
AddIcon help=cd size=small mastery=2 { # Berserk Icon
   if Stance(3) or Stance(1) {
      Spell(BERSERK)
   }
}
AddIcon help=main mastery=2 {
   if Stance(1) {  #bear
       if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 2) {
             Spell(FAERIEFERAL)
          }
           
       if 2s before Spell(MANGLEBEAR) {
           Spell(MANGLEBEAR)
        }
       
       if CheckBoxOn(demo) and TargetDebuffExpires(lowerphysicaldamage 2) {
           Spell(DEMOROAR)
        }

       unless TargetDebuffPresent(LACERATE stacks=1 mine=1) {
           Spell(LACERATE)
        }
       
       if CheckBoxOn(adds) and 0s before Spell(SWIPEBEAR) {   
           Spell(SWIPEBEAR)
        }   

       if TargetDebuffPresent(LACERATE stacks=3) unless  3s before Spell(MANGLEBEAR) {
           Spell(PULVERIZE)
        }

       if Mana(more 10) and TargetDebuffExpires(LACERATE 4 stacks=3) {
           Spell(LACERATE)
        }
   
       if Mana(more 15) {
           Spell(LACERATE)
        }
   
       if Mana(less 15) {
           Spell(FAERIEFERAL)
        }
    }

    if Stance(3) { # cat
        unless BuffPresent(BERSERK) or BuffPresent(CLEARCASTING) {
            if Mana(less 36) Spell(TIGERSFURY)
        }
   
        if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 1) and TargetDeadIn(more 15) {
            Spell(FAERIEFERAL)
        }
           
        if TargetDebuffExpires(bleed 1) and CheckBoxOn(mangle) {
            Spell(MANGLECAT)
        }
       
        # Ravage Code - this is the catch all
        if BuffPresent(STAMPEDE) and BuffExpires(STAMPEDE 3) {
           Spell(RAVAGE)
        }
       
        # Berserk Code - having trouble getting the Glyph to be recognized
        if CheckBoxOn(berserk) and Mana(more 69) and Mana(less 96) {
           if Glyph(GLYPHOFBERSERK) {
              unless 20s before Spell(TIGERSFURY) Spell(BERSERK)
           }
           unless Glyph(GLYPHOFBERSERK) {
              unless 15s before Spell(TIGERSFURY) Spell(BERSERK)
           }
        }
   
      # Two conditions for FB during Blood of the Water phase
      if ComboPoints(more 0) and TargetDebuffExpires(RIP 2 mine=1) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
         Spell(FEROCIOUSBITE)
      }     
        # Add in FB code for end of fight - only do this is Rip buff is present
        if ComboPoints(more 4) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
            Spell(FEROCIOUSBITE)
        }
       
        #Extends Rip with shred if glyph
        if Glyph(GLYPHOFSHRED) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) {
           Spell(SHRED)
        }

      # Burn combo points on FB if the target is about to die - on a boss fight this is redundant with BotW phase
      if ComboPoints(more 4) and TargetDeadIn(less 7) {
         Spell(FEROCIOUSBITE)
      }
      
        # Time to recast Rip - optional clip
      if ComboPoints(more 4) and TargetDeadIn(more 6) {
         if CheckBoxOn(clip) and TargetDebuffExpires(RIP 1.9 mine=1) Spell(RIP)
           if TargetDebuffExpires(RIP 0 mine=1) Spell(RIP)
       }
 
        # Cast FB is SR and Rip both have 8+ seconds left - with no restrictions on Berserk
        if ComboPoints(more 4) and TargetDebuffPresent(RIP 8 mine=1) and BuffPresent(SAVAGEROAR 8) {
           Spell(FEROCIOUSBITE)
        }
       
        # intentionally clip Rake to maximize uptime
        if TargetDebuffExpires(RAKE 2.9 mine=1) and TargetDeadIn(more 15) {
            Spell(RAKE)
        }
       
        # Savage Roar code - both when it is down and the desync code for Rip and Roar
        if ComboPoints(more 0) and BuffExpires(SAVAGEROAR 1) and TargetDebuffPresent(RIP 6 mine=1) {
           Spell(SAVAGEROAR)
        }
        if ComboPoints(more 2) and BuffExpires(SAVAGEROAR 6) and less than 6s between BuffExpires(SAVAGEROAR) and TargetDebuffExpires(RIP mine=1 forceduration=22) {
            unless TargetDebuffExpires(RIP 6 mine=1) Spell(SAVAGEROAR)
        }
        if BuffPresent(STAMPEDE) and BuffPresent(TIGERSFURY) {
           unless BuffPresent(CLEARCASTING) Spell(RAVAGE)
        }
       
        # Conditions for Shreding now that everything else is taken into account
        if Mana(more 69) Spell(SHRED)
        if BuffPresent(CLEARCASTING) or TargetDeadIn(less 10) or BuffPresent(BERSERK)
                Spell(SHRED)
        if ComboPoints(less 5) and TargetDebuffExpires(RIP 3 mine=1) Spell(SHRED)
        if ComboPoints(less 1) and BuffExpires(SAVAGEROAR 2) Spell(SHRED)
        if { 3s before Spell(TIGERSFURY) } Spell(SHRED)
    }
}

# Main Rotation (no filler shreds, otherwise copy of other rotation)
AddIcon help=main mastery=2
{
    if Stance(1) {
       if Mana (more 70) {
           Spell(MAUL )
        }
    }

   if Stance(3) { # cat
        unless BuffPresent(BERSERK) or BuffPresent(CLEARCASTING) {
            if Mana(less 36) Spell(TIGERSFURY)
        }
   
        if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 1) and TargetDeadIn(more 15) {
            Spell(FAERIEFERAL)
        }
           
        if TargetDebuffExpires(bleed 1) and CheckBoxOn(mangle) {
            Spell(MANGLECAT)
        }
       
        # Ravage Code - this is the catch all
        if BuffPresent(STAMPEDE) and BuffExpires(STAMPEDE 3) {
           Spell(RAVAGE)
        }
       
        # Berserk Code - having trouble getting the Glyph to be recognized
        if CheckBoxOn(berserk) and Mana(more 69) and Mana(less 96) {
           if Glyph(GLYPHOFBERSERK) {
              unless 20s before Spell(TIGERSFURY) Spell(BERSERK)
           }
           unless Glyph(GLYPHOFBERSERK) {
              unless 15s before Spell(TIGERSFURY) Spell(BERSERK)
           }
        }
   
      # Two conditions for FB during Blood of the Water phase
      if ComboPoints(more 0) and TargetDebuffExpires(RIP 2 mine=1) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
         Spell(FEROCIOUSBITE)
      }     
        # Add in FB code for end of fight - only do this is Rip buff is present
        if ComboPoints(more 4) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
            Spell(FEROCIOUSBITE)
        }
       
        #Extends Rip with shred if glyph
        if Glyph(GLYPHOFSHRED) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) {
           Spell(SHRED)
        }

      # Burn combo points on FB if the target is about to die - on a boss fight this is redundant with BotW phase
      if ComboPoints(more 4) and TargetDeadIn(less 7) {
         Spell(FEROCIOUSBITE)
      }
      
        # Time to recast Rip - optional clip
      if ComboPoints(more 4) and TargetDeadIn(more 6) {
         if CheckBoxOn(clip) and TargetDebuffExpires(RIP 1.9 mine=1) Spell(RIP)
           if TargetDebuffExpires(RIP 0 mine=1) Spell(RIP)
       }
 
        # Cast FB is SR and Rip both have 8+ seconds left - with no restrictions on Berserk
        if ComboPoints(more 4) and TargetDebuffPresent(RIP 8 mine=1) and BuffPresent(SAVAGEROAR 8) {
           Spell(FEROCIOUSBITE)
        }
       
        # intentionally clip Rake to maximize uptime
        if TargetDebuffExpires(RAKE 2.9 mine=1) and TargetDeadIn(more 15) {
            Spell(RAKE)
        }
       
        # Savage Roar code - both when it is down and the desync code for Rip and Roar
        if ComboPoints(more 0) and BuffExpires(SAVAGEROAR 1) and TargetDebuffPresent(RIP 6 mine=1) {
           Spell(SAVAGEROAR)
        }
        if ComboPoints(more 2) and BuffExpires(SAVAGEROAR 6) and less than 6s between BuffExpires(SAVAGEROAR) and TargetDebuffExpires(RIP mine=1 forceduration=22) {
            unless TargetDebuffExpires(RIP 6 mine=1) Spell(SAVAGEROAR)
        }
        if BuffPresent(STAMPEDE) and BuffPresent(TIGERSFURY) {
           unless BuffPresent(CLEARCASTING) Spell(RAVAGE)
        }
    }
}

AddIcon help=cd size=small mastery=2 { # Rake/Manglebear Icon
   if CheckBoxOn(cooldowns) {
      if Stance(3) {
         if TargetDebuffExpires(RIP 0 mine=1) Spell(RIP)
      }
      if Stance(1) {
         Spell(MANGLEBEAR)
      }
   }
}
AddIcon help=cd size=small mastery=2 { # Rip/Swipebear Icon
   if CheckBoxOn(cooldowns) {
      if Stance(3) {
         if TargetDebuffExpires(RAKE 0 mine=1) Spell(RAKE)
      }
      if Stance(1) {
         Spell(SWIPEBEAR)
      }
   }
}
AddIcon help=cd size=small mastery=2 { # Rake/Manglebear Icon
   if CheckBoxOn(cooldowns2) {
      if Stance(3) {
         if BuffExpires(SAVAGEROAR 0) Spell(SAVAGEROAR)
      }
   }
}
AddIcon help=cd size=small mastery=2 { # Rip/Swipebear Icon
   if CheckBoxOn(cooldowns2) {
      if Stance(3) {
         if TargetDebuffExpires(MANGLECAT 0 mine=1) Spell(MANGLECAT)
      }
   }
}
AddIcon help=cd
{
    if Stance(3) or Stance(1) {
        Item(Trinket0Slot usable=1)
    }
}AddIcon help=cd
{
    if Stance(3) or Stance(1) {
        Item(Trinket1Slot usable=1)
    }
}

Code: Select all
# Ovale Optimized Script Leafkiller 1.0.4
#       Bear code from tbot
# Started with the Ovale default druid script, this includes significant work from Alaron and goes back to the work of Fatalsaints
# Script source: http://fluiddruid.net/forum/viewtopic.php?f=3&t=33
# Ovale source: http://wow.curse.com/downloads/wow-addons/details/ovale.aspx
# Initial optimized version based on Sim work from Alaron with some modifications from Leafkiller
# Revision History (post 1.0)
# 1.0.4 - 10/19/2010
#   Change Berserk max energy to 96 (from 91)
#   Add to small boxes to the right for cat to show Rake and Rip cooldowns and mangle/swipe for bears
#   Change name for swipe switch to "Swipe on cooldown"
# 1.0.3 - 10/18/2010
#   Fix bad "{" I put in with the bear code
#   Fix Ripshred code that is now showing up with the new Ovale (it didn't show up before)
# 1.0.2 - 10/17/2010 - Included tbot's bear code
#   Moved Demo Roar higher in the script so it will actually be called
# 1.0.1 - Changes based on Sim results
#   FF refresh at 1 second (down from 2)
#   Rake clip set to 2.9 rather than 2 - this could be a dps increase per the simulator
#   Ravage code included - fires during TF or when 3 seconds left before Stampede falls off (to make sure we don't miss it)
#   Berserk code included

Define(BARKSKIN 22812)
Define(BERSERK 50334) #cat+bear cd buff
    SpellInfo(BERSERK cd=180)
Define(DEMOROAR 99) #bear
    SpellAddTargetDebuff(DEMOROAR DEMOROAR=30)
Define(ENRAGE 5229) #bear
Define(FAERIEFIRE 770) #moonkin
    SpellAddTargetDebuff(FAERIEFIRE FAERIEFIRE=300)
Define(FAERIEFERAL 16857) #bear+cat
    SpellAddTargetDebuff(FAERIEFERAL FAERIEFERAL=300)
Define(FEROCIOUSBITE 22568) #cat finish 35-70 mana
    SpellInfo(FEROCIOUSBITE combo=-5 mana=70)
Define(FRENZIEDREGENERATION 22842) #bear
Define(LACERATE 33745) #bear bleed*3
Define(MANGLECAT 33876) #cat bleed+debuff
    SpellInfo(MANGLECAT combo=1)
    SpellAddTargetDebuff(MANGLECAT MANGLECAT=12)
Define(MANGLEBEAR 33878) #bear bleed+debuff
Define(MAUL 6807) #bear
Define(PULVERIZE 80313) #bear after lacerate*3
Define(RAKE 1822) #cat bleed
    SpellInfo(RAKE combo=1)
    SpellAddTargetDebuff(RAKE RAKE=9)
Define(RAVAGE 6785) #cat behind+(prowling or stampede)
   SpellInfo(RAVAGE combo=1)
   SpellAddBuff(RAVAGE STAMPEDE=0)
Define(RIP 1079) #cat bleed
   SpellInfo(RIP combo=-5 duration=16 resetcounter=ripshreds)
    SpellInfo(RIP glyph=GLYPHOFSHRED addduration=6)
    SpellAddTargetDebuff(RIP RIP=16)
Define(SAVAGEROAR 52610) #cat damage buff
    SpellInfo(SAVAGEROAR combo=-5)
    SpellAddBuff(SAVAGEROAR SAVAGEROAR=14)
Define(SHRED 5221) #cat behind
    SpellInfo(SHRED combo=1 inccounter=ripshreds)
Define(SURVIVALINSTINCTS 61336) #cat+bear surv cd
Define(SWIPEBEAR 779) #bear aoe
    SpellInfo(SWIPEBEAR cd=6)
Define(SWIPECAT 62078) #cat aoe
Define(TRASH 77758) #bear aoe bleed
Define(TIGERSFURY 5217) #cat buff
    SpellInfo(TIGERSFURY cd=30)

#Glyphs
Define(GLYPHOFSHRED 54815)
Define(GLYPHOFRIP 54818)
Define(GLYPHOFBERSERK 62969)

#Buff
Define(CLEARCASTING 16870)
Define(STAMPEDE 81022)

AddCheckBox(adds "Swipe on Cooldown" default)
AddCheckBox(cooldowns "Show Cooldown Boxes" default)
AddCheckBox(lucioles SpellName(FAERIEFIRE) default)
AddCheckBox(mangle SpellName(MANGLECAT) default mastery=2)
AddCheckBox(demo SpellName(DEMOROAR) default mastery=2)
AddCheckBox(berserk SpellName(BERSERK) default mastery=2)

ScoreSpells(FAERIEFERAL DEMOROAR MANGLEBEAR LACERATE SAVAGEROAR RIP
        MANGLECAT RAKE SHRED FEROCIOUSBITE PULVERIZE MAUL)
 
AddIcon help=cd size=small mastery=2 { # TF Icon or Barkskin for Bear
   if Stance(3) {Spell(TIGERSFURY)}
   if Stance(1) {Spell(BARKSKIN)}
}
AddIcon help=cd size=small mastery=2 { # Berserk Icon
   if Stance(3) or Stance(1) {
      Spell(BERSERK)
   }
}
AddIcon help=main mastery=2 {
   if Stance(1) {  #bear
       if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 2) {
             Spell(FAERIEFERAL)
          }
           
       if 2s before Spell(MANGLEBEAR) {
           Spell(MANGLEBEAR)
        }
       
       if CheckBoxOn(demo) and TargetDebuffExpires(lowerphysicaldamage 2) {
           Spell(DEMOROAR)
        }

       unless TargetDebuffPresent(LACERATE stacks=1 mine=1) {
           Spell(LACERATE)
        }
       
       if CheckBoxOn(adds) and 0s before Spell(SWIPEBEAR) {   
           Spell(SWIPEBEAR)
        }   

       if TargetDebuffPresent(LACERATE stacks=3) unless  3s before Spell(MANGLEBEAR) {
           Spell(PULVERIZE)
        }

       if Mana(more 10) and TargetDebuffExpires(LACERATE 4 stacks=3) {
           Spell(LACERATE)
        }
   
       if Mana(more 15) {
           Spell(LACERATE)
        }
   
       if Mana(less 15) {
           Spell(FAERIEFERAL)
        }
    }

    if Stance(3) { # cat
        unless BuffPresent(BERSERK) or BuffPresent(CLEARCASTING) {
            if Mana(less 36) Spell(TIGERSFURY)
        }
   
        if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 1) and TargetDeadIn(more 15) {
            Spell(FAERIEFERAL)
        }
           
        if TargetDebuffExpires(bleed 1) and CheckBoxOn(mangle) {
            Spell(MANGLECAT)
        }
       
        # Ravage Code - this is the catch all
        if BuffPresent(STAMPEDE) and BuffExpires(STAMPEDE 3) {
           Spell(RAVAGE)
        }
       
        # Berserk Code - having trouble getting the Glyph to be recognized
        if CheckBoxOn(berserk) and Mana(more 69) and Mana(less 96) {
           if Glyph(GLYPHOFBERSERK) {
              unless 20s before Spell(TIGERSFURY) Spell(BERSERK)
           }
           unless Glyph(GLYPHOFBERSERK) {
              unless 15s before Spell(TIGERSFURY) Spell(BERSERK)
           }
        }
   
      # Two conditions for FB during Blood of the Water phase
      if ComboPoints(more 0) and TargetDebuffExpires(RIP 2 mine=1) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
         Spell(FEROCIOUSBITE)
      }     
        # Add in FB code for end of fight - only do this is Rip buff is present
        if ComboPoints(more 4) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
            Spell(FEROCIOUSBITE)
        }
       
        #Extends Rip with shred if glyph
        if Glyph(GLYPHOFSHRED) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) {
           Spell(SHRED)
        }

      # Burn combo points on FB if the target is about to die - on a boss fight this is redundant with BotW phase
      if ComboPoints(more 4) and TargetDeadIn(less 7) {
         Spell(FEROCIOUSBITE)
      }
      
        # Time to recast Rip - not clipping right now
      if ComboPoints(more 4) and TargetDeadIn(more 6) and TargetDebuffExpires(RIP 0 mine=1) {
           Spell(RIP)  # not checking for OOC is a 7dps loss in my sim - opting for an easier rotation
       }
 
        # Cast FB is SR and Rip both have 8+ seconds left - with no restrictions on Berserk
        if ComboPoints(more 4) and TargetDebuffPresent(RIP 8 mine=1) and BuffPresent(SAVAGEROAR 8) {
           Spell(FEROCIOUSBITE)
        }
       
        # intentionally clip Rake to maximize uptime
        if TargetDebuffExpires(RAKE 2.9 mine=1) and TargetDeadIn(more 15) {
            Spell(RAKE)
        }
       
        # Savage Roar code - both when it is down and the desync code for Rip and Roar
        if ComboPoints(more 0) and BuffExpires(SAVAGEROAR 1) and TargetDebuffPresent(RIP 6 mine=1) {
           Spell(SAVAGEROAR)
        }
        if ComboPoints(more 2) and BuffExpires(SAVAGEROAR 6) and less than 6s between BuffExpires(SAVAGEROAR) and TargetDebuffExpires(RIP mine=1 forceduration=22) {
            unless TargetDebuffExpires(RIP 6 mine=1) Spell(SAVAGEROAR)
        }
        if BuffPresent(STAMPEDE) and BuffPresent(TIGERSFURY) {
           unless BuffPresent(CLEARCASTING) Spell(RAVAGE)
        }
       
        # Conditions for Shreding now that everything else is taken into account
        if Mana(more 69) Spell(SHRED)
        if BuffPresent(CLEARCASTING) or TargetDeadIn(less 10) or BuffPresent(BERSERK)
                Spell(SHRED)
        if ComboPoints(less 5) and TargetDebuffExpires(RIP 3 mine=1) Spell(SHRED)
        if ComboPoints(less 1) and BuffExpires(SAVAGEROAR 2) Spell(SHRED)
        if { 3s before Spell(TIGERSFURY) } Spell(SHRED)
    }
}

# Main Rotation (no filler shreds, otherwise copy of other rotation)
AddIcon help=main mastery=2
{
    if Stance(1) {
       if Mana (more 70) {
           Spell(Maul)
        }
    }

   if Stance(3) { # cat
        unless BuffPresent(BERSERK) or BuffPresent(CLEARCASTING) {
            if Mana(less 36) Spell(TIGERSFURY)
        }
   
        if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 1) and TargetDeadIn(more 15) {
            Spell(FAERIEFERAL)
        }
           
        if TargetDebuffExpires(bleed 1) and CheckBoxOn(mangle) {
            Spell(MANGLECAT)
        }
       
        # Ravage Code - this is the catch all
        if BuffPresent(STAMPEDE) and BuffExpires(STAMPEDE 3) {
           Spell(RAVAGE)
        }
       
        # Berserk Code - having trouble getting the Glyph to be recognized
        if CheckBoxOn(berserk) and Mana(more 69) and Mana(less 96) {
           if Glyph(GLYPHOFBERSERK) {
              unless 20s before Spell(TIGERSFURY) Spell(BERSERK)
           }
           unless Glyph(GLYPHOFBERSERK) {
              unless 15s before Spell(TIGERSFURY) Spell(BERSERK)
           }
        }
   
      # Two conditions for FB during Blood of the Water phase
      if ComboPoints(more 4) and TargetDeadIn(more 6) and TargetDebuffExpires(RIP 1.9 mine=1) {
         Spell(FEROCIOUSBITE)
      }     
        # Add in FB code for end of fight - only do this is Rip buff is present
        if ComboPoints(more 4) and TargetLifePercent(less 25) and TargetDebuffPresent(RIP mine=1) {
            Spell(FEROCIOUSBITE)
        }

      # Burn combo points on FB if the target is about to die - on a boss fight this is redundant with BotW phase
      if ComboPoints(more 4) and TargetDeadIn(less 7) {
         Spell(FEROCIOUSBITE)
      }
      
        # Time to recast Rip - not clipping right now
      if ComboPoints(more 4) and TargetDeadIn(more 6) and TargetDebuffExpires(RIP 0 mine=1) {
           Spell(RIP)  # not checking for OOC is a 7dps loss in my sim - opting for an easier rotation
       }
       
        # Cast FB is SR and Rip both have 8+ seconds left - with no restrictions on Berserk
        if ComboPoints(more 4) and TargetDebuffPresent(RIP 8 mine=1) and BuffPresent(SAVAGEROAR 8) {
           Spell(FEROCIOUSBITE)
        }
       
        # intentionally clip Rake to maximize uptime
        if TargetDebuffExpires(RAKE 2.9 mine=1) and TargetDeadIn(more 15) {
            Spell(RAKE)
        }
       
        # Savage Roar code - both when it is down and the desync code for Rip and Roar
        if ComboPoints(more 0) and BuffExpires(SAVAGEROAR 1) and TargetDebuffPresent(RIP 6 mine=1) {
           Spell(SAVAGEROAR)
        }
        if ComboPoints(more 2) and BuffExpires(SAVAGEROAR 6) and less than 6s between BuffExpires(SAVAGEROAR) and TargetDebuffExpires(RIP mine=1 forceduration=22) {
            unless TargetDebuffExpires(RIP 6 mine=1) Spell(SAVAGEROAR)
        }
        if BuffPresent(STAMPEDE) and BuffPresent(TIGERSFURY) {
           unless BuffPresent(CLEARCASTING) Spell(RAVAGE)
        }
    }
}

AddIcon help=cd size=small mastery=2 { # Rake/Manglebear Icon
   if CheckBoxOn(cooldowns) {
      if Stance(3) {
         if TargetDebuffExpires(RAKE 0 mine=1) Spell(RAKE)
      }
      if Stance(1) {
         Spell(MANGLEBEAR)
      }
   }
}
AddIcon help=cd size=small mastery=2 { # Rip/Swipebear Icon
   if CheckBoxOn(cooldowns) {
      if Stance(3) {
         if TargetDebuffExpires(RIP 0 mine=1) Spell(RIP)
      }
      if Stance(1) {
         Spell(SWIPEBEAR)
      }
   }
}
AddIcon help=cd
{
    if Stance(3) or Stance(1) {
        Item(Trinket0Slot usable=1)
    }
}AddIcon help=cd
{
    if Stance(3) or Stance(1) {
        Item(Trinket1Slot usable=1)
    }
}
Last edited by Leafkiller on Wed Oct 20, 2010 1:50 am, edited 6 times in total.

Posts: 43
Joined: Thu Oct 14, 2010 1:48 am

Re: New Feral DPS Ovale Script

Postby Evil » Sat Oct 16, 2010 5:15 am

Leafkiller - another great quality. With the new one I get now 300-400dps more output. I'm sure in some days we have a great running script as usual. Thanks for all your efforts!!!
I'll always keep you informed about my script results.

Greets

Evil

Posts: 5
Joined: Fri Oct 15, 2010 2:32 am

Re: New Feral DPS Ovale Script

Postby Cav » Sat Oct 16, 2010 3:19 pm

WTS Leafkiller a version or revision number system! :)

I saw similar results 400dps or so, I still cringe when I apply a rip and the next move is TF :)

Great work, thanks.

Site Admin
User avatar
Posts: 292
Joined: Tue Mar 16, 2010 3:05 pm

Re: New Feral DPS Ovale Script

Postby Alaron » Sat Oct 16, 2010 4:36 pm

Leaf,

I noticed in the latest Ovale changelog that Sidoine had updated the default script to add Ravage/Stampede support, so you might want to take a look there. I've started working on redoing my version of the script, but Ovale's API is so poorly documented it's frustrating. I'd like to finish my branch, then we can compare notes between the two and determine where to go from there.

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Sat Oct 16, 2010 5:06 pm

Alaron wrote:but Ovale's API is so poorly documented it's frustrating.


So I wasn't the only one :) I noticed leaf is using stuff thats not even in the API. What the heck does "mastery" do for icons?

Also, the SwipeCD and the grey'd out mangle's in cat were a bug in the lue code that was fixed with the most recent release.

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Sat Oct 16, 2010 5:33 pm

Alaron wrote:Leaf,

I noticed in the latest Ovale changelog that Sidoine had updated the default script to add Ravage/Stampede support, so you might want to take a look there. I've started working on redoing my version of the script, but Ovale's API is so poorly documented it's frustrating. I'd like to finish my branch, then we can compare notes between the two and determine where to go from there.


I pulled code from that branch but still had issues. I will recheck today - it was so late I just commented it out last night.

I do want to get to a point where we have one script.

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Sat Oct 16, 2010 5:42 pm

tbot wrote:Thanks for replying so quickly. I feel like that solution for swipe should work... But it doesn't. Swipe gets pressed and then it is forever swipe afterwards in the box.

For the mangle bit. Mangle has a 6 second cd, If i press 3 buttons in quick succession after mangle, mangle will be off its cd at the same time as the next global.
I want it to show up with the global CD in the main box at that time. Currently it waits untill the last milisecond before its off cd and then shows up.


If Mangle is not showing up in the main icon it is because Ovale thinks something else is ready to be cast at that moment. It may be an issue with Ovale itself that it is not recognizing Swipe has a cooldown. I have not looked through the Ovale code so I don't really know. I recommend that as a starting place you grab the latest greatest version from here: http://wow.curseforge.com/addons/ovale/files/

There are a lot of fixes going in right now so your issue may already have been fixed.

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Sat Oct 16, 2010 6:00 pm

Leafkiller wrote:If Mangle is not showing up in the main icon it is because Ovale thinks something else is ready to be cast at that moment. It may be an issue with Ovale itself that it is not recognizing Swipe has a cooldown. I have not looked through the Ovale code so I don't really know. I recommend that as a starting place you grab the latest greatest version from here: http://wow.curseforge.com/addons/ovale/files/

There are a lot of fixes going in right now so your issue may already have been fixed.


Ya, the author over there is pretty quick, I posted on the forums about the issue of cat/bear abilities after 4.0 and the likely cause at like 6am and its already been fixed. Your non-glowing mangle should be fixed now too.

My issue isn't that mangle doesn't show up, its that it doesn't show up as soon as I'd like it too. I'd like to be able to show it while it is still technically on CD. I've switched to using 2 buttons now for it though, with the second warning me that mangle is about to come up. Bear funtionality is pretty much finished at this point.

What the heck does mastery do in addicon? can't find anything on it.

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Sun Oct 17, 2010 12:41 am

New version (1.0.1) of the optimized script posted: viewtopic.php?p=427#p427

The changes are:

# FF refresh at 1 second (down from 2)
# Rake clip set to 2.9 rather than 2 - this could be a dps increase per the simulator
# Ravage code included - fires during TF or when 3 seconds left before Stampede falls off (to make sure we don't miss it)
# Berserk code included - I am not sure if the Glyph check code is correct but it is suggesting Berserk right after TF

@tbot - when you feel the bear code is ready, let me know and I will add it to the script.

Posts: 5
Joined: Fri Oct 15, 2010 2:32 am

Re: New Feral DPS Ovale Script

Postby Cav » Sun Oct 17, 2010 3:21 am

I see that version number :)

I am to lazy to look, but since you mentioned glyphs is the script or ovale smart enough to know which glyphs are equipped or is that a check box setting?

Thanks again.

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Sun Oct 17, 2010 3:50 am

It automatically detects glyph of shred and glyph of berserk.

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Sun Oct 17, 2010 8:24 am

* Bear Logic. It functions how I intend it too (minus mangle not showing up when its still on cd). The priority will provid strong tps results and a high uptime of debuffs and pulverise buff.

Defines with the defines, checkboxes with the checkboxes yadda yadda

Code: Select all
Define(SWIPEBEAR 779) #bear aoe
    SpellInfo(SWIPEBEAR cd=6)


AddCheckBox(adds L(SwipeSingleTargets))



if Stance(1) # bear
    {
    if CheckBoxOn(lucioles) and TargetDebuffExpires(lowerarmor 2)
        Spell(FAERIEFERAL)
           
    if {2s before Spell(MANGLEBEAR)}
        Spell(MANGLEBEAR)

    unless  TargetDebuffPresent(LACERATE stacks=1 mine=1)
        Spell(LACERATE)
       
    if CheckBoxOn(adds) and {0s before Spell(SWIPEBEAR)}   
        Spell(SWIPEBEAR)   

    if TargetDebuffPresent(LACERATE stacks=3) unless  {3s before Spell(MANGLEBEAR)}
        Spell(PULVERIZE)

    if Mana(more 10) and TargetDebuffExpires(LACERATE 4 stacks=3)
        Spell(LACERATE)

    if CheckBoxOn(demo) and TargetDebuffExpires(lowerphysicaldamage 2)
        Spell(DEMOROAR)
   
    if Mana(more 15)
        Spell(LACERATE)
   
    if Mana(less 15)
        Spell(FAERIEFERAL)
    }


#I added this in the second window to notify for maul but i'll leave it up to you if you want to put it in

if Stance(1)
    {
    if Mana (more 70)
        Spell(Maul)
    }

It works best with nocd=1 in the addicon

Honored
Posts: 80
Joined: Wed Jun 09, 2010 12:22 pm

Re: New Feral DPS Ovale Script

Postby Mihir » Sun Oct 17, 2010 11:48 am

I spent some time on making a new cat ovale script for 4.0 as well, looks like it pretty much ended up the same as your script, except that I split up the shreds to the sidebox.

I'm still trying to maximize energy used by FB if there's room for it before Rip, but it seems a bit tricky to script.

The script:
Code: Select all
#Project: Visualising the optimal cat rotation ingame
#Script Version: 3.0
Define(FFF 16857)
    SpellAddTargetDebuff(FFF FFDEBUFF=300)
Define(FF 770)
    SpellAddTargetDebuff(FF FFDEBUFF=300)
Define(FFDEBUFF 91565)
Define(RIP 1079)
    SpellInfo(RIP combo=-5 duration=16)
    SpellInfo(RIP glyph=GLYPHOFSHRED addduration=6)
    SpellAddTargetDebuff(RIP RIP=16)
Define(MANGLE 33876)
    SpellInfo(MANGLE combo=1)
    SpellAddTargetDebuff(MANGLE MANGLE=60)
Define(SHRED 5221)
    SpellInfo(SHRED combo=1)
Define(TIGER 5217)
    SpellInfo(TIGER cd=30)
    SpellInfo(TIGER glyph=GLYPHOFTIGER addcd=-3)
    SpellAddBuff(TIGER TIGER=6)
Define(RAKE 1822)
    SpellInfo(RAKE duration=15)
    SpellAddTargetDebuff(RAKE RAKE=15)
Define(ROAR 52610)
    SpellInfo(ROAR combo=-5)
    SpellAddBuff(ROAR ROAR=22)
Define(BITE 22568)
    SpellInfo(BITE combo=-5 mana=70)
Define(BERSERK 50334)
    SpellInfo(BERSERK duration=15 cd=180)
Define(OMEN 16870)
    SpellInfo(OMEN duration=8)
Define(TRAUMA 46857)
    SpellInfo(TRAUMA duration=60)
Define(MANGLEB 33878)
    SpellInfo(MANGLEB duration=60)
Define(HEMO 16511)
    SpellInfo(HEMO duration=60)
Define(TENDON 50271)
    SpellInfo(TENDON duration=15)
Define(STAMPEDE 81022)
    SpellInfo(STAMPEDE duration=10)
Define(RAVAGE 6785)
    SpellInfo(RAVAGE combo=1)
Define(CHARGE 49376)
    SpellInfo(CHARGE cd=30)
    SpellInfo(CHARGE glyph=GLYPHOFCHARGE addcd=-2)
    SpellAddBuff(CHARGE STAMPEDE=10)

Define(GLYPHOFSHRED 54815)
Define(GLYPHOFTIGER 94390)
Define(GLYPHOFCHARGE 94388)

SpellInfo(RIP resetcounter=ripshreds)
SpellInfo(SHRED inccounter=ripshreds)
AddCheckBox(Manglebot "Manglebot" default)

AddIcon help=main
{
if Stance(3) # cat
    {
    #if TargetInRange(CHARGE yes) Spell(CHARGE)
    if Mana(less 31) Spell(TIGER)
    if CheckBoxOn(Manglebot) and TargetDebuffExpires (MANGLE 1) Spell(MANGLE)
    unless {TargetDebuffPresent(MANGLE) or TargetDebuffPresent(MANGLEB) or TargetDebuffPresent(TENDON) or TargetDebuffPresent(TRAUMA) or TargetDebuffPresent(HEMO)} Spell(MANGLE)
    if BuffPresent(STAMPEDE) and BuffExpires(STAMPEDE 1) Spell(RAVAGE)
    if TargetLifePercent(less 25) and ComboPoints(more 0) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 2 mine=1) Spell(BITE)
    if TargetLifePercent(less 25) and ComboPoints(more 4) and TargetDebuffPresent(RIP mine=1) and Mana(more 70) Spell(BITE)
#    if TargetLifePercent(less 25) and ComboPoints(more 4) and TargetDebuffPresent(RIP mine=1) Spell(BITE)
    if BuffPresent(OMEN) Spell(Shred)

    if BuffPresent(STAMPEDE) and Mana(less 53) unless BuffPresent(TIGER) Spell(SHRED)

    if ComboPoints(more 4) and TargetDeadIn(more 6) and TargetDebuffExpires(RIP 1 mine=1) unless BuffPresent(OMEN) unless 1.9s before Spell(TIGER) Spell(RIP)

    if TargetDeadIn(more 15) and TargetDebuffExpires(RAKE 3 mine=1) unless 2.9s before Spell(TIGER) Spell(RAKE)

    if ComboPoints(more 0) and BuffExpires(ROAR 0) Spell(ROAR)
    if ComboPoints(more 4) and TargetDeadIn(more 9) and TargetDebuffExpires(RIP 12 mine=1) and at most 3s from TargetDebuffExpires(RIP mine=1) until BuffExpires(ROAR) Spell(ROAR)

    if ComboPoints(more 4) and TargetDeadIn(less 4) Spell(BITE)
    if ComboPoints(more 3) and TargetDeadIn(less 1) Spell(BITE)

    if ComboPoints(more 4) unless TargetDebuffExpires(RIP 8 mine=1) or BuffExpires(ROAR 8) Spell(BITE)
    if ComboPoints(more 4) and Mana(more 53) unless TargetDebuffExpires(RIP 9 mine=1) or BuffExpires(ROAR 9) Spell(BITE)
    if ComboPoints(more 4) and Mana(more 70) unless TargetDebuffExpires(RIP 10 mine=1) or BuffExpires(ROAR 10) Spell(BITE)

    if TargetLifePercent(more 25) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) Spell(SHRED)

    if BuffPresent(STAMPEDE) and BuffPresent(TIGER) unless BuffPresent(OMEN) Spell(RAVAGE)

#    if ComboPoints(less 5) or {TargetDebuffPresent(RIP 1 mine=1) and TargetDebuffPresent(RAKE 1 mine=1)}
#    {
#        if Mana(more 70) or {BuffPresent(BERSERK) and Mana(more 35)} or 3s before Spell(TIGER) Spell(SHRED)
#    }

    if TargetDeadIn(less 15) Spell(SHRED)

#    if ComboPoints(less 1) and {BuffExpires(ROAR 2) or TargetDebuffExpires(RAKE 2 mine=1)} Spell(SHRED)


    unless TargetDebuffPresent(RIP mine=1) Spell(SHRED)
    }
}

AddIcon help=main size=small nocd=3
{
if Stance(3) # cat
    {
        {
            if {TargetDebuffPresent(MANGLE 0.6) or TargetDebuffPresent(TENDON 0.6) or TargetDebuffPresent(MANGLEB 0.6) or TargetDebuffPresent(TRAUMA 0.6)} and { Mana(more 82) or {{ComboPoints(less 5) or {TargetDebuffPresent(RIP 0.6 mine=1) and TargetDebuffPresent(RAKE 0.6 mine=1)}} and {if Mana(more 70) or {BuffPresent(BERSERK) and Mana(more 35)} or 3s before Spell(TIGER) Spell(SHRED)}} or {ComboPoints(less 1) and {BuffExpires(ROAR 2) or TargetDebuffExpires(RAKE 2 mine=1)}}} Spell(SHRED)
        }
    unless {BuffPresent(BERSERK) or 4s before Spell(TIGER) or Mana(more 32)}
        {
            unless TargetDebuffPresent(FFDEBUFF stacks=3) Spell(FFF priority=2)
        }
    }
}

AddIcon help=cd size=small nocd=3
{
if Stance(3) # cat
    {
        Spell(TIGER)
    }
}

AddIcon help=cd size=small nocd=5
{
if Stance(3) # cat
    {
        unless 15s before Spell(TIGER) Spell(BERSERK)
    }
}

Posts: 2
Joined: Sun Oct 17, 2010 10:40 pm

Re: New Feral DPS Ovale Script

Postby Nuglett » Sun Oct 17, 2010 10:47 pm

OMG i <3 u

That looks exactly like the pre-4.0 ovale i was using and lol the new one had me all messed up.

first time poster, long time ovale user. To anyone and Everyone who has worked or is working on this mod, outstanding work.

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Mon Oct 18, 2010 1:16 am

Thanks Mirhir - I know there are some people who liked how Furion structured his cat script. I personally prefer the structure that I posted, so people can choose what structure they prefer now.

I just posted version 1.0.2 of my script into which I merged tbot's Bear code. There are no cat changes in this version of the script.

Posts: 2
Joined: Sun Oct 17, 2010 10:40 pm

Re: New Feral DPS Ovale Script

Postby Nuglett » Mon Oct 18, 2010 3:10 am

@ Mihir

I know you are working on this as fast and hard as you can. Is there any way to get the bear portion of the script into your script? I am honest enough to say that code is way over my head and I cant even attempt to know where I would insert Tbots portion for the bear.

I was looking through that code and was wondering if someone could explain a small portion of it to me.

if TargetLifePercent(less 25) and ComboPoints(more 4) and TargetDebuffPresent(RIP mine=1) and Mana(more 70) Spell(BITE)
# if TargetLifePercent(less 25) and ComboPoints(more 4) and TargetDebuffPresent(RIP mine=1) Spell(BITE)

why was the 2nd line pounded? ie why would u put that prereq in there that your energy would need to be over 70 to bite? I do understand that is the 35 for the FB and the 35 for the extra energy. I just dont get why you would not just use the pounded line instead.


Edit: NM figured it out. You have the line before that as

if TargetLifePercent(less 25) and ComboPoints(more 0) and TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 2 mine=1) Spell(BITE)

so that makes sure it doesn't fall off. you should just wait to get off the FB until you will recieve full benefit.

Honored
Posts: 80
Joined: Wed Jun 09, 2010 12:22 pm

Re: New Feral DPS Ovale Script

Postby Mihir » Mon Oct 18, 2010 4:11 am

Ofcourse. But i'm trying to get ovale to suggest to wait with FB till you got 70 energy (if there's enough time on rip left) as well :P

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Mon Oct 18, 2010 4:33 am

Hey leaf, One thing about the checkbox. The intended functionality was whether or not to save it during a boss fight. It is a tps loss to not use swipe on single target currently. The check box on suggests it should be used every cd. Off suggests saving it for a specific time.

Posts: 1
Joined: Mon Oct 18, 2010 5:51 am

Re: New Feral DPS Ovale Script

Postby dangycat » Mon Oct 18, 2010 5:57 am

Hi there leaf, just to tell you that the script is broken now *the cat part of it* due to the bear code and there is a ghost box showing up where the cat main rotation is supposed to show up as well and the cool downs box is now the rotations box. Can you please fix it? There are other problems as well you will notice if you dps for a bit.

If by any chance, would it be possible to save the old revisions somewhere? Just so, we can go back to it if the new one is bugged. Did not expect this to happen, as I do not keep backups myself.

Posts: 26
Joined: Fri Oct 15, 2010 11:10 pm

Re: New Feral DPS Ovale Script

Postby tbot » Mon Oct 18, 2010 6:08 am

How very strange. There is no reason for the 2 peices to have that sort of interaction (there always was a bear section it's just been changed)

I know leaf did some reformatting to keep code looking consistent, so mayby a brace got misplaced.

Posts: 2
Joined: Mon Oct 18, 2010 6:06 am

Re: New Feral DPS Ovale Script

Postby sennah » Mon Oct 18, 2010 6:11 am

..testing...

check the comments in the script youll find the mistakes :)

Posts: 13
Joined: Thu Apr 08, 2010 7:39 am

Re: New Feral DPS Ovale Script

Postby Willféral » Mon Oct 18, 2010 6:34 am

Nuglett wrote:OMG i <3 u

That looks exactly like the pre-4.0 ovale i was using and lol the new one had me all messed up.

first time poster, long time ovale user. To anyone and Everyone who has worked or is working on this mod, outstanding work.

My thoughts exactly. You are amazing and I think I want to have your children :) kudos!

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Mon Oct 18, 2010 6:45 am

dangycat wrote:Hi there leaf, just to tell you that the script is broken now *the cat part of it* due to the bear code and there is a ghost box showing up where the cat main rotation is supposed to show up as well and the cool downs box is now the rotations box. Can you please fix it? There are other problems as well you will notice if you dps for a bit.

If by any chance, would it be possible to save the old revisions somewhere? Just so, we can go back to it if the new one is bugged. Did not expect this to happen, as I do not keep backups myself.


Bad "{" - I moved it up and put a comment in front of it. I tested the bear stuff very carefully, even after the reformatting - and obviously did not retest the cat stuff after...

1.0.3 posted btw. I also did some cleanup on the Ripshred code. With the 4.09 version of Ovale I saw some new behavior - I think something was fixed with that Ovale that pointed out my code was wrong (I based that part on the default script which was changed in the last day...).

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

Re: New Feral DPS Ovale Script

Postby Leafkiller » Mon Oct 18, 2010 7:01 am

tbot wrote:Hey leaf, One thing about the checkbox. The intended functionality was whether or not to save it during a boss fight. It is a tps loss to not use swipe on single target currently. The check box on suggests it should be used every cd. Off suggests saving it for a specific time.


When I put in the line "AddCheckBox(adds L(SwipeSingleTargets))" Ovale gave me an error as you did not define "SwipeSingleTargets" anywhere in your script. I defaulted back to the existing checkbox code I had to make it work.

Do you want the checkbox to be labeled differently or is these some missing code from what you posted?

PreviousNext

Return to Kitty DPS

Who is online

Users browsing this forum: Polariss and 13 guests