aggixx

Untitled

Aug 31st, 2012
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.66 KB | None | 0 0
  1. # Ovale Optimized Script Leafkiller 5.4
  2. # Ovale source: http://wow.curse.com/downloads/wow-addons/details/ovale.aspx
  3. # Cat Rotation based on Simulationcraft single target default script. Contributions to that have come from many ferals.
  4. # Revision History
  5. # 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
  6. # 5.4.6 08/29/2012 Add Savage Roar desync code
  7. # 5.4.5 08/29/2012 Remove cower, incorporate Tinderhoof's bear rotation.
  8. # 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.
  9. # Add opportunistic FF after fillers.
  10. # 5.4.3 08/28/2012 Misc small changes to make it more robust per discussion with Tinderhoof
  11. # 5.4.2 08/28/2012 Rudimentary Bear stuff - I need someway to track Mangle...
  12. # 5.4.1 08/27/2012 First version for patch 5.4 - leaving out Guardian and Feral/Bear for the moment
  13. # Assume Glyph of Rake and Glyph of Shred
  14. # TargetDeadIn seems to be having issues - so removing the calls for now. Won't affect most combat
  15.  
  16. Define(BERSERK 106951) #cat+bear cd buff
  17. Define(FAERIEFERAL 770) #bear+cat
  18. Define(FEROCIOUSBITE 22568) #cat finish 35-70 mana
  19. Define(MAIM 22570) #cat interrupt
  20. Define(MANGLECAT 33876) #cat bleed+debuff
  21. SpellInfo(MANGLECAT inccounter=ripshreds)
  22. Define(RAKE 1822) #cat bleed
  23. Define(RIP 1079) #cat bleed
  24. SpellInfo(RIP resetcounter=ripshreds)
  25. Define(SAVAGEROAR 127538) #cat damage buff
  26. Define(SHRED 5221) #cat behind
  27. SpellInfo(SHRED inccounter=ripshreds)
  28. Define(SKULLBASHCAT 80965) #cat interrupt
  29. Define(TIGERSFURY 5217) #cat buff
  30.  
  31. Define(BERSERKBEAR 106952) #cat+bear cd buff
  32. SpellInfo(BERSERKBEAR duration=10 cd=180 )
  33. SpellAddBuff(BERSERKBEAR BERSERKBEAR=1)
  34. Define(MANGLEBEAR 33878)
  35. Define(LACERATE 33745)
  36. Define(FRENZIEDREGEN 22842)
  37. Define(INCARNATIONBEAR 102558)
  38. Define(MAUL 6807)
  39. Define(MIGHTOFURSOC 106922)
  40. Define(RENEWAL 108238)
  41. Define(NATURESSWIFTNESS 132158)
  42. Define(CENARIONWARD 102351)
  43. Define(FORCEOFNATURE 106737)
  44. Define(SAVAGEDEFENSE 62606)
  45. Define(SURVIVALINSTINCTS 61336)
  46. Define(SWIPEBEAR 779)
  47. Define(THRASHBEAR 77758)
  48. Define(BARKSKIN 22812)
  49. Define(ENRAGE 5229)
  50.  
  51. Define(cat_form 768)
  52. SpellAddBuff(cat_form cat_form=1)
  53. Define(mark_of_the_wild 1126)
  54. SpellInfo(mark_of_the_wild duration=3600 )
  55. SpellAddBuff(mark_of_the_wild mark_of_the_wild=1)
  56. Define(ravage 6785)
  57. SpellInfo(ravage energy=45 combo=1 )
  58. SpellInfo(ravage inccounter=ripshreds)
  59. Define(incarnation 102543)
  60. SpellInfo(incarnation duration=30 cd=180 )
  61. Define(treants 106737)
  62. SpellInfo(treants duration=15 cd=60 )
  63. Define(weakened_armor 113746)
  64. SpellInfo(weakened_armor duration=30 )
  65. SpellAddBuff(weakened_armor weakened_armor=1)
  66. Define(weakened_blows 115798)
  67. SpellInfo(weakened_blows duration=30 )
  68. SpellAddBuff(weakened_blows weakened_blows=1)
  69. Define(dream_of_cenarius_talent 17)
  70. Define(force_of_nature_talent 12)
  71. Define(incarnation_talent 11)
  72. Define(natures_swiftness_talent 4)
  73. Define(renewal_talent 5)
  74. Define(cenarion_ward_talent 6)
  75. Define(natures_vigil_talent 18)
  76.  
  77. #Buff
  78. Define(CLEARCASTING 16870)
  79.  
  80. AddCheckBox(berserk "Cat Berserk" default mastery=2)
  81. AddCheckBox(cooldownsL "Show Left Rotation Boxes" default mastery=2)
  82. AddCheckBox(cooldownsR "Show Right Cooldown Boxes" default mastery=2)
  83. AddCheckBox(lucioles SpellName(FAERIEFERAL) default mastery=2)
  84. AddCheckBox(shred "Use Shred for fillers" default mastery=2)
  85.  
  86.  
  87.  
  88. AddIcon help=cd size=small mastery=3 {
  89. Spell(BARKSKIN)
  90. }
  91.  
  92. AddIcon help=cd size=small mastery=3 {
  93. if TalentPoints(natures_swiftness_talent) Spell(NATURESSWIFTNESS)
  94. if TalentPoints(renewal_talent) Spell(RENEWAL)
  95. if TalentPoints(cenarion_ward_talent) Spell(CENARIONWARD)
  96. }
  97.  
  98. # Main rotation
  99. AddIcon help=main mastery=3 {
  100. if 1s before Spell(MANGLEBEAR) Spell(MANGLEBEAR)
  101.  
  102. if not TargetDebuffPresent(weakened_blows) Spell(THRASHBEAR)
  103. if target.DebuffStacks(weakened_armor) <1 Spell(FAERIEFERAL)
  104. if TargetDebuffPresent(THRASHBEAR) <4 Spell(THRASHBEAR)
  105.  
  106. Spell(LACERATE)
  107. Spell(FAERIEFERAL)
  108. }
  109.  
  110. AddIcon help=defense mastery=3 {
  111. if Rage(less 11) Spell(ENRAGE useable=1)
  112. Spell(SAVAGEDEFENSE usable=1)
  113. Spell(FRENZIEDREGEN)
  114. }
  115.  
  116. AddIcon help=cd size=small mastery=3 {
  117. Spell(SURVIVALINSTINCTS)
  118. }
  119.  
  120. AddIcon help=cd size=small mastery=3 {
  121. Spell(MIGHTOFURSOC)
  122. }
  123.  
  124. AddIcon help=cd size=small mastery=3 {
  125. if TalentPoints(incarnation_talent) Spell(INCARNATIONBEAR)
  126. if TalentPoints(force_of_nature_talent) Spell(FORCEOFNATURE)
  127. }
  128.  
  129. AddIcon help=cd size=small mastery=3 {
  130. Spell(BERSERKBEAR)
  131. }
  132.  
  133. AddFunction AddCombo
  134. {
  135. if TalentPoints(incarnation_talent) Spell(ravage usable=1)
  136. if BuffPresent(TIGERSFURY) or BuffPresent(BERSERK) or CheckBoxOn(shred) Spell(SHRED)
  137. Spell(MANGLECAT)
  138. }
  139. 4
  140. AddFunction BITWRange
  141. {
  142. {ArmorSetParts(T13 more 1) and TargetLifePercent(less 60)} or TargetLifePercent(less 25)
  143. }
  144.  
  145. # Main rotation
  146. AddIcon help=main mastery=2 {
  147. # Savage Roar
  148. if BuffRemains(SAVAGEROAR) <=1 or {ComboPoints(more 0) and BuffExpires(SAVAGEROAR 3)} {
  149. Spell(SAVAGEROAR)
  150. }
  151.  
  152. # TF + Berserk logic - only show Berserk if both are off of cooldown - everyone should macro TF to their Berserk key
  153. if not {BuffPresent(BERSERK) or BuffPresent(CLEARCASTING)} {
  154. if ArmorSetParts(T13 more 3) {
  155. if Energy(less 26) and {0s before Spell(TIGERSFURY)} {
  156. if CheckBoxOn(berserk) Spell(BERSERK)
  157. Spell(TIGERSFURY)
  158. }
  159. }
  160. if not ArmorSetParts(T13 more 3) {
  161. if Energy(less 36) and {0s before Spell(TIGERSFURY)} {
  162. if CheckBoxOn(berserk) Spell(BERSERK)
  163. Spell(TIGERSFURY)
  164. }
  165. }
  166. }
  167.  
  168. #In case Berserk was not cast with TF
  169. if BuffPresent(TIGERSFURY) and CheckBoxOn(berserk) {
  170. Spell(BERSERK)
  171. }
  172.  
  173. if not TargetInRange(SHRED) {
  174. Texture(ability_druid_catformattack)
  175. }
  176.  
  177. if CheckBoxOn(lucioles) and target.DebuffStacks(weakened_armor) <1 {
  178. Spell(FAERIEFERAL)
  179. }
  180.  
  181. # Two conditions for FB during Blood of the Water phase
  182. # Add in FB code for end of fight - only do this is Rip buff is present
  183. if BITWRange() and TargetDebuffPresent(RIP mine=1) {
  184. if ComboPoints(more 4) Spell(FEROCIOUSBITE)
  185. if ComboPoints(more 0) and TargetDebuffExpires(RIP 2.9 mine=1) Spell(FEROCIOUSBITE)
  186. }
  187. #Extends Rip with shred/mangle/ravage
  188. if TargetDebuffPresent(RIP mine=1) and TargetDebuffExpires(RIP 4 mine=1) and Counter(ripshreds less 3) AddCombo()
  189.  
  190. # Time to recast Rip - clip if possible - try to hold off for TF
  191. if ComboPoints() >=5 and TargetDebuffExpires(RIP 2 mine=1) and {BuffPresent(BERSERK) or target.DebuffRemains(RIP mine=1)+1.9 <=SpellCooldown(TIGERSFURY) }
  192. Spell(RIP)
  193.  
  194. if ComboPoints() >=5 and target.DebuffRemains(RIP mine=1) <=12 and BuffRemains(SAVAGEROAR) <={target.DebuffRemains(RIP) +4 }
  195. Spell(SAVAGEROAR)
  196.  
  197. # FBs during Berserk
  198. if BuffPresent(BERSERK) {
  199. if ComboPoints(more 4) and Energy(more 12) and TargetDebuffPresent(RIP 5 mine=1) and BuffPresent(SAVAGEROAR 3) {
  200. Spell(FEROCIOUSBITE)
  201. }
  202. }
  203.  
  204. # clip Rake early if TF is up and rake ramining is less than 9 seconds
  205. if TargetDebuffExpires(RAKE 8.9 mine=1) and BuffPresent(TIGERSFURY) {
  206. Spell(RAKE)
  207. }
  208.  
  209. # intentionally clip Rake to maximize uptime
  210. if TargetDebuffExpires(RAKE 2.9 mine=1) and {BuffPresent(BERSERK) or Energy(more 60) or {SpellCooldown(tigers_fury) +0.8 } >=target.DebuffRemains(RAKE mine=1)}
  211. Spell(RAKE)
  212.  
  213. if BuffPresent(CLEARCASTING) AddCombo()
  214.  
  215. # Burn combo points on FB if the target is about to die - on a boss fight this is redundant with BotW phase
  216. if ComboPoints(more 4) and TargetDeadIn(less 7) {
  217. Spell(FEROCIOUSBITE)
  218. }
  219.  
  220. # Shred aggressively for Berserk and TF
  221. if BuffPresent(BERSERK) or BuffPresent(TIGERSFURY) AddCombo()
  222.  
  223. # Shred for combo points for Rip or SR
  224. if ComboPoints(less 5) and TargetDebuffExpires(RIP 3 mine=1) AddCombo()
  225. if ComboPoints(less 1) and BuffExpires(SAVAGEROAR 2) AddCombo()
  226.  
  227. # Shred to burn off energy so we can TF without capping
  228. if { 4s before Spell(TIGERSFURY) } AddCombo()
  229.  
  230. # Shred is the mob will die within one Rake
  231. if TargetDeadIn(less 8.5) AddCombo()
  232.  
  233. # Fallback Shred to prevent energy capping
  234. if 1.2s before Energy(more 99) AddCombo()
  235.  
  236. # opportunistic FF
  237. if TargetDebuffExpires(weakened_armor 15) Spell(FAERIEFERAL)
  238. }
Advertisement
Add Comment
Please, Sign In to add comment