actions.precombat+=/variable,name=three_min_trinket,value=trinket.1.cooldown.duration=180|trinket.2.cooldown.duration=180 actions.precombat+=/arcane_torrent,if=fury.deficit>15 actions.precombat+=/use_item,name=algethar_puzzle_box,if=cooldown.metamorphosis.remains<5 actions.precombat+=/sigil_of_flame,if=!equipped.algethar_puzzle_box actions.precombat+=/immolation_aura actions=disrupt actions+=/consume_magic # Blade Dance with First Blood, Trail of Ruin, or at 2+ targets actions+=/variable,name=blade_dance,value=talent.first_blood|talent.trail_of_ruin|talent.chaos_theory&buff.chaos_theory.down|spell_targets.blade_dance1>1 actions+=/variable,name=pooling_for_blade_dance,value=variable.blade_dance&fury<(75-talent.demon_blades*20)&cooldown.blade_dance.remainscooldown.metamorphosis.remains+30+talent.shattered_destiny*60&cooldown.metamorphosis.remains<20&cooldown.metamorphosis.remains>action.eye_beam.execute_time+gcd.max*(talent.inner_demon+2) ## actions+=/invoke_external_buff,name=power_infusion actions+=/immolation_aura,if=talent.ragefire&active_enemies>=3&(cooldown.blade_dance.remains|debuff.essence_break.down) actions+=/throw_glaive,if=talent.serrated_glaive&(buff.metamorphosis.remains>gcd.max*6&(debuff.serrated_glaive.down|debuff.serrated_glaive.remainsgcd.max*8 actions+=/throw_glaive,if=talent.serrated_glaive&cooldown.eye_beam.remainsgcd.max*8 actions+=/fel_rush,if=buff.unbound_chaos.up&(buff.unbound_chaos.remains0&(cooldown.eye_beam.remains<6|buff.metamorphosis.remains>5)&buff.empowered_demon_soul.remains<3|fight_remains<17 ## actions+=/pick_up_fragment,mode=nearest,type=lesser,if=talent.demonic_appetite&fury.deficit>=45&(!cooldown.eye_beam.ready|fury<30) actions+=/annihilation,if=buff.inner_demon.up&cooldown.metamorphosis.remains<=gcd*3 actions+=/vengeful_retreat,use_off_gcd=1,if=talent.initiative&talent.essence_break&time>1&(cooldown.essence_break.remains>15|cooldown.essence_break.remains15+(10*talent.cycle_of_hatred)))&(time<30|gcd.remains<1)&!talent.any_means_necessary&(!talent.initiative|buff.initiative.remains4) actions+=/vengeful_retreat,use_off_gcd=1,if=talent.initiative&talent.essence_break&time>1&(cooldown.essence_break.remains>15|cooldown.essence_break.remains(40-talent.cycle_of_hatred*15))&fury>30|!talent.demonic|buff.metamorphosis.up|cooldown.eye_beam.remains>15+(10*talent.cycle_of_hatred)))&talent.any_means_necessary actions+=/vengeful_retreat,use_off_gcd=1,if=talent.initiative&!talent.essence_break&time>1&!buff.momentum.up actions+=/fel_rush,if=talent.momentum.enabled&buff.momentum.remains1.8|cooldown.eye_beam.remains<3)&debuff.essence_break.down&cooldown.blade_dance.remains actions+=/essence_break,if=(active_enemies>desired_targets|raid_event.adds.in>40)&!variable.waiting_for_momentum&(buff.metamorphosis.remains>gcd.max*3|cooldown.eye_beam.remains>10)&(!talent.tactical_retreat|buff.tactical_retreat.up|time<10)&cooldown.blade_dance.remains<=3.1*gcd.max|fight_remains<6 actions+=/death_sweep,if=variable.blade_dance&(!talent.essence_break|cooldown.essence_break.remains>gcd.max*2) actions+=/fel_barrage,if=active_enemies>desired_targets|raid_event.adds.in>30 actions+=/glaive_tempest,if=active_enemies>desired_targets|raid_event.adds.in>10&(debuff.essence_break.down|active_enemies>1) actions+=/annihilation,if=buff.inner_demon.up&cooldown.eye_beam.remains<=gcd actions+=/fel_rush,if=talent.momentum.enabled&cooldown.eye_beam.remains10|!equipped.algethar_puzzle_box)&(raid_event.adds.in>90|active_enemies>3|time_to_die<10)&(time>6&debuff.essence_break.down&(!talent.furious_gaze|buff.furious_gaze.up)|!set_bonus.tier30_2pc) actions+=/eye_beam,if=active_enemies>desired_targets|raid_event.adds.in>(40-talent.cycle_of_hatred*15)&!debuff.essence_break.up&(cooldown.metamorphosis.remains>40-talent.cycle_of_hatred*15|!variable.holding_meta)&(buff.metamorphosis.down|buff.metamorphosis.remains>gcd.max|!talent.restless_hunter)|fight_remains<15 actions+=/blade_dance,if=variable.blade_dance&(cooldown.eye_beam.remains>5|equipped.algethar_puzzle_box&cooldown.metamorphosis.remains>(cooldown.blade_dance.duration)|!talent.demonic|(raid_event.adds.in>cooldown&raid_event.adds.in<25)) actions+=/sigil_of_flame,if=talent.any_means_necessary&debuff.essence_break.down&active_enemies>=4 actions+=/throw_glaive,if=talent.soulrend&(active_enemies>desired_targets|raid_event.adds.in>full_recharge_time+9)&spell_targets>=(2-talent.furious_throws)&!debuff.essence_break.up&(full_recharge_time1) actions+=/sigil_of_flame,if=talent.any_means_necessary&debuff.essence_break.down actions+=/immolation_aura,if=active_enemies>=2&fury<70&debuff.essence_break.down actions+=/annihilation,if=!variable.pooling_for_blade_dance|set_bonus.tier30_2pc actions+=/throw_glaive,if=talent.soulrend&(active_enemies>desired_targets|raid_event.adds.in>full_recharge_time+9)&spell_targets>=(2-talent.furious_throws)&!debuff.essence_break.up actions+=/immolation_aura,if=!buff.immolation_aura.up&(!talent.ragefire|active_enemies>desired_targets|raid_event.adds.in>15) actions+=/fel_rush,if=talent.isolated_prey&active_enemies=1&fury.deficit>=35 actions+=/chaos_strike,if=!variable.pooling_for_blade_dance&!variable.pooling_for_eye_beam actions+=/sigil_of_flame,if=raid_event.adds.in>15&fury.deficit>=30 actions+=/felblade,if=fury.deficit>=40 actions+=/fel_rush,if=settings.fel_rush_filler&!talent.momentum&talent.demon_blades&!cooldown.eye_beam.ready&(charges=2|(raid_event.movement.in>10&raid_event.adds.in>10)) actions+=/demons_bite,cycle_targets=1,if=talent.burning_wound&debuff.burning_wound.remains<4&active_dot.burning_wound<(spell_targets>?3) actions+=/fel_rush,if=settings.fel_rush_filler&!talent.momentum&!talent.demon_blades&spell_targets>1&(charges=2|(raid_event.movement.in>10&raid_event.adds.in>10)) actions+=/sigil_of_flame,if=raid_event.adds.in>15&fury.deficit>=30 actions+=/demons_bite actions+=/fel_rush,if=settings.fel_rush_filler&(movement.distance>15|(buff.out_of_range.up&!talent.momentum)) actions+=/vengeful_retreat,if=settings.retreat_filler&!talent.initiative&movement.distance>15 actions+=/throw_glaive,if=(talent.demon_blades|buff.out_of_range.up)&!debuff.essence_break.up actions+=/use_item,name=dragonfire_bomb_dispenser,use_off_gcd=1,if=fight_remains<20|charges=3|cooldown.vengeful_retreat.remains<5 actions+=/use_item,name=elementium_pocket_anvil,use_off_gcd=1 actions.meta_end+=/death_sweep actions.meta_end+=/annihilation actions.cooldown+=/sigil_of_misery,if=talent.misery_in_defeat&!target.is_boss&target.time_to_die>10&(cooldown.metamorphosis.remains<6|talent.demonic&cooldown.eye_beam.remains<6|buff.metamorphosis.remains>10) # Cast Metamorphosis if we will get a full Eye Beam refresh or if the encounter is almost over actions.cooldown+=/metamorphosis,if=!talent.demonic&((!talent.chaotic_transformation|cooldown.eye_beam.remains>20)&active_enemies>desired_targets|raid_event.adds.in>60|boss&fight_remains<25) actions.cooldown+=/metamorphosis,if=talent.demonic&(!talent.chaotic_transformation|cooldown.eye_beam.remains>20&(!variable.blade_dance|cooldown.blade_dance.remains>gcd.max)|boss&fight_remains<25+talent.shattered_destiny*70&cooldown.eye_beam.remains&cooldown.blade_dance.remains) actions.cooldown+=/potion,if=buff.metamorphosis.remains>25|buff.metamorphosis.up&cooldown.metamorphosis.ready|boss&fight_remains<60|time>0.1&time<10 actions.cooldown+=/elysian_decree,if=(active_enemies>desired_targets|raid_event.adds.in>30) actions.cooldown+=/use_item,name=manic_grieftorch,use_off_gcd=1,if=((buff.initiative.remains>2&debuff.essence_break.down&cooldown.essence_break.remains>gcd.max&time>14|time_to_die<10|time<1&!equipped.algethar_puzzle_box|boss&(fight_remains%%120<5))&!prev_gcd.1.essence_break) actions.cooldown+=/use_item,name=algethar_puzzle_box,use_off_gcd=1,if=cooldown.metamorphosis.remains<=gcd.max*5|boss&((fight_remains%%180>10)&(fight_remains%%180<22)|fight_remains<25) actions.cooldown+=/use_item,name=irideus_fragment,use_off_gcd=1,if=cooldown.metamorphosis.remains<=gcd.max&time>2|fight_remains%%180>10&fight_remains%%180<22|fight_remains<22 actions.cooldown+=/use_item,name=stormeaters_boon,use_off_gcd=1,if=cooldown.metamorphosis.remains&(!talent.momentum|buff.momentum.remains>5)&(active_enemies>1|raid_event.adds.in>140) actions.cooldown+=/use_item,name=beacon_to_the_beyond,use_off_gcd=1,if=debuff.essence_break.down&!prev_gcd.1.essence_break&(!equipped.irideus_fragment|trinket.1.cooldown.remains>20|trinket.2.cooldown.remains>20) actions.cooldown+=/use_item,name=dragonfire_bomb_dispenser,use_off_gcd=1,if=(time_to_die<30|cooldown.vengeful_retreat.remains<5|equipped.beacon_to_the_beyond|equipped.irideus_fragment)&(trinket.1.cooldown.remains>10|trinket.2.cooldown.remains>10|trinket.1.cooldown.duration=0|trinket.2.cooldown.duration=0|equipped.elementium_pocket_anvil|equipped.screaming_black_dragonscale|equipped.mark_of_dargrul)|(trinket.1.cooldown.duration>0|trinket.2.cooldown.duration>0)&(trinket.1.cooldown.remains|trinket.2.cooldown.remains)&!equipped.elementium_pocket_anvil&time<25 actions.cooldown+=/use_item,name=elementium_pocket_anvil,use_off_gcd=1,if=!prev_gcd.1.fel_rush&gcd.remains # Default use item logic actions.cooldown+=/use_items,slots=trinket1,if=(variable.trinket_sync_slot=1&(buff.metamorphosis.up|(!talent.demonic.enabled&cooldown.metamorphosis.remains>(fight_remains>?trinket.1.cooldown.duration%2))|fight_remains<=20)|(variable.trinket_sync_slot=2&!trinket.2.cooldown.ready)|!variable.trinket_sync_slot)&(!talent.initiative|buff.initiative.up) actions.cooldown+=/use_items,slots=trinket2,if=(variable.trinket_sync_slot=2&(buff.metamorphosis.up|(!talent.demonic.enabled&cooldown.metamorphosis.remains>(fight_remains>?trinket.2.cooldown.duration%2))|fight_remains<=20)|(variable.trinket_sync_slot=1&!trinket.1.cooldown.ready)|!variable.trinket_sync_slot)&(!talent.initiative|buff.initiative.up)