aggixx

Untitled

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