Muttonman

Ele APL Merged 20210422

Apr 22nd, 2021 (edited)
687
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Custom APL
  2.  
  3. # Executed before combat begins. Accepts non-harmful actions only.
  4. actions.precombat="flask"
  5. actions.precombat+="/food"
  6. actions.precombat+="/augmentation"
  7. actions.precombat+="/earth_elemental,if=!talent.primal_elementalist.enabled"
  8. # Use Stormkeeper precombat unless some adds will spawn soon.
  9. actions.precombat+="/stormkeeper,if=talent.stormkeeper.enabled&(raid_event.adds.count<3|raid_event.adds.in>50)"
  10. # Precasts Fire Elemental -> Elemental Blast
  11. actions.precombat+="/fire_elemental"
  12. actions.precombat+="/elemental_blast,if=talent.elemental_blast.enabled&spell_targets.chain_lightning<4"
  13. actions.precombat+="/lava_burst,if=!talent.elemental_blast.enabled&spell_targets.chain_lightning<4|talent.master_of_the_elements.enabled"
  14. actions.precombat+="/chain_lightning,if=!talent.elemental_blast.enabled&spell_targets.chain_lightning>=4"
  15. # Snapshot raid buffed stats before combat begins and pre-potting is done.
  16. actions.precombat+="/snapshot_stats"
  17. actions.precombat+="/potion"
  18.  
  19. # Executed every time the actor is available.
  20. actions="spiritwalkers_grace,moving=1,if=movement.distance>6"
  21. # Interrupt of casts.
  22. actions+="/wind_shear"
  23. actions+="/potion"
  24. actions+="/use_items"
  25. actions+="/storm_elemental"
  26. actions+="/primordial_wave,target_if=min:dot.flame_shock.remains,cycle_targets=1,if=!buff.primordial_wave.up&!pet.storm_elemental.active&(spell_targets.chain_lightning<5|talent.master_of_the_elements.enabled|runeforge.skybreakers_fiery_demise.equipped)"
  27. actions+="/flame_shock,if=!ticking&(!pet.storm_elemental.active|spell_targets.chain_lightning<5)&(spell_targets.chain_lightning<5|talent.master_of_the_elements.enabled|runeforge.skybreakers_fiery_demise.equipped)"
  28. actions+="/fire_elemental"
  29. actions+="/blood_fury,if=!talent.ascendance.enabled|buff.ascendance.up|cooldown.ascendance.remains>50"
  30. actions+="/berserking,if=!talent.ascendance.enabled|buff.ascendance.up"
  31. actions+="/fireblood,if=!talent.ascendance.enabled|buff.ascendance.up|cooldown.ascendance.remains>50"
  32. actions+="/ancestral_call,if=!talent.ascendance.enabled|buff.ascendance.up|cooldown.ascendance.remains>50"
  33. actions+="/bag_of_tricks,if=!talent.ascendance.enabled|!buff.ascendance.up"
  34. actions+="/vesper_totem,if=covenant.kyrian"
  35. actions+="/fae_transfusion,if=covenant.night_fae&(!talent.master_of_the_elements.enabled|buff.master_of_the_elements.up)&spell_targets.chain_lightning<3"
  36. actions+="/run_action_list,name=aoe,if=active_enemies>2&(spell_targets.chain_lightning>2|spell_targets.lava_beam>2)"
  37. actions+="/run_action_list,name=single_target,if=!talent.storm_elemental.enabled&active_enemies<=2"
  38. actions+="/run_action_list,name=se_single_target,if=talent.storm_elemental.enabled&active_enemies<=2"
  39.  
  40. # 3+ Enemy
  41. actions.aoe="earthquake,if=buff.echoing_shock.up"
  42. actions.aoe+="/chain_harvest"
  43. actions.aoe+="/stormkeeper,if=talent.stormkeeper.enabled"
  44. actions.aoe+="/flame_shock,if=(active_dot.flame_shock<3&active_enemies<=3|active_dot.flame_shock<1&active_enemies>=4&!pet.storm_elemental.active)|(runeforge.skybreakers_fiery_demise.equipped&!pet.storm_elemental.active),target_if=refreshable"
  45. actions.aoe+="/flame_shock,if=!active_dot.flame_shock&!pet.storm_elemental.active"
  46. actions.aoe+="/echoing_shock,if=talent.echoing_shock.enabled&maelstrom>=60&(runeforge.echoes_of_great_sundering.equipped&buff.echoes_of_great_sundering.up|!runeforge.echoes_of_great_sundering.equipped)"
  47. actions.aoe+="/ascendance,if=talent.ascendance.enabled&(!pet.storm_elemental.active)&(!talent.icefury.enabled|!buff.icefury.up&!cooldown.icefury.up)"
  48. actions.aoe+="/liquid_magma_totem,if=talent.liquid_magma_totem.enabled"
  49. actions.aoe+="/chain_lightning,if=spell_targets.chain_lightning<4&buff.master_of_the_elements.up&(maelstrom<60)"
  50. actions.aoe+="/earth_shock,if=runeforge.echoes_of_great_sundering.equipped&!buff.echoes_of_great_sundering.up"
  51. # Lava Burst Below 4 targets
  52. actions.aoe+="/lava_burst,target_if=dot.flame_shock.remains,if=spell_targets.chain_lightning<4"
  53. # Try to game Earthquake with Master of the Elements buff when fighting 3 targets. Don't overcap Maelstrom!
  54. actions.aoe+="/earthquake,if=(!talent.master_of_the_elements.enabled|buff.stormkeeper.up|maelstrom>=(100-4*spell_targets.chain_lightning)&buff.lava_surge.up|buff.master_of_the_elements.up|spell_targets.chain_lightning>=2)&!runeforge.echoes_of_great_sundering.equipped"
  55. # Lava Burst with PWave up and a Lava Surge
  56. actions.aoe+="/lava_burst,target_if=dot.flame_shock.remains,if=buff.lava_surge.up&buff.primordial_wave.up"
  57. # Lava Burst with 50+ mael and no MotE buff and the next cast would be EQ for 4 targets with Skybreakers Fiery
  58. actions.aoe+="/lava_burst,target_if=dot.flame_shock.remains,if=spell_targets.chain_lightning<4&runeforge.skybreakers_fiery_demise.equipped&buff.lava_surge.up&talent.master_of_the_elements.enabled&!buff.master_of_the_elements.up&maelstrom>=50"
  59. # Lava Burst with 50+ mael and no MotE buff and the next cast would be EQ
  60. actions.aoe+="/lava_burst,target_if=dot.flame_shock.remains,if=(spell_targets.chain_lightning<4&runeforge.skybreakers_fiery_demise.equipped&talent.master_of_the_elements.enabled)|talent.master_of_the_elements.enabled&maelstrom>=50&!buff.master_of_the_elements.up&(!runeforge.echoes_of_great_sundering.equipped|buff.echoes_of_great_sundering.up)&!runeforge.skybreakers_fiery_demise.equipped"
  61. # Lava Burst to MoTE EQ
  62. actions.aoe+="/lava_burst,target_if=dot.flame_shock.remains,if=spell_targets.chain_lightning=4&runeforge.skybreakers_fiery_demise.equipped&buff.lava_surge.up&talent.master_of_the_elements.enabled&!buff.master_of_the_elements.up&maelstrom>=50"
  63. # Try to game Earthquake with Master of the Elements buff when fighting 3 targets. Don't overcap Maelstrom!
  64. actions.aoe+="/earthquake,if=!talent.master_of_the_elements.enabled|buff.stormkeeper.up|maelstrom>=(100-4*spell_targets.chain_lightning)|buff.master_of_the_elements.up|spell_targets.chain_lightning>=2"
  65. # Make sure you don't lose a Stormkeeper buff.
  66. actions.aoe+="/chain_lightning,if=buff.stormkeeper.remains<3*gcd*buff.stormkeeper.stack"
  67. # Only cast Lava Burst on three targets if it is an instant and Storm Elemental is NOT active.
  68. actions.aoe+="/lava_burst,if=buff.lava_surge.up&spell_targets.chain_lightning<4&(!pet.storm_elemental.active)&dot.flame_shock.ticking"
  69. # Use Elemental Blast against up to 3 targets as long as Storm Elemental is not active.
  70. actions.aoe+="/elemental_blast,if=talent.elemental_blast.enabled&spell_targets.chain_lightning<5&(!pet.storm_elemental.active)"
  71. actions.aoe+="/lava_beam,if=talent.ascendance.enabled"
  72. actions.aoe+="/chain_lightning"
  73. actions.aoe+="/lava_burst,moving=1,if=buff.lava_surge.up&cooldown_react"
  74. actions.aoe+="/flame_shock,moving=1,target_if=refreshable"
  75. actions.aoe+="/frost_shock,moving=1"
  76.  
  77.  
  78.  
  79.  
  80. # 1-2 Targets
  81.  
  82. # Cast Lightning Bolt in order to not waste Stormkeeper stacks
  83. actions.single_target="lightning_bolt,if=(buff.stormkeeper.remains<1.1*gcd*buff.stormkeeper.stack)"
  84. # Cast Frost Shock in order to not waste Icefury stacks
  85. actions.single_target+="/frost_shock,if=talent.icefury.enabled&buff.icefury.up&buff.icefury.remains<1.1*gcd*buff.icefury.stack"
  86. # Get Flameshock ticking if it is not up
  87. actions.single_target+="/flame_shock,target_if=(!ticking|dot.flame_shock.remains<=gcd|talent.ascendance.enabled&dot.flame_shock.remains<(cooldown.ascendance.remains+buff.ascendance.duration)&cooldown.ascendance.remains<4)&(buff.lava_surge.up|!buff.bloodlust.up)"
  88. # Get all the Flame Shock up for PWave
  89. actions.single_target+="/flame_shock,if=buff.primordial_wave.up,target_if=min:dot.flame_shock.remains,cycle_targets=1,target_if=refreshable"
  90. # Cast Ascendence on cooldown
  91. actions.single_target+="/ascendance,if=talent.ascendance.enabled&(time>=60|buff.bloodlust.up)&(cooldown.lava_burst.remains>0)&(!talent.icefury.enabled|!buff.icefury.up&!cooldown.icefury.up)"
  92. # Cast Lava Burst on Lava Surge
  93. actions.single_target+="/lava_burst,if=buff.lava_surge.up"
  94. # Cast Elemental Blast on cooldown if you won't overcap
  95. actions.single_target+="/elemental_blast,if=talent.elemental_blast.enabled&(maelstrom<70)"
  96. # Cast Stormkeeper on cooldown
  97. actions.single_target+="/stormkeeper,if=talent.stormkeeper.enabled&(raid_event.adds.count<3|raid_event.adds.in>50)&(maelstrom<44)"
  98. # Cast Echoing Shock on cooldown if you have a charge of Lava Burst or one is about to come off of cooldown
  99. actions.single_target+="/echoing_shock,if=talent.echoing_shock.enabled&cooldown.lava_burst.remains<=gcd"
  100. # Cast Lava Burst if you just cast Echoing Shock
  101. actions.single_target+="/lava_burst,if=talent.echoing_shock.enabled&buff.echoing_shock.up"
  102. # Cast Liquid Magma Totem on cooldown
  103. actions.single_target+="/liquid_magma_totem,if=talent.liquid_magma_totem.enabled"
  104. # Cast Lightning Bolt with Stormkeeper charges and Master of the Elements
  105. actions.single_target+="/lightning_bolt,if=buff.stormkeeper.up&buff.master_of_the_elements.up&maelstrom<60"
  106. # Cast EoGS EQ with either MotE or to avoid overcap
  107. actions.single_target+="/earthquake,if=buff.echoes_of_great_sundering.up&(talent.master_of_the_elements.enabled&(buff.master_of_the_elements.up|cooldown.lava_burst.remains>0&maelstrom>=92|spell_targets.chain_lightning<2&buff.stormkeeper.up&cooldown.lava_burst.remains<=gcd)|!talent.master_of_the_elements.enabled|cooldown.elemental_blast.remains<=1.1*gcd*2)"
  108. # Cast EQ at 2+ enemies with either MotE or to avoid overcap
  109. actions.single_target+="/earthquake,if=spell_targets.chain_lightning>1&!dot.flame_shock.refreshable&!runeforge.echoes_of_great_sundering.equipped&(!talent.master_of_the_elements.enabled|buff.master_of_the_elements.up|cooldown.lava_burst.remains>0&maelstrom>=92)"
  110. # Cast Lava Surge Lava Burst
  111. actions.single_target+="/lava_burst,if=cooldown_react&(!buff.master_of_the_elements.up&buff.icefury.up)"
  112. # Empty Lava Burst Charges before Earth Shock
  113. actions.single_target+="/lava_burst,if=cooldown_react&charges>talent.echo_of_the_elements.enabled&!buff.icefury.up"
  114. # MotE Your Earth Shock
  115. actions.single_target+="/lava_burst,if=talent.echo_of_the_elements.enabled&!buff.master_of_the_elements.up&maelstrom>=50&!buff.echoes_of_great_sundering.up"
  116. # Cast Earth Shock with either Master of the Elements or to avoid capping Maelstrom or to avoid wasting a Master of the Elements buff that could go on a Stormkeeper or just at 60 without Master of the Elements or Elemental Blast is 2 GCDs away
  117. actions.single_target+="/earth_shock,if=(runeforge.echoes_of_great_sundering.equipped|spell_targets.chain_lightning<2)&(talent.master_of_the_elements.enabled&!buff.echoes_of_great_sundering.up&(buff.master_of_the_elements.up|maelstrom>=92|spell_targets.chain_lightning<2&buff.stormkeeper.up&cooldown.lava_burst.remains<=gcd)|!talent.master_of_the_elements.enabled|cooldown.elemental_blast.remains<=1.1*gcd*2)"
  118. # Cast Frost Shock under Icefury and Master of the Elements buffs
  119. actions.single_target+="/frost_shock,if=talent.icefury.enabled&talent.master_of_the_elements.enabled&buff.icefury.up&buff.master_of_the_elements.up"
  120. # Cast Lava Burst under Ascendence
  121. actions.single_target+="/lava_burst,if=buff.ascendance.up"
  122. # Cast Lava Surge Lava Burst without Master of the Elements
  123. actions.single_target+="/lava_burst,if=cooldown_react&!talent.master_of_the_elements.enabled"
  124. # Cast Icefury on cooldown when it won't overcap and you have no more Lava Bursts
  125. actions.single_target+="/icefury,if=talent.icefury.enabled&!(maelstrom>35&cooldown.lava_burst.remains<=0)"
  126. # Cast Frost Shock with Icefury buff
  127. actions.single_target+="/frost_shock,if=talent.icefury.enabled&buff.icefury.up&(buff.icefury.remains<gcd*4*buff.icefury.stack|buff.stormkeeper.up|!talent.master_of_the_elements.enabled)"
  128. # Cast Lava Burst
  129. actions.single_target+="/lava_burst"
  130. # Cast Flameshock in pandemic range
  131. actions.single_target+="/flame_shock,target_if=refreshable"
  132. # Cast Frost Shock to trigger Elemental Equilibrium
  133. actions.single_target+="/frost_shock,if=runeforge.elemental_equilibrium.equipped&!buff.elemental_equilibrium_debuff.up&!talent.elemental_blast.enabled&!talent.echoing_shock.enabled"
  134. # Cast Chain Harvest on cooldown
  135. actions.single_target+="/chain_harvest"
  136. # Cast Static Discharge on cooldown
  137. actions.single_target+="/static_discharge,if=talent.static_discharge.enabled"
  138. # Cast Earth Elemental
  139. actions.single_target+="/earth_elemental,if=!talent.primal_elementalist.enabled|!pet.fire_elemental.active"
  140. # Cast Chain Lightning at 2t
  141. actions.single_target+="/chain_lightning,if=spell_targets.chain_lightning>1"
  142. # Cast Lightning Bolt
  143. actions.single_target+="/lightning_bolt"
  144. # Cast Flameshock in pandemic range if you need to move
  145. actions.single_target+="/flame_shock,moving=1,target_if=refreshable"
  146. # Cast Flameshock on longer movement
  147. actions.single_target+="/flame_shock,moving=1,if=movement.distance>6"
  148. # Cast Frost Shock on movement
  149. actions.single_target+="/frost_shock,moving=1"
  150.  
  151.  
  152.  
  153. # Storm Elemental Single Target
  154. actions.se_single_target="flame_shock,target_if=(remains<=gcd)&(buff.lava_surge.up|!buff.bloodlust.up)"
  155. actions.se_single_target+="/elemental_blast,if=talent.elemental_blast.enabled"
  156. actions.se_single_target+="/stormkeeper,if=talent.stormkeeper.enabled&(maelstrom<44)"
  157. actions.se_single_target+="/echoing_shock,if=talent.echoing_shock.enabled&cooldown.lava_burst.remains<=gcd&spell_targets.chain_lightning<2|maelstrom>=60&spell_targets.chain_lightning>=2&(!runeforge.echoes_of_great_sundering.equipped|buff.echoes_of_great_sundering.up)|spell_targets.chain_lightning<2&buff.wind_gust.stack>=18&(!runeforge.echoes_of_great_sundering.equipped|buff.echoes_of_great_sundering.up)&maelstrom>=60"
  158. actions.se_single_target+="/lava_burst,if=buff.wind_gust.stack<18|buff.lava_surge.up"
  159. actions.se_single_target+="/lava_burst,if=talent.echoing_shock.enabled&buff.echoing_shock.up&spell_targets.chain_lightning<2"
  160. actions.se_single_target+="/earth_shock,if=talent.echoing_shock.enabled&buff.echoing_shock.up&spell_targets.chain_lightning<2&!buff.echoes_of_great_sundering.up"
  161. actions.se_single_target+="/earthquake,if=talent.echoing_shock.enabled&buff.echoing_shock.up&spell_targets.chain_lightning>=2&!buff.echoes_of_great_sundering.up"
  162. actions.se_single_target+="/lightning_bolt,if=buff.stormkeeper.up"
  163. # Cast EoGS EQ
  164. actions.se_single_target+="/earthquake,if=buff.echoes_of_great_sundering.up"
  165. # Cast EQ at 2+ enemies with either MotE or to avoid overcap
  166. actions.se_single_target+="/earthquake,if=spell_targets.chain_lightning>1&!runeforge.echoes_of_great_sundering.equipped"
  167. actions.se_single_target+="/earth_shock,if=spell_targets.chain_lightning<2&maelstrom>=60&(buff.wind_gust.stack<20|maelstrom>90)|(runeforge.echoes_of_great_sundering.equipped&!buff.echoes_of_great_sundering.up)"
  168. actions.se_single_target+="/lightning_bolt,if=(buff.stormkeeper.remains<1.1*gcd*buff.stormkeeper.stack|buff.stormkeeper.up&buff.master_of_the_elements.up)"
  169. actions.se_single_target+="/frost_shock,if=talent.icefury.enabled&talent.master_of_the_elements.enabled&buff.icefury.up&buff.master_of_the_elements.up"
  170. actions.se_single_target+="/lava_burst,if=buff.ascendance.up"
  171. actions.se_single_target+="/lava_burst,if=cooldown_react&!talent.master_of_the_elements.enabled"
  172. actions.se_single_target+="/icefury,if=talent.icefury.enabled&!(maelstrom>75&cooldown.lava_burst.remains<=0)"
  173. actions.se_single_target+="/lava_burst,if=cooldown_react&charges>talent.echo_of_the_elements.enabled"
  174. actions.se_single_target+="/frost_shock,if=talent.icefury.enabled&buff.icefury.up"
  175. actions.se_single_target+="/chain_harvest"
  176. actions.se_single_target+="/static_discharge,if=talent.static_discharge.enabled"
  177. actions.se_single_target+="/earth_elemental,if=!talent.primal_elementalist.enabled|talent.primal_elementalist.enabled&(!pet.storm_elemental.active)"
  178. actions.se_single_target+="/chain_lightning,if=active_enemies>1&(spell_targets.chain_lightning>1|spell_targets.lava_beam>1)"
  179. actions.se_single_target+="/lightning_bolt"
  180. actions.se_single_target+="/flame_shock,moving=1,target_if=refreshable"
  181. actions.se_single_target+="/flame_shock,moving=1,if=movement.distance>6"
  182. actions.se_single_target+="/frost_shock,moving=1"
RAW Paste Data