Theck's MATLAB TPS analysis  WotLK/3.x
Moderators: Fridmarr, Worldie, Aergis, theckhd
Hmm on the parse you linked it seesm you got unlucky (or lucky depending on how you look at it). You only avoided hit attacks 41.9% of the time which only served to enhance Holyshield further.
Amirya wrote:some bizarre lovechild of Hawking, Einstein, and Theck

majiben  Moderator
 Posts: 6999
 Joined: Fri Aug 22, 2008 4:37 pm
 Location: Retired
PsiVen wrote:Surely that's true for bosses that don't melee, but have you examined the results on a scale of say, faster than Patchwerk to uninterrupted KT in terms of HS contribution to relative stat values? I apologize if this has been examined already, but I wasn't able to find something like this.
No, I haven't. For a boss with a 2.0 swing speed, and with as much avoidance as we have, HS only does roughly 100150 dps, because you only ever get 1 or 2 charges used up. However, on a boss that swings faster, and thus eats up more holy shield charges, Holy Shield damage can increase dramatically (factors of 2 or 3). Especially on dualwielding bosses.
When I get some time, I'll make a plot of HS dps vs. boss swing speed to see where the crossover point is. I wouldn't be surprised if a boss like Patchwerk would take more damage from Holy Shield than Exorcism.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of GrehnSkipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty

theckhd  Moderator
 Posts: 7710
 Joined: Thu Jul 31, 2008 3:06 pm
 Location: Harrisburg, PA
If SoR, glyphed, catches up to SoV, the next question to ask would be:
Does Sealswapping substitution increase our threat? What if it's just used during Wings?
Effective Sealswapping requires 2 GCD's every 15 seconds. Assuming a typical 5 minute fight, that's 20 seal swaps. A 99% chance of applying the seal would give an 80% chance that the seal never falls off during the whole course of the fight. If you are given 2 seal applications(either 2 melee swings, or 1 swing and 1 HotR), then you need only a 90% chance of seal application to guarantee this.
Scenario 1: Maximum Overlap
Ideally, maximum overlap then, would be one melee + one HotR before your 15 seconds are up. This can be guaranteed by swapping in SoV @ 12 seconds, and swapping SoR back in @ 15 seconds.
Since this is a threat maneuver, let's use the 9's to swap these in, possibly pushing HS entirely off the table.
R6C6J6E6V6R6C6J6EV6 ... R6C6J6EV6
This pushes Consecration to a 15 second cycle, Judgement to a 15 second cycle and Exorcism on a 15 second cycle. The consecration threat glyph may outperform the judgement threat glyph in this case. (25% extra damage from consecration cast/15 seconds vs. 10% extra judgement damage). The decreased Judgement cycles loses LoO threat, as well as risks JotJ falling off. But again, this is a threat intensive fight since we're already dropping HS. This also frees a talent point from ImpJudge.
Calculations:
Consecration uptime: 8/15
Judgement uptime: 1 cast/15 seconds  always JoR
Exorcism uptime: 1 cast/15 seconds
SoR uptime: 12/15
SoV uptime: 3/15
HS uptime: 0%
LoO uptime: 40%
Scenario 2: HS substitution
Technique: Swap in seals instead of exorcism for Holy Shield.
R6C6J6V6C6J6R6C6J6V6C6J6 ... R6C6J6V6C6J6
Calculations:
Consecration uptime: default 969
Judgement uptime: default 969
Exorcism uptime: 0%
SoR uptime: 9/18
SoV uptime: 9/18
HS uptime: 0%
LoO uptime: 4/6
Scenario 3: HSJsubs
This scenario is HSsub with every other Judgement getting subbed out, too:
V6C6R6E6C6J6V6C6R6E6C6J6 ... V6C6R6E6C6J6
Calculations:
Consecration uptime: default 969
Judgement uptime: 50% of default 969
Exorcism uptime: default HSsub (1 cast/18 seconds)
SoR uptime: 12/18
SoV uptime: 6/18
HS uptime: 0%
LoO uptime: 2/6
Scenario 4: HSCsubs
This scenario is HSsub with every other Consecration getting subbed out, too:
V6J6R6E6J6C6V6J6R6E6J6C6 ... V6J6R6E6J6C6
Calculations:
Consecration uptime: 50% of default 969
Judgement uptime: default 969
Exorcism uptime: default HSsub (1 cast/18 seconds)
SoR uptime: 12/18
SoV uptime: 6/18
HS uptime: 0%
LoO uptime: 4/6
UPDATE: Fixed numbers for SoV/SoR uptime and LoO uptime.
Does Sealswapping substitution increase our threat? What if it's just used during Wings?
Effective Sealswapping requires 2 GCD's every 15 seconds. Assuming a typical 5 minute fight, that's 20 seal swaps. A 99% chance of applying the seal would give an 80% chance that the seal never falls off during the whole course of the fight. If you are given 2 seal applications(either 2 melee swings, or 1 swing and 1 HotR), then you need only a 90% chance of seal application to guarantee this.
Scenario 1: Maximum Overlap
Ideally, maximum overlap then, would be one melee + one HotR before your 15 seconds are up. This can be guaranteed by swapping in SoV @ 12 seconds, and swapping SoR back in @ 15 seconds.
Since this is a threat maneuver, let's use the 9's to swap these in, possibly pushing HS entirely off the table.
R6C6J6E6V6R6C6J6EV6 ... R6C6J6EV6
This pushes Consecration to a 15 second cycle, Judgement to a 15 second cycle and Exorcism on a 15 second cycle. The consecration threat glyph may outperform the judgement threat glyph in this case. (25% extra damage from consecration cast/15 seconds vs. 10% extra judgement damage). The decreased Judgement cycles loses LoO threat, as well as risks JotJ falling off. But again, this is a threat intensive fight since we're already dropping HS. This also frees a talent point from ImpJudge.
Calculations:
Consecration uptime: 8/15
Judgement uptime: 1 cast/15 seconds  always JoR
Exorcism uptime: 1 cast/15 seconds
SoR uptime: 12/15
SoV uptime: 3/15
HS uptime: 0%
LoO uptime: 40%
Scenario 2: HS substitution
Technique: Swap in seals instead of exorcism for Holy Shield.
R6C6J6V6C6J6R6C6J6V6C6J6 ... R6C6J6V6C6J6
Calculations:
Consecration uptime: default 969
Judgement uptime: default 969
Exorcism uptime: 0%
SoR uptime: 9/18
SoV uptime: 9/18
HS uptime: 0%
LoO uptime: 4/6
Scenario 3: HSJsubs
This scenario is HSsub with every other Judgement getting subbed out, too:
V6C6R6E6C6J6V6C6R6E6C6J6 ... V6C6R6E6C6J6
Calculations:
Consecration uptime: default 969
Judgement uptime: 50% of default 969
Exorcism uptime: default HSsub (1 cast/18 seconds)
SoR uptime: 12/18
SoV uptime: 6/18
HS uptime: 0%
LoO uptime: 2/6
Scenario 4: HSCsubs
This scenario is HSsub with every other Consecration getting subbed out, too:
V6J6R6E6J6C6V6J6R6E6J6C6 ... V6J6R6E6J6C6
Calculations:
Consecration uptime: 50% of default 969
Judgement uptime: default 969
Exorcism uptime: default HSsub (1 cast/18 seconds)
SoR uptime: 12/18
SoV uptime: 6/18
HS uptime: 0%
LoO uptime: 4/6
UPDATE: Fixed numbers for SoV/SoR uptime and LoO uptime.
Last edited by cordelia on Sun Mar 15, 2009 9:19 am, edited 5 times in total.
Cordelia, Council Member of Unleashed
TankadinPoints Theory & Breakdown
TankadinPoints Theory & Breakdown

cordelia  Posts: 630
 Joined: Tue Oct 09, 2007 3:33 am
Dorvan wrote:reck_uptime = (1(10.02.*Reck_points.*(1player_avoid))^(min(8,4*weapon_swing_speed)/swing_timer)
Of course, this model also doesn't take into consideration any boss actions aside from their standard melee swing, and even then doesn't consider parry haste.
OK. I'm very confused by this.
The term:
 Code: Select all
(10.02.*Reck_points.*(1player_avoid))
seems to represent the chance that reckoning will fail to proc when a boss attacks the player.
The term:
 Code: Select all
(min(8,4*weapon_swing_speed)/swing_timer)
seems to represent the amount of time reckoning is up divided by the boss swing timer? i.e. the number of attempts reckoning has to proc over an 8 second period.
Thus, you are exponentiating the chance reckoning will fail to proc by the # of attempts reckoning has to proc over an 8 second period.
This should represent the chance that reckoning fails to proc over an 8 second period.
1  this value represents the chance that reckoning does proc over an 8 second period, or the chance that you will get a chain reckoning proc.
The logical leap I'm missing is what this has to do with reckoning uptime.
Let's make this concrete: Assuming weapon_swing_speed of 2.0, and swing_timer of 2.0, 5 points in reckoning, and 50% player avoidance, the calculation comes out to:
 Code: Select all
reck_uptime = 1(10.02.*5*(1.5))^(min(8,4*2)/2)
reck_uptime = 1(10.10*(.5))^(4)
reck_uptime = 1(10.05)^(4)
reck_uptime = 0.185
That means that reckoning has an 18.5% chance to reproc during the 8 seconds after you receive a reckoning proc. Can someone explain to me why this directly translates into reckoning uptime? I have a feeling it's correct, but I can't seem to prove it to myself.
Cordelia, Council Member of Unleashed
TankadinPoints Theory & Breakdown
TankadinPoints Theory & Breakdown

cordelia  Posts: 630
 Joined: Tue Oct 09, 2007 3:33 am
At any time, Reckoning is active if and only if there has been a reckoning proc within the last 8 seconds or 4*weapon swings. That the key: what's really being calculated is the probability that you got a proc within the last few seconds....there's no notion of a reproc happening there. If your calculate the probability that there has been a Reckoning proc within that time frame, that probability is equal to the overall uptime of Reckoning. In other words if at any point in time there is an 18.5% chance that Reckoning is active, that's the same as saying Reckoning has an 18.5% uptime.
WHAT WOULD BEST DESCRIBE YOUR PERSONALITY?
Moonlight Sonata Techno Remix
Scriggle  85 Fire Mage
Fizzmore  81 Mut Rogue
Adorania  80 Disc Priest

Dorvan  Maintankadonor
 Posts: 8462
 Joined: Wed Apr 04, 2007 3:28 pm
@cordelia
I'm not sure were Dorvan got the formula but it's the same as the one in http://elitistjerks.com/f47/t21822proc_mechanics/ for uptime without internal cooldown, some reading there could help to understand better the formula.
I'm not sure were Dorvan got the formula but it's the same as the one in http://elitistjerks.com/f47/t21822proc_mechanics/ for uptime without internal cooldown, some reading there could help to understand better the formula.

Adanel  Posts: 46
 Joined: Fri Dec 19, 2008 6:07 am
 Location: Brazil
Dorvan wrote:At any time, Reckoning is active if and only if there has been a reckoning proc within the last 8 seconds or 4*weapon swings. That the key: what's really being calculated is the probability that you got a proc within the last few seconds....there's no notion of a reproc happening there. If your calculate the probability that there has been a Reckoning proc within that time frame, that probability is equal to the overall uptime of Reckoning. In other words if at any point in time there is an 18.5% chance that Reckoning is active, that's the same as saying Reckoning has an 18.5% uptime.
Ok. This makes sense. It establishes a good upper bound for reckoning. It should be noted that actual reckoning uptime will be less than this, primarily due to (a) the first 8 seconds of the fight, and (b) long lapses between boss attacks, eg. vortex or sapph air phase.
For the record I did some quick mental calculations for expected reckoning uptime in the situation I posted above. I got 17.6% expected reckoning uptime.
Reckoning uptime with Spell Effects  Best Case Scenario
The fact that SoR is approaching SoV behooves us to look much more closely at Reckoning. Let's take a second example: Expected reckoning uptime for Sapphiron.
Taking a random WWS for a 5:03 long Sapphiron with a warrior tank, I arrived at the following incoming tank damage:
Physical: 132 (melee + cleave)
Frost: 155
Shadow: 3
DPS time: 78% (melee range)
Over 303 seconds, the warrior was in melee range for 236 seconds.
Average physical attack frequency: 1.79 (236/132)
Average magical attack frequency: 1.91 (303/158)
Let's assume 50% avoidance. According to our formulas above:
 Code: Select all
reck_uptime_melee = 1(10.10*(10.5))^(min(8,4*weapon_swing_speed)/1.79) = 1  0.95^(min(8,4*weapon_swing_speed)/1.79)
reck_uptime_magic = 1(10.10)^(min(8,4*weapon_swing_speed)/1.91) = 1  0.90^(min(8,4*weapon_swing_speed)/1.91)
That makes total reckoning uptime =
 Code: Select all
reck_uptime = 1  (1reck_uptime_melee)*(1reck_uptime_magic)
reck_uptime = 1  ((0.95)^(min(8,4*weapon_swing_speed)/1.79))*((0.90)^(min(8,4*weapon_swing_speed)/1.91))
reck_uptime = 1  ((0.95^(1/1.79))*(0.90^(1/1.91)))^(min(8,4*weapon_swing_speed))
For Last Laugh:
 Code: Select all
reck_uptime = 1  ((0.95^(1/1.79))*(0.90^(1/1.91)))^6.4
reck_uptime = 41.5%
For Broken Promise:
 Code: Select all
reck_uptime = 1  ((0.95^(1/1.79))*(0.90^(1/1.91)))^8
reck_uptime = 48.9%
Imagine the threat you could produce tanking the drakes on Sarth3d if you pulled 23 adds to you first, and just let them beat on you while using glyphed SoR.
Cordelia, Council Member of Unleashed
TankadinPoints Theory & Breakdown
TankadinPoints Theory & Breakdown

cordelia  Posts: 630
 Joined: Tue Oct 09, 2007 3:33 am
Jonesy wrote:Yeah, I noticed that. What was the method you used to arrive at your default gear?
I looked at my character sheet. Sort of.
I started by just going with full T7.25, and then filling in the gaps with stuff I had. Everything is gemmed for tanking though, rather than threat. To compensate, it's a little slanted towards a blockvalue set, rather than a max avoidance set.
cordelia, I can crank out the numbers for those rotations when I get time, but I have some questions about your calculations for each:
 Does "SoV uptime" refer to the DoT, or the seal itself? I presume it's the DoT, since it's the only thing that matters for the calculations.
 Does "LoO uptime" refer to the % of ShoR's that see the effect? It seems this way from your first rotation (2/5 ShoR's see the effect for the first two cycles), but the HS substitution should only have 50% LoO uptime (3/6 ShoR's see the effect for the first two cycles).
My guess is that seal weaving won't be useful, because the net DPS loss of having to recast seals continuously will offset the gain of SoV uptime, but the numbers have proven my intuition wrong before.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of GrehnSkipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty

theckhd  Moderator
 Posts: 7710
 Joined: Thu Jul 31, 2008 3:06 pm
 Location: Harrisburg, PA
It might be better to choose a 4/5 T7.25 or a 2/5 as those are a bit more realistic than full 5/5. which pieces to pick from is harder for the 4/5 than the 2/5.
Amirya wrote:some bizarre lovechild of Hawking, Einstein, and Theck

majiben  Moderator
 Posts: 6999
 Joined: Fri Aug 22, 2008 4:37 pm
 Location: Retired
cordelia wrote:Ok. This makes sense. It establishes a good upper bound for reckoning. It should be noted that actual reckoning uptime will be less than this, primarily due to (a) the first 8 seconds of the fight, and (b) long lapses between boss attacks, eg. vortex or sapph air phase.
Yeah, I agree, although (a) is a relatively small effect, and (b) applies to basically all theorycrafting...almost any DPS or threat analysis assumes continuous action against a stationary boss.
WHAT WOULD BEST DESCRIBE YOUR PERSONALITY?
Moonlight Sonata Techno Remix
Scriggle  85 Fire Mage
Fizzmore  81 Mut Rogue
Adorania  80 Disc Priest

Dorvan  Maintankadonor
 Posts: 8462
 Joined: Wed Apr 04, 2007 3:28 pm
theckhd wrote:cordelia, I can crank out the numbers for those rotations when I get time, but I have some questions about your calculations for each:
 Does "SoV uptime" refer to the DoT, or the seal itself? I presume it's the DoT, since it's the only thing that matters for the calculations.
 Does "LoO uptime" refer to the % of ShoR's that see the effect? It seems this way from your first rotation (2/5 ShoR's see the effect for the first two cycles), but the HS substitution should only have 50% LoO uptime (3/6 ShoR's see the effect for the first two cycles).
My guess is that seal weaving won't be useful, because the net DPS loss of having to recast seals continuously will offset the gain of SoV uptime, but the numbers have proven my intuition wrong before.
SoV uptime should refer to the seal itself. The DoT effect should have 100% uptime for all scenarios (I think  SoV is always resealed with at least 3 seconds left on DoT in these scenarios). These numbers have been edited b/c I realized I made some mistakes.
LoO uptime is what you presumed it was. I thought default 969 had 100% LoO uptime, but I was wrong, it only has 66%, so all numbers adjusted accordingly.
Cordelia, Council Member of Unleashed
TankadinPoints Theory & Breakdown
TankadinPoints Theory & Breakdown

cordelia  Posts: 630
 Joined: Tue Oct 09, 2007 3:33 am
cordelia wrote:
LoO uptime is what you presumed it was. I thought default 969 had 100% LoO uptime, but I was wrong, it only has 66%, so all numbers adjusted accordingly.
It depends on your frame of reference. If you look at it as uptime with respect to judgements cast, it is 100%, but if you look at it as uptime with respect to ShoR's cast, it is 66.7% given that we have 3 ShoR's per 18s in a 96969 rotation.
In all practicality, it has a 100% uptime in the sense that it is up as many times as mechanically possible, but for the sake of ShoR math, it is 66.7%.

jere  Posts: 2957
 Joined: Fri May 11, 2007 5:12 pm
jere wrote:It depends on your frame of reference. If you look at it as uptime with respect to judgements cast, it is 100%, but if you look at it as uptime with respect to ShoR's cast, it is 66.7% given that we have 3 ShoR's per 18s in a 96969 rotation.
In all practicality, it has a 100% uptime in the sense that it is up as many times as mechanically possible, but for the sake of ShoR math, it is 66.7%.
Well, the reason I asked is that what matters for the calculation is how many ShoR's get the bonus damage effect. So measuring it in the second sense you listed (2/3 casts for example) is the most useful to me.
Majiben wrote:It might be better to choose a 4/5 T7.25 or a 2/5 as those are a bit more realistic than full 5/5. which pieces to pick from is harder for the 4/5 than the 2/5.
It depends though. You could make an argument for almost any set of gear  T7 is just easy because it's the most accessible. You don't need to be doing any "hardmode" achievements to get it, and token drops, annoying as they are, are still more reliable than the offset pieces.
For example, I still don't have the Unholy Knight bracers, because we've only seen one pair ever.
I'm open to suggestions on the "default" gear set though. We'd have to decide whether to lean more heavily towards avoidance or block, or somewhere in between.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of GrehnSkipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty

theckhd  Moderator
 Posts: 7710
 Joined: Thu Jul 31, 2008 3:06 pm
 Location: Harrisburg, PA
Do the Broken Promise calculations account for the fact that it is too slow to use up all 4 charges of Reckoning? The maximum weapon speed that can use all 4 charges is 2.0 (8 sec duration / 4 charges).
For every proc Last Laugh gets 4 extra attacks and Broken Promise only gets 3.
For every proc Last Laugh gets 4 extra attacks and Broken Promise only gets 3.
 Laz
 Posts: 73
 Joined: Sat Jan 31, 2009 9:24 pm
Return to Advanced Theorycraft and Calculations
Who is online
Users browsing this forum: matthewseidl and 1 guest