### Created by Thyminde-Kazzak (thyminde on Discord). ## "Priority damage" in the sim results is combined Boss + Recollection damage. merge_enemy_priority_dmg=1 override.spell_data=effect.4249.base_value=50 external_buffs.power_infusion=126/260/420 #p1+2 raid_events+=/invulnerable,first=102,duration=24,cooldown=6000 raid_events+=/adds,name=NullGlimmer,count=5,first=130,duration=7,cooldown=6000 raid_events+=/adds,name=EmptyRecollection,count=1,first=130,duration=15,cooldown=6000,type=add_boss raid_events+=/adds,name=NullGlimmer,count=5,first=180,duration=11,cooldown=6000 raid_events+=/adds,name=EmptyRecollection,count=1,first=180,duration=27,cooldown=6000,type=add_boss raid_events+=/adds,name=NullGlimmer,count=5,first=208,duration=11,cooldown=6000 raid_events+=/adds,name=EmptyRecollection,count=1,first=208,duration=23,cooldown=6000,type=add_boss #p3 raid_events+=/invulnerable,first=240,duration=20,cooldown=6000 raid_events+=/adds,name=NullGlimmer,count=3,first=260,duration=9,cooldown=6000 raid_events+=/adds,name=NullGlimmer,count=3,first=312,duration=12,cooldown=6000 raid_events+=/invulnerable,first=405,duration=15,cooldown=6000 raid_events+=/adds,name=NullGlimmer,count=3,first=420,duration=10,cooldown=6000 max_time=450 vary_combat_length=0 # ONLY COPY THE STUFF ABOVE THIS UNLESS YOU KNOW WHAT YOU'RE DOING. _______________________________________________________________ ## READ BELOW, MM HUNTERS ## ## CUSTOM MM APL (for prio damage optimization) # Use this custom APL for prog # Executed before combat begins. Accepts non-harmful actions only. actions.precombat=flask actions.precombat+=/augmentation actions.precombat+=/food actions.precombat+=/summon_pet,if=!talent.lone_wolf actions.precombat+=/snapshot_stats actions.precombat+=/salvo,precast_time=10 actions.precombat+=/use_item,name=algethar_puzzle_box actions.precombat+=/aimed_shot,if=active_enemies<3&(!talent.volley|active_enemies<2) actions.precombat+=/wailing_arrow,if=active_enemies>2|!talent.steady_focus actions.precombat+=/steady_shot,if=active_enemies>2|talent.volley&active_enemies=2 # Executed every time the actor is available. actions=auto_shot actions+=/variable,name=trueshot_ready,value=cooldown.trueshot.ready&buff.trueshot.down&(!raid_event.adds.exists&(!talent.bullseye|fight_remains>cooldown.trueshot.duration_guess+buff.trueshot.duration%2|buff.bullseye.stack=buff.bullseye.max_stack)&(!trinket.1.has_use_buff|trinket.1.cooldown.remains>30|trinket.1.cooldown.ready)&(!trinket.2.has_use_buff|trinket.2.cooldown.remains>30|trinket.2.cooldown.ready)|raid_event.adds.exists&(!raid_event.adds.up&(raid_event.adds.duration+raid_event.adds.in<25|raid_event.adds.in>60)|raid_event.adds.up&raid_event.adds.remains>10)|active_enemies>1|fight_remains<25) actions+=/call_action_list,name=cds actions+=/call_action_list,name=trinkets actions+=/call_action_list,name=st,if=active_enemies<3|!talent.trick_shots actions+=/call_action_list,name=trickshots,if=active_enemies>2 actions.cds=invoke_external_buff,name=power_infusion,if=buff.trueshot.remains>12 actions.cds+=/berserking,if=buff.trueshot.up|fight_remains<13 actions.cds+=/blood_fury,if=buff.trueshot.up|cooldown.trueshot.remains>30|fight_remains<16 actions.cds+=/ancestral_call,if=buff.trueshot.up|cooldown.trueshot.remains>30|fight_remains<16 actions.cds+=/fireblood,if=buff.trueshot.up|cooldown.trueshot.remains>30|fight_remains<9 actions.cds+=/lights_judgment,if=buff.trueshot.down actions.cds+=/potion,if=buff.trueshot.up&(buff.bloodlust.up|target.health.pct<20)|fight_remains<26 actions.cds+=/salvo,if=active_enemies>2|cooldown.volley.remains<10 actions.st=steady_shot,if=talent.steady_focus&(steady_focus_count&buff.steady_focus.remains<5|buff.steady_focus.down&!buff.trueshot.up) actions.st+=/aimed_shot,if=buff.trueshot.up&full_recharge_time1 actions.st+=/rapid_fire,if=talent.surging_shots|action.aimed_shot.full_recharge_time>action.aimed_shot.cast_time+cast_time actions.st+=/kill_shot actions.st+=/trueshot,if=variable.trueshot_ready actions.st+=/multishot,if=buff.salvo.up&!talent.volley actions.st+=/aimed_shot,target_if=min:dot.serpent_sting.remains+action.serpent_sting.in_flight_to_target*99-target.is_boss*99,if=talent.serpentstalkers_trickery&(buff.precise_shots.down|(buff.trueshot.up|full_recharge_timeexecute_time&active_enemies>1) actions.st+=/aimed_shot,target_if=max:debuff.latent_poison.stack,if=buff.precise_shots.down|(buff.trueshot.up|full_recharge_timeexecute_time&active_enemies>1 actions.st+=/volley actions.st+=/rapid_fire actions.st+=/wailing_arrow,if=buff.trueshot.down actions.st+=/kill_command,if=buff.trueshot.down actions.st+=/steel_trap actions.st+=/chimaera_shot,if=buff.precise_shots.up|focus>cost+action.aimed_shot.cost actions.st+=/arcane_shot,if=buff.precise_shots.up|focus>cost+action.aimed_shot.cost actions.st+=/bag_of_tricks,if=buff.trueshot.down actions.st+=/steady_shot actions.trickshots=steady_shot,if=talent.steady_focus&steady_focus_count&buff.steady_focus.remains<8 actions.trickshots+=/kill_shot,if=buff.razor_fragments.up actions.trickshots+=/explosive_shot actions.trickshots+=/death_chakram actions.trickshots+=/stampede actions.trickshots+=/wailing_arrow actions.trickshots+=/serpent_sting,target_if=min:dot.serpent_sting.remains,if=refreshable&talent.hydras_bite&!talent.serpentstalkers_trickery actions.trickshots+=/barrage,if=active_enemies>7 actions.trickshots+=/volley actions.trickshots+=/trueshot,if=buff.trueshot.down actions.trickshots+=/rapid_fire,if=buff.trick_shots.remains>=execute_time&talent.surging_shots actions.trickshots+=/aimed_shot,target_if=min:dot.serpent_sting.remains+action.serpent_sting.in_flight_to_target*99-target.is_boss*99,if=talent.serpentstalkers_trickery&(buff.trick_shots.remains>=execute_time&(buff.precise_shots.down|buff.trueshot.up|full_recharge_time=execute_time&(buff.precise_shots.down|buff.trueshot.up|full_recharge_time=execute_time actions.trickshots+=/chimaera_shot,if=buff.trick_shots.up&buff.precise_shots.up&focus>cost+action.aimed_shot.cost&active_enemies<4 actions.trickshots+=/multishot,if=buff.trick_shots.down|(buff.precise_shots.up|buff.bulletstorm.stack=10)&focus>cost+action.aimed_shot.cost actions.trickshots+=/serpent_sting,target_if=min:dot.serpent_sting.remains,if=refreshable&talent.poison_injection&!talent.serpentstalkers_trickery actions.trickshots+=/steel_trap,if=buff.trueshot.down actions.trickshots+=/kill_shot,if=focus>cost+action.aimed_shot.cost actions.trickshots+=/multishot,if=focus>cost+action.aimed_shot.cost actions.trickshots+=/bag_of_tricks,if=buff.trueshot.down actions.trickshots+=/steady_shot actions.trinkets=variable,name=sync_ready,value=variable.trueshot_ready actions.trinkets+=/variable,name=sync_active,value=buff.trueshot.up actions.trinkets+=/variable,name=sync_remains,value=cooldown.trueshot.remains actions.trinkets+=/variable,name=trinket_1_stronger,value=!trinket.2.has_cooldown|trinket.1.has_use_buff&(!trinket.2.has_use_buff|trinket.2.cooldown.durationtrinket.1.cooldown.duration%2|trinket.2.has_use_buff&trinket.2.cooldown.remains>variable.sync_remains-15&trinket.2.cooldown.remains-5fight_remains)|variable.trinket_2_stronger&(trinket.2.cooldown.remains&(trinket.2.cooldown.remains-5=20|trinket.2.cooldown.remains-5>=variable.sync_remains&(variable.sync_remains>trinket.1.cooldown.duration%2|trinket.1.cooldown.durationfight_remains)))|trinket.2.cooldown.ready&variable.sync_remains>20&variable.sync_remains20|trinket.2.cooldown.remains>20)))|target.time_to_die<25&(variable.trinket_1_stronger|trinket.2.cooldown.remains) actions.trinkets+=/use_item,use_off_gcd=1,slot=trinket2,if=trinket.2.has_use_buff&(variable.sync_ready&(variable.trinket_2_stronger|trinket.1.cooldown.remains)|!variable.sync_ready&(variable.trinket_2_stronger&(variable.sync_remains>trinket.2.cooldown.duration%2|trinket.1.has_use_buff&trinket.1.cooldown.remains>variable.sync_remains-15&trinket.1.cooldown.remains-5fight_remains)|variable.trinket_1_stronger&(trinket.1.cooldown.remains&(trinket.1.cooldown.remains-5=20|trinket.1.cooldown.remains-5>=variable.sync_remains&(variable.sync_remains>trinket.2.cooldown.duration%2|trinket.2.cooldown.durationfight_remains)))|trinket.1.cooldown.ready&variable.sync_remains>20&variable.sync_remains20|trinket.1.cooldown.remains>20)))|target.time_to_die<25&(variable.trinket_2_stronger|trinket.1.cooldown.remains)