[TC] Bomb Snapshotting for better DPS: Fact or fiction?
Posted: Thu Jun 19, 2014 7:40 am
If you ask for "How to increase my dps" advice in forums, one suggestion that often pops up is "refresh your bombs if you get a trinket/meta proc". The common term used for this is "snapshotting". This is so popularly recognized as an improvement technique, that even reputable guides recommend doing it as part of the frost rotation.
Personally I've always been a skeptic, because I haven't seen any convincing evidence of snapshotting giving benefits. Unlike Moonkin or Warlocks, our mage bombs only last for 12 seconds, can't have their strength copied and spread to other targets, and don't offer us supercharged attacks as powerful as Starsurge. Napkin math also creates questions: on single target, bombs are only 10-20% of a frost mage's damage. How much stronger would snapshotting need to make bombs, to be worth spending more than 1 GCD each 12 seconds?
As a SimC APL writer, the obvious thing to do is write commands and make robo-mage do my bidding. But first we'll have to define the question more precisely:
Does snapshotting Living Bomb, on a 450 second Single Target Patchwerk encounter, increase the DPS of a ilvl 588 Frost Mage?
Part 1: How do we make SimC Snapshot Living Bomb?
Let's start with figuring out how exactly we can make robo-mage snapshot.
Case 1: "Refresh Living Bomb only when you have a meta gem proc/bloodlust AND trinket proc EXTRA when compared to current bomb, and 2 or less ticks remain on it."
This is a very conservative way of snapshotting - it mostly happens only if you suddenly have trinkets and meta gems line up at the same time in the middle of the fight.
Case 2: "Refresh Living Bomb only when you have EITHER a meta gem proc/bloodlust OR trinket proc EXTRA when compared to the current bomb, and 2 or less ticks remain on it."
This is basically a looser case of Case 1. It happens a lot more often, and usually means you snapshot whenever you get a meta proc or trinket proc mid fight.
Case 3: "Refresh Living Bomb only when EITHER meta gem proc OR bloodlust is about to expire, AND 2 or less ticks remain on the current bomb."
This is to test the common "snapshot meta or bloodlust before they run out because extra ticks give you more FFBs".
Case 4: "Refresh Living Bomb only if you have HWF BBoY, the proc is at 9-10 stacks, and your current bomb has 2 or less ticks remaining."
This is an extreme case for reference. If snapshotting works at all, surely the 32K intellect buff would do the job?
Part 2: When should we Snapshot Living Bomb?
This question isn't the same as part 1. The question "When" isn't referring to the what buffs you have or their duration. It's a question of where you fit it into your rotation - do you do it when you have a BF proc available? What about FoF, 1 or 2 stack? What about during AT?
While I didn't test this extensively, the existing profile puts BF ahead of LB refreshes. This produces 99% LB uptime, and allows minimal proc munching. Obviously, snapshotting is of lower priority than the regular bomb refresh, and therefore also BF. The only question is whether it should be ahead of Ice Lance. Sample tests said it didn't matter, and I wanted to avoid proc munching, so I opted to place it at just above Frostbolt. This means that snapshotting LB casts will only be done if there's no proc to use, and the alternative was to cast frostbolt.
Part 3: Results
A picture is worth a thousand words, so let me just show it to you:

450 seconds single target Patchwerk, Error bar ~67.4 DPS, 250K iterations
Conclusions:
1. Trinkets and meta gems alone are not worth early refreshes.
2. Trinket and meta gems together still aren't worth early refreshes.
3. Snapshotting the very last second of a meta/lust proc barely breaks even.
4. Snapshotting 10 stack BBoYs is probably worth it.
5. Even if you're a god at snapshotting and do it in the best case (HWF BBoY 10 stacks), don't expect more than a ~0.2% DPS increase on average.
In realistic situations, snapshotting requires concentration. If even the best snapshotting in the world can't get you more than a microscopic gain, it's going to cost you elsewhere. Overall, I conclude that:
Snapshotting on single target fights is not a DPS increase.
Part 4: What next?
Well, the sample BiS frost profile is a 14242 gcd-cap haste build, and some folks have suggested that it's a suboptimal haste BP for snapshotting. The 18960/19347 haste BP builds with more crit should have higher ratios of Living Bomb damage, compared to 10-12% LB damage on the 14242 gcd-cap haste build. Will it have different results? I'm not hopeful, but we'll see.
EDIT: Link for Part 5 19347 haste build: http://altered-time.com/forum/viewtopic ... =212#p2109" target="_blank
Personally I've always been a skeptic, because I haven't seen any convincing evidence of snapshotting giving benefits. Unlike Moonkin or Warlocks, our mage bombs only last for 12 seconds, can't have their strength copied and spread to other targets, and don't offer us supercharged attacks as powerful as Starsurge. Napkin math also creates questions: on single target, bombs are only 10-20% of a frost mage's damage. How much stronger would snapshotting need to make bombs, to be worth spending more than 1 GCD each 12 seconds?
As a SimC APL writer, the obvious thing to do is write commands and make robo-mage do my bidding. But first we'll have to define the question more precisely:
Does snapshotting Living Bomb, on a 450 second Single Target Patchwerk encounter, increase the DPS of a ilvl 588 Frost Mage?
Part 1: How do we make SimC Snapshot Living Bomb?
Let's start with figuring out how exactly we can make robo-mage snapshot.
Case 1: "Refresh Living Bomb only when you have a meta gem proc/bloodlust AND trinket proc EXTRA when compared to current bomb, and 2 or less ticks remain on it."
Code: Select all
actions+=/living_bomb,if=talent.living_bomb.enabled&80%spell_haste>dot.living_bomb.haste_pct&stat.spell_power*0.8>dot.living_bomb.spell_power&ticks_remain<=2&target.time_to_die>tick_time*3
Case 2: "Refresh Living Bomb only when you have EITHER a meta gem proc/bloodlust OR trinket proc EXTRA when compared to the current bomb, and 2 or less ticks remain on it."
Code: Select all
actions+=/living_bomb,if=talent.living_bomb.enabled&100%spell_haste>=dot.living_bomb.haste_pct&stat.spell_power*0.8>dot.living_bomb.spell_power&ticks_remain<=2&target.time_to_die>tick_time*3
actions+=/living_bomb,if=talent.living_bomb.enabled&80%spell_haste>dot.living_bomb.haste_pct&stat.spell_power>=dot.living_bomb.spell_power&ticks_remain<=2&target.time_to_die>tick_time*3
Case 3: "Refresh Living Bomb only when EITHER meta gem proc OR bloodlust is about to expire, AND 2 or less ticks remain on the current bomb."
Code: Select all
actions+=/living_bomb,cycle_targets=1,if=talent.living_bomb.enabled&ticks_remain<=2&((buff.tempus_repit.up&buff.tempus_repit.remains<action.frostbolt.execute_time)|(buff.bloodlust.up&buff.bloodlust.remains<action.frostbolt.execute_time))
Case 4: "Refresh Living Bomb only if you have HWF BBoY, the proc is at 9-10 stacks, and your current bomb has 2 or less ticks remaining."
Code: Select all
actions+=/living_bomb,if=talent.living_bomb.enabled&ticks_remain<=2&trinket.stacking_stat.intellect.up&trinket.stacking_stat.intellect.remains<action.frostbolt.execute_time
Part 2: When should we Snapshot Living Bomb?
This question isn't the same as part 1. The question "When" isn't referring to the what buffs you have or their duration. It's a question of where you fit it into your rotation - do you do it when you have a BF proc available? What about FoF, 1 or 2 stack? What about during AT?
While I didn't test this extensively, the existing profile puts BF ahead of LB refreshes. This produces 99% LB uptime, and allows minimal proc munching. Obviously, snapshotting is of lower priority than the regular bomb refresh, and therefore also BF. The only question is whether it should be ahead of Ice Lance. Sample tests said it didn't matter, and I wanted to avoid proc munching, so I opted to place it at just above Frostbolt. This means that snapshotting LB casts will only be done if there's no proc to use, and the alternative was to cast frostbolt.
Part 3: Results
A picture is worth a thousand words, so let me just show it to you:

450 seconds single target Patchwerk, Error bar ~67.4 DPS, 250K iterations
Conclusions:
1. Trinkets and meta gems alone are not worth early refreshes.
2. Trinket and meta gems together still aren't worth early refreshes.
3. Snapshotting the very last second of a meta/lust proc barely breaks even.
4. Snapshotting 10 stack BBoYs is probably worth it.
5. Even if you're a god at snapshotting and do it in the best case (HWF BBoY 10 stacks), don't expect more than a ~0.2% DPS increase on average.
In realistic situations, snapshotting requires concentration. If even the best snapshotting in the world can't get you more than a microscopic gain, it's going to cost you elsewhere. Overall, I conclude that:
Snapshotting on single target fights is not a DPS increase.
Part 4: What next?
Well, the sample BiS frost profile is a 14242 gcd-cap haste build, and some folks have suggested that it's a suboptimal haste BP for snapshotting. The 18960/19347 haste BP builds with more crit should have higher ratios of Living Bomb damage, compared to 10-12% LB damage on the 14242 gcd-cap haste build. Will it have different results? I'm not hopeful, but we'll see.
EDIT: Link for Part 5 19347 haste build: http://altered-time.com/forum/viewtopic ... =212#p2109" target="_blank