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.

70 lines
6.2 KiB

actions.precombat+=/fel_domination,if=time>0&!pet.alive&!buff.grimoire_of_sacrifice.up
actions.precombat+=/summon_pet,if=!pet.alive&!buff.grimoire_of_sacrifice.up
actions.precombat+=/variable,name=tyrant_prep_start,op=set,value=12
actions.precombat+=/variable,name=first_tyrant,op=set,value=14+talent.summon_vilefiend+talent.grimoire_felguard
actions.precombat+=/power_siphon,if=buff.wild_imps.stack>1&buff.demonic_core.stack<3
actions.precombat+=/demonbolt,if=soul_shard<5&(boss|cast_time=0)
actions.precombat+=/shadow_bolt,if=soul_shard<5
actions+=/axe_toss
actions+=/devour_magic
actions+=/variable,name=tyrant_padding,op=set,value=action.summon_demonic_tyrant.cast_time*2+1
actions+=/call_action_list,name=tyrant,if=talent.summon_demonic_tyrant&cooldown.summon_demonic_tyrant.remains_expected<variable.tyrant_prep_start&fight_remains>cooldown.summon_demonic_tyrant.remains_expected
## actions+=/invoke_external_buff,name=power_infusion,if=!talent.nether_portal&!talent.summon_demonic_tyrant|boss&time_to_die<25
actions+=/implosion,if=boss&time_to_die<2*gcd
actions+=/nether_portal,if=!talent.summon_demonic_tyrant&soul_shard>2|boss&time_to_die<30
actions+=/hand_of_guldan,if=buff.nether_portal.up
actions+=/call_action_list,name=items
actions+=/call_action_list,name=ogcd,if=buff.demonic_power.up|!talent.summon_demonic_tyrant&(buff.nether_portal.up|!talent.nether_portal)
actions+=/call_dreadstalkers,if=cooldown.summon_demonic_tyrant.remains_expected>cooldown
actions+=/call_dreadstalkers,if=!talent.summon_demonic_tyrant|time_to_die<14
actions+=/grimoire_felguard,if=!talent.summon_demonic_tyrant|boss&time_to_die<cooldown.summon_demonic_tyrant.remains_expected
actions+=/summon_vilefiend,if=!talent.summon_demonic_tyrant|boss&(cooldown.summon_demonic_tyrant.remains_expected>cooldown+variable.tyrant_prep_start|time_to_die<cooldown.summon_demonic_tyrant.remains_expected)
actions+=/guillotine,if=cooldown.demonic_strength.remains|!talent.guillotine
actions+=/demonic_strength
actions+=/bilescourge_bombers,if=!pet.demonic_tyrant.active
actions+=/shadow_bolt,if=soul_shard<5&talent.fel_covenant&buff.fel_covenant.remains<5
actions+=/implosion,if=two_cast_imps>0&buff.tyrant.down&active_enemies>1+(talent.sacrificed_souls.enabled)
actions+=/implosion,if=buff.wild_imps.stack>9&buff.tyrant.up&active_enemies>2+(1*talent.sacrificed_souls.enabled)&cooldown.call_dreadstalkers.remains>17&talent.the_expendables
actions+=/soul_strike,if=soul_shard<5&active_enemies>1
actions+=/summon_soulkeeper,if=buff.tormented_soul.stack=10&active_enemies>1
actions+=/demonbolt,if=buff.demonic_core.up&soul_shard<4
actions+=/power_siphon,if=buff.demonic_core.stack<1&(buff.dreadstalkers.remains>3|buff.dreadstalkers.down)
actions+=/hand_of_guldan,if=soul_shard>2&(!talent.summon_demonic_tyrant|cooldown.summon_demonic_tyrant.remains_expected>variable.tyrant_prep_start+2)
actions+=/doom,cycle_targets=1,if=refreshable
actions+=/soul_strike,if=soul_shard<5
actions+=/shadow_bolt
actions.items=use_item,name=timebreaching_talon,if=buff.demonic_power.up|!talent.summon_demonic_tyrant&(buff.nether_portal.up|!talent.nether_portal)
actions.items+=/use_items
actions.ogcd=potion
actions.ogcd+=/berserking
actions.ogcd+=/blood_fury
actions.ogcd+=/fireblood
actions.tyrant=variable,name=tyrant_window_ends,op=setif,value=cooldown.summon_demonic_tyrant.remains_expected,value_else=variable.first_tyrant-time-variable.tyrant_padding,condition=time>variable.first_tyrant
## These are currently optimal for Patchwerk and HAC in SimC, but can be simplified in the addon using major_demon_remains.
## actions.tyrant+=/variable,name=lowest_demon_remains,op=setif,value=buff.dreadstalkers.remains,value_else=100,condition=buff.dreadstalkers.up
## actions.tyrant+=/variable,name=lowest_demon_remains,op=min,value=buff.vilefiend.remains,if=buff.vilefiend.up&buff.vilefiend.remains<variable.lowest_demon_remains
## actions.tyrant+=/variable,name=lowest_demon_remains,op=min,value=buff.grimoire_felguard.remains,if=buff.grimoire_felguard.up&buff.grimoire_felguard.remains<variable.lowest_demon_remains
## actions.tyrant+=/variable,name=lowest_demon_remains,op=min,value=buff.nether_portal.remains,if=buff.nether_portal.up&buff.nether_portal.remains<variable.lowest_demon_remains
## actions.tyrant+=/variable,name=tyrant_window_ends,op=set,value=variable.lowest_demon_remains-variable.tyrant_padding,if=time>variable.first_tyrant&variable.lowest_demon_remains<100&variable.lowest_demon_remains-variable.tyrant_padding>variable.tyrant_window_ends
actions.tyrant+=/variable,name=tyrant_window_ends,op=set,value=major_demon_remains-variable.tyrant_padding,if=major_demon_remains-variable.tyrant_padding>variable.tyrant_window_ends
## actions.tyrant+=/invoke_external_buff,name=power_infusion,if=(buff.nether_portal.up&buff.nether_portal.remains<8&talent.nether_portal)|(buff.dreadstalkers.up&variable.tyrant_window_ends<=4&!talent.nether_portal)
actions.tyrant+=/shadow_bolt,if=time<2&soul_shard<5
actions.tyrant+=/nether_portal
actions.tyrant+=/grimoire_felguard
actions.tyrant+=/summon_vilefiend
actions.tyrant+=/call_dreadstalkers
actions.tyrant+=/soulburn,if=buff.nether_portal.up&soul_shard>=2,line_cd=40
## actions.tyrant+=/hand_of_guldan,if=variable.tyrant_window_ends>cast_time&buff.nether_portal.up
## actions.tyrant+=/hand_of_guldan,if=variable.tyrant_window_ends>cast_time&soul_shard>2
## actions.tyrant+=/hand_of_guldan,if=variable.tyrant_window_ends>cast_time&talent.soulbound_tyrant&variable.tyrant_window_ends<cast_time+action.shadow_bolt.cast_time
actions.tyrant+=/summon_demonic_tyrant,if=variable.tyrant_window_ends<action.hand_of_guldan.cast_time&(fight_remains<15|buff.dreadstalkers.up|buff.vilefiend.up|buff.grimoire_felguard.up)
actions.tyrant+=/hand_of_guldan,if=variable.tyrant_window_ends>cast_time&(buff.nether_portal.up|soul_shard>2&variable.tyrant_window_ends<12|soul_shard=5)
actions.tyrant+=/hand_of_guldan,if=talent.soulbound_tyrant&((buff.demonic_core.up|talent.soul_strike&cooldown.soul_strike.remains=0)&variable.tyrant_window_ends<=cast_time+gcd.max|variable.tyrant_window_ends<=cast_time+action.shadow_bolt.cast_time)&(fight_remains<15|buff.dreadstalkers.up|buff.vilefiend.up|buff.grimoire_felguard.up)
actions.tyrant+=/demonbolt,if=buff.demonic_core.up
actions.tyrant+=/power_siphon,if=buff.wild_imps.stack>1&!buff.nether_portal.up
actions.tyrant+=/soul_strike
actions.tyrant+=/shadow_bolt