You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
7.5 KiB

# Check if trinkets have buff effects
actions+=/variable,name=trinket_1_buffs,value=trinket.1.has_use_buff|(trinket.1.has_buff.strength|trinket.1.has_buff.mastery|trinket.1.has_buff.versatility|trinket.1.has_buff.haste|trinket.1.has_buff.crit)
actions+=/variable,name=trinket_2_buffs,value=trinket.2.has_use_buff|(trinket.2.has_buff.strength|trinket.2.has_buff.mastery|trinket.2.has_buff.versatility|trinket.2.has_buff.haste|trinket.2.has_buff.crit)
actions+=/variable,name=trinket_1_exclude,value=trinket.1.is.ruby_whelp_shell|trinket.1.is.whispering_incarnate_icon
actions+=/variable,name=trinket_2_exclude,value=trinket.2.is.ruby_whelp_shell|trinket.2.is.whispering_incarnate_icon
# Don't spend fury when fel dev soon to maximize fel dev uptime
actions+=/variable,name=dont_cleave,value=(cooldown.fel_devastation.remains<=(action.soul_cleave.execute_time+gcd.remains))&fury<80
# Check if fiery demise is active and spread
actions+=/variable,name=fd_ready,value=talent.fiery_brand&talent.fiery_demise&active_dot.fiery_brand>0
# Don't spend fury when fel dev soon to maximize fel dev uptime
actions+=/variable,name=dont_cleave,value=(cooldown.fel_devastation.remains<=(action.soul_cleave.execute_time+gcd.remains))&fury<80
# When to use Spirit Bomb with Focused Cleave
actions+=/variable,name=single_target,value=spell_targets.spirit_bomb=1
actions+=/variable,name=small_aoe,value=spell_targets.spirit_bomb>=2&spell_targets.spirit_bomb<=5
actions+=/variable,name=big_aoe,value=spell_targets.spirit_bomb>=6
actions+=/variable,name=can_spb,op=setif,condition=variable.fd_ready,value=(variable.single_target&soul_fragments>=5)|(variable.small_aoe&soul_fragments>=4)|(variable.big_aoe&soul_fragments>=3),value_else=(variable.small_aoe&soul_fragments>=5)|(variable.big_aoe&soul_fragments>=4)
actions+=/disrupt
actions+=/consume_magic
actions+=/infernal_strike,use_off_gcd=1
actions+=/demon_spikes,use_off_gcd=1,if=!buff.demon_spikes.up&!cooldown.pause_action.remains
actions+=/metamorphosis
actions+=/potion,use_off_gcd=1
## actions+=/call_action_list,name=externals
actions+=/call_action_list,name=trinkets
actions+=/call_action_list,name=fiery_demise,strict=1,if=talent.fiery_brand&talent.fiery_demise&active_dot.fiery_brand>0
actions+=/call_action_list,name=maintenance
actions+=/run_action_list,name=single_target,strict=1,if=variable.single_target
actions+=/run_action_list,name=small_aoe,strict=1,if=variable.small_aoe
actions+=/run_action_list,name=big_aoe,strict=1,if=variable.big_aoe
## actions.externals+=/invoke_external_buff,name=symbol_of_hope
## actions.externals+=/invoke_external_buff,name=power_infusion
# Fiery demise window
actions.fiery_demise+=/immolation_aura
actions.fiery_demise+=/sigil_of_flame
actions.fiery_demise+=/felblade,if=(cooldown.fel_devastation.remains<=(execute_time+gcd.remains))&fury<50
actions.fiery_demise+=/fel_devastation
actions.fiery_demise+=/soul_carver
actions.fiery_demise+=/the_hunt
actions.fiery_demise+=/elysian_decree,line_cd=1.85
actions.fiery_demise+=/spirit_bomb,if=talent.focused_cleave&variable.can_spb_focused_cleave|!talent.focused_cleave&variable.can_spb_no_focused_cleave
actions.fiery_demise+=/spirit_bomb,if=variable.can_spb
actions.filler+=/sigil_of_chains,if=talent.cycle_of_binding.enabled&talent.sigil_of_chains.enabled
actions.filler+=/sigil_of_misery,if=talent.cycle_of_binding.enabled&talent.sigil_of_misery.enabled
actions.filler+=/sigil_of_silence,if=talent.cycle_of_binding.enabled&talent.sigil_of_silence.enabled
actions.filler+=/throw_glaive
# Maintenance & upkeep
actions.maintenance+=/fiery_brand,if=talent.fiery_brand&((active_dot.fiery_brand=0&(cooldown.sigil_of_flame.remains<=(execute_time+gcd.remains)|cooldown.soul_carver.remains<=(execute_time+gcd.remains)|cooldown.fel_devastation.remains<=(execute_time+gcd.remains)))|(talent.down_in_flames&full_recharge_time<=(execute_time+gcd.remains)))
actions.maintenance+=/sigil_of_flame,if=talent.ascending_flame|active_dot.sigil_of_flame=0
actions.maintenance+=/immolation_aura
actions.maintenance+=/bulk_extraction,if=((5-soul_fragments)<=spell_targets)&soul_fragments<=2
actions.maintenance+=/spirit_bomb,if=variable.can_spb
actions.maintenance+=/felblade,if=(fury.deficit>=40&active_enemies=1)|((cooldown.fel_devastation.remains<=(execute_time+gcd.remains))&fury<50)
actions.maintenance+=/fracture,if=(cooldown.fel_devastation.remains<=(execute_time+gcd.remains))&fury<50
actions.maintenance+=/shear,if=(cooldown.fel_devastation.remains<=(execute_time+gcd.remains))&fury<50
# Don't overcap fury
actions.maintenance+=/spirit_bomb,if=fury.deficit<=30&spell_targets>1&soul_fragments>=4
actions.maintenance+=/soul_cleave,if=fury.deficit<=30
# Single Target
actions.single_target+=/the_hunt
actions.single_target+=/soul_carver
actions.single_target+=/fel_devastation,if=talent.collective_anguish|(talent.stoke_the_flames&talent.burning_blood)
actions.single_target+=/elysian_decree
actions.single_target+=/fel_devastation
actions.single_target+=/soul_cleave,if=talent.focused_cleave&!variable.dont_cleave
actions.single_target+=/fracture
actions.single_target+=/shear
actions.single_target+=/soul_cleave,if=!variable.dont_cleave
actions.single_target+=/call_action_list,name=filler
# 2-5 targets
actions.small_aoe+=/the_hunt
actions.small_aoe+=/fel_devastation,if=talent.collective_anguish.enabled|(talent.stoke_the_flames.enabled&talent.burning_blood.enabled)
actions.small_aoe+=/elysian_decree,line_cd=1.85
actions.small_aoe+=/fel_devastation
actions.small_aoe+=/soul_carver
actions.small_aoe+=/spirit_bomb,if=soul_fragments>=5
actions.small_aoe+=/soul_cleave,if=talent.focused_cleave&soul_fragments<=1&!variable.dont_cleave
actions.small_aoe+=/fracture
actions.small_aoe+=/shear
actions.small_aoe+=/soul_cleave,if=soul_fragments<=1&!variable.dont_cleave
actions.small_aoe+=/call_action_list,name=filler
# 6+ targets
actions.big_aoe+=/fel_devastation,if=talent.collective_anguish|talent.stoke_the_flames
actions.big_aoe+=/the_hunt
actions.big_aoe+=/elysian_decree,line_cd=1.85
actions.big_aoe+=/fel_devastation
actions.big_aoe+=/soul_carver
actions.big_aoe+=/spirit_bomb,if=soul_fragments>=4
actions.big_aoe+=/fracture
actions.big_aoe+=/shear
actions.big_aoe+=/soul_cleave,if=!variable.dont_cleave
actions.big_aoe+=/call_action_list,name=filler
# Filler
actions.filler+=/sigil_of_chains,if=talent.cycle_of_binding&talent.sigil_of_chains
actions.filler+=/sigil_of_misery,if=talent.cycle_of_binding&talent.sigil_of_misery
actions.filler+=/sigil_of_silence,if=talent.cycle_of_binding&talent.sigil_of_silence
actions.filler+=/felblade
actions.filler+=/throw_glaive
# External buffs
actions.externals+=/invoke_external_buff,name=symbol_of_hope
actions.externals+=/invoke_external_buff,name=power_infusion
# Trinkets prioritize damage dealing on use trinkets over trinkets that give buffs
actions.trinkets+=/use_item,use_off_gcd=1,slot=trinket1,if=!variable.trinket_1_buffs
actions.trinkets+=/use_item,use_off_gcd=1,slot=trinket2,if=!variable.trinket_2_buffs
actions.trinkets+=/use_item,use_off_gcd=1,slot=main_hand,if=(variable.trinket_1_buffs|trinket.1.cooldown.remains)&(variable.trinket_2_buffs|trinket.2.cooldown.remains)
actions.trinkets+=/use_item,use_off_gcd=1,slot=trinket1,if=variable.trinket_1_buffs&(buff.metamorphosis.up|cooldown.metamorphosis.remains>20)&(variable.trinket_2_exclude|trinket.2.cooldown.remains|!trinket.2.has_cooldown|variable.trinket_2_buffs)
actions.trinkets+=/use_item,use_off_gcd=1,slot=trinket2,if=variable.trinket_2_buffs&(buff.metamorphosis.up|cooldown.metamorphosis.remains>20)&(variable.trinket_1_exclude|trinket.1.cooldown.remains|!trinket.1.has_cooldown|variable.trinket_1_buffs)