Remove Advertisements

Theck's MATLAB thread - Cataclysm/4.x

Warning: Theorycraft inside.

Moderators: Fridmarr, Worldie, Aergis, theckhd

Theck's MATLAB thread - Cataclysm/4.x

Postby theckhd » Wed Jul 28, 2010 6:39 am

This thread contains a variety of calculations relevant to paladin tanking, primarily focused on threat and damage output. The first 10 posts or so are summaries of the results of these calculations, which you can access via the table of contents below.

This thread is for discussion of the Cataclysm/4.x version of the code base. For information on the older version that modeled Wrath of the Lich King mechanics, please see the WotLK/3.x thread.

The code is hosted on Google Code, and is available for public review/consumption. If you're interested in contributing to the project, please see the Code section for more information.


Table of Contents



Mechanical Changes in 4.3
  • Judgement of Truth damage increased by 20% per stack of censure, up from 10%/stack.
  • Blessing of Might now grants 20% melee attack power, up from 10%.
  • 2-piece T13: Judgement grants an absorption shield equal to 25% of the damage dealt.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:40 am

Default Gear Set

I'm keeping an evolving list of gear sets this expansion. The first one will always be a "pre-raid" set comprised of gear obtainable without raiding. It will use a few crafted/rep epics, epic ilvl 353 items from ZA/ZG where possible, and justice point gear where it can.

I'll also have a "normal" and "heroic" gear set for each tier of content. I'll generally be using the "normal" gear set early in a patch cycle to model the gear you'd likely be wearing to progress through heroic modes. Near the end of the patch cycle (e.g. 4.1 in anticipation of 4.2), I'll update the sims to use the heroic tier set to account for gear inflation.

All of these sets will mastery-heavy survival sets, until we see gearing trends deviate from this strategy. Similarly, they will remain precariously low on hit and expertise until it's proven that we're better-off gearing otherwise.

Enchants are the same for all sets:
Head: [Arcanum of the Earthen Ring]
Shoulders: [Greater Inscription of Unbreakable Quartz]
Cloak: [Enchant Cloak - Protection]
Chest: [Enchant Chest - Greater Stamina]
Wrist: [Enchant Bracer - Dodge]
Hands: [Enchant Gloves - Greater Mastery]
Legs: [Charscale Leg Armor]
Boots: [Enchant Boots - Mastery]
Finger(s): [Enchant Ring - Greater Stamina]
Weapon: [Enchant Weapon - Windwalk]
Shield: [Enchant Shield - Blocking] (~36 Mastery)

I'm using two different gemming templates in the sets. All of the sets up to and including the T13 Raidfinder use a mastery-heavy gemming strategy. Prismatic sockets in this first template use yellow (Fractured) gems instead of Solid Ocean Sapphires.
Gem Template #1
Meta Gem: [Austere Shadowspirit Diamond]
Blue Socket: [Puissant Dream Emerald]
Yellow Socket: [Fractured Amberjewel]
Red Socket: [Fine Ember Topaz]
Prismatic Socket: [Fractured Amberjewel]

The second gem template is used for the T13 normal and heroic sets. These two sets cap out CTC (and thus waste a lot of mastery) if I use the first gem template, so I'm using a stam-heavy gem template instead and tweaking the reforging to get close to block-cap. Both of these sets can easily hit block cap with the change of one gem or reforge.
Gem Template #2
Meta Gem: [Austere Shadowspirit Diamond]
Blue Socket: [Solid Ocean Sapphire]
Yellow Socket: [Puissant Dream Emerald]
Red Socket: [Defender's Demonseye]
Prismatic Socket: [Solid Ocean Sapphire]


Pre-raid set:
(mastery-heavy gem template)
Head: [Annihilan Helm]
Neck: [Stoneheart Necklace]
Shoulder: [Pauldrons of the Dragonblight], reforged parry->mastery
Back: [Iceward Cloak]
Chest: [Breastplate of Tarnished Bronze]
Wrist: [Bracers of Regal Force], reforged dodge->mastery
Hands: [Immolation Handguards]
Waist: [Girdle of Lost Heroes]
Legs: [Immolation Legguards]
Feet: [Chrono Boots], reforged exp->mastery
Finger #1: [Queen's Boon], reforged dodge->mastery
Finger #2: [Deflecting Brimstone Band]
Trinket #1: [Veil of Lies]
Trinket #2: [Stay of Execution], reforged dodge->mastery
Weapon: Gavel of Peroth'arn
Shield: [Corrupted Carapace]
Libram: [Deathclutch Figurine], reforged dodge->mastery


T11 Normal:
(mastery-heavy gem template)
Head: [Reinforced Sapphirium Faceguard]
Neck: [Ironstar Amulet]
Shoulders: [Reinforced Sapphirium Shoulderguards]
Back: [Wrap of the Great Turtle]
Chest: [Reinforced Sapphirium Chestguard]
Wrists: [Bracers of Impossible Strength]
Hands: [Reinforced Sapphirium Handguards]
Waist: [Hardened Elementium Girdle]
Legs: [Reinforced Sapphirium Legguards]
Feet: [Boots of Sullen Rock] / [Gryphon Rider's Boots]
Finger: [Ring of the Battle Anthem]
Finger: [Bile-O-Tron Nut]
Trinket: [Vial of Stolen Memories]
Trinket: [Unsolvable Riddle]
Weapon: [Mace of Acrid Death]
Shield: [Blockade's Lost Shield]
Relic: [Relic of Khaz'goroth]


T11 Heroic:
(mastery-heavy gem template)
Head: [Reinforced Sapphirium Faceguard]
Neck: [Ironstar Amulet]
Shoulders: [Reinforced Sapphirium Shoulderguards]
Back: [Wrap of the Great Turtle]
Chest: [Reinforced Sapphirium Chestguard]
Wrists: [Bracers of Impossible Strength]
Hands: [Reinforced Sapphirium Handguards]
Waist: [Jumbotron Power Belt]
Legs: [Reinforced Sapphirium Legguards]
Feet: [Molten Tantrum Boots]
Finger: [Ring of the Battle Anthem]
Finger: [Bile-O-Tron Nut]
Trinket: [Vial of Stolen Memories]
Trinket: [Unsolvable Riddle]
Weapon: [Mace of Acrid Death]
Shield: [Akmin-Kurai]
Relic: [Relic of Khaz'goroth]


T12 Normal:
(mastery-heavy gem template)
Head: [Helm of Blazing Glory]
Neck: [Stoneheart Necklace]
Shoulder: [Immolation Shoulderguards], reforged hit->dodge
Back: [Durable Flamewrath Greatcloak], reforged hit->mast
Chest: [Immolation Chestguard], reforged dodge->mast
Wrist: [Bracers of The Fiery Path]
Gloves: [Immolation Handguards]
Waist: [Uncrushable Belt of Fury], reforged exp->dodge
Legs: [Immolation Legguards]
Feet: [Mirrored Boots]
Finger: [Theck's Emberseal], reforged hit->mast
Finger: [Deflecting Brimstone Band]
Trinket: [Scales of Life]
Trinket: [Spidersilk Spindle]
Weapon: [Mandible of Beth'tilac]
Shield: [Shard of Torment], reforged parry->mast
Relic: [Deathclutch Figurine], reforged dodge->mast


T12 Heroic:
(mastery-heavy gem template)
Head: [Helm of Blazing Glory]
Neck: [Stoneheart Necklace]
Shoulder: [Immolation Shoulderguards], reforged hit->dodge
Back: [Dreadfire Drape], reforged hit->dodge, dual mastery gems
Chest: [Immolation Chestguard], reforged dodge->mast
Wrist: [Bracers of The Fiery Path]
Gloves: [Immolation Handguards]
Waist: [Uncrushable Belt of Fury], reforged exp->dodge
Legs: [Immolation Legguards]
Feet: [Cracked Obsidian Stompers], reforged exp->mast
Finger: [Theck's Emberseal], reforged hit->mast
Finger: [Adamantite Signet of the Avenger], reforged hit->mast
Trinket: [Scales of Life]
Trinket: [Spidersilk Spindle]
Weapon: [Mandible of Beth'tilac]
Shield: [Shard of Torment], reforged parry->mast
Relic: [Deathclutch Figurine], reforged dodge->mast


T13 Raidfinder:
(mastery-heavy gem template)
Head: [Faceguard of Radiant Glory]
Neck: [Guardspike Choker]
Shoulder: [Brackenshell Shoulderplates], reforged dodge->mastery
Back: [Indefatigable Greatcloak], reforged exp->mast
Chest: [Chestguard of Radiant Glory]
Wrist: [Graveheart Bracers]
Gloves: [Handguards of Radiant Glory], reforged hit->mastery
Waist: [Goriona's Collar], reforged dodge->mastery
Legs: [Legguards of Radiant Glory], reforged parry->mastery
Feet: [Stillheart Warboots]
Finger: [Hardheart Ring]
Finger: [Signet of the Resolute], reforged parry->mast
Trinket: [Fire of the Deep]
Trinket: [Indomitable Pride]
Weapon: [Souldrinker]
Shield: [Blackhorn's Mighty Bulwark]
Relic: [Stoutheart Talisman]


T13 Normal:
(stamina-heavy gem template)
Head: [Faceguard of Radiant Glory]
Neck: [Guardspike Choker]
Shoulder: [Brackenshell Shoulderplates], reforged dodge->mastery
Back: [Indefatigable Greatcloak], reforged exp->mast
Chest: [Chestguard of Radiant Glory]
Wrist: [Graveheart Bracers]
Gloves: [Handguards of Radiant Glory], reforged hit->mastery
Waist: [Goriona's Collar], reforged dodge->mastery
Legs: [Legguards of Radiant Glory], reforged parry->mastery
Feet: [Stillheart Warboots]
Finger: [Hardheart Ring]
Finger: [Signet of the Resolute], reforged parry->mast
Trinket: [Fire of the Deep]
Trinket: [Indomitable Pride]
Weapon: [Souldrinker]
Shield: [Blackhorn's Mighty Bulwark]
Relic: [Stoutheart Talisman]


T13 Heroic:
(stamina-heavy gem template)
Head: [Faceguard of Radiant Glory]
Neck: [Guardspike Choker]
Shoulder: [Brackenshell Shoulderplates]
Back: [Indefatigable Greatcloak], reforged exp->dodge
Chest: [Chestguard of Radiant Glory]
Wrist: [Graveheart Bracers]
Gloves: [Handguards of Radiant Glory], reforged hit->mastery
Waist: [Goriona's Collar]
Legs: [Legguards of Radiant Glory]
Feet: [Stillheart Warboots]
Finger: [Hardheart Ring]
Finger: [Signet of the Resolute]
Trinket: [Fire of the Deep]
Trinket: [Indomitable Pride]
Weapon: [Souldrinker]
Shield: [Blackhorn's Mighty Bulwark]
Relic: [Stoutheart Talisman]



Net stats
Most of these are recognizable enough to be understandable, but until I get them into the glossary feel free to ask. We've used "ph" and "sp" as shorthands for physical and spell, "dr" for damage reduction. Note that the dodge, parry, block, and miss values given is adjusted for boss level, as is "ctc," so 100% ctc is block-capped.

Gear only
Code: Select all
      Pre-raid   T11N   T11H   T12N   T12H   T13R   T13N   T13H
str       3566   3127   3496   3511   3646   3691   4108   4579
sta       7239   6550   7179   7730   8637   8114   9468  10315
agi          0      0      0      0    241      0      0      0
int          0      0      0      0      0      0      0      0
hit          0    337    389    245    359     80     92    106
crit         0      0      0      0      0      0      0      0
exp        142    111    126     80    196     77     77     77
haste        0      0      0      0      0      0      0      0
mast      2668   2105   2234   3190   3423   3101   2912   2624
ap           0      0      0      0      0      0      0      0
sp           0      0      0      0      0      0      0      0
health       0      0      0      0      0      0      0      0
dodge     1740   1732   2055   1336   1966   2145   2356   2912
parry     1475   1092   1081   1708   1456   1666   1817   2195
barmor   33721  32221  33191  33721  34798  34265  35309  36393
earmor     250    250    250    250    250    250    250    250
avgdmg  1434.5   1202   1357 1434.5 1619.5 1604.5   1811 2044.5
swing      2.6    2.6    2.6    2.6    2.6    2.6    2.6    2.6


Total player stats
Code: Select all

            Pre-raid      T11N      T11H      T12N      T12H      T13R      T13N      T13H
str             4492      4031      4419      4435      4576      4624      5061      5556
sta            10800      9926     10724     11422     12572     11909     13626     14700
agi              677       677       677       677       930       677       677       677
int              111       111       111       111       111       111       111       111
armorystr       3730      3291      3660      3675      3810      3855      4272      4743
hitpoints     194225    181989    193161    202933    219033    209751    233789    248825
armor          42160     40477   41565.3     42160   43368.4   42770.3   43941.7   45157.9
resistance         0         0         0         0         0         0         0         0
resist_c         400       400       400       400       400       400       400       400
spdr               0         0         0         0         0         0         0         0
manapoints     25623     25623     25623     25623     25623     25623     25623     25623
phhit              0   2.80579   3.23873   2.03982   2.98896  0.666063  0.765972  0.882533
sphit              8   11.2895   11.7971   10.3915   11.5043    8.7809   8.89804   9.03469
exp           17.729   16.6966   17.1962   15.6643   19.5274   15.5643   15.5643   15.5643
phhaste           10        10        10        10        10        10        10        10
sphaste            5         5         5         5         5         5         5         5
spgcd        1.42857   1.42857   1.42857   1.42857   1.42857   1.42857   1.42857   1.42857
phcrit       4.18566   4.18566   4.18566   4.18566   5.43148   4.18566   4.18566   4.18566
spcrit       11.4066   11.4066   11.4066   11.4066   11.4066   11.4066   11.4066   11.4066
hcrit        8.50656   8.50656   8.50656   8.50656   8.50656   8.50656   8.50656   8.50656
aacrit       4.18566   4.18566   4.18566   4.18566   5.43148   4.18566   4.18566   4.18566
HWcrit       41.4066   41.4066   41.4066   41.4066   41.4066   41.4066   41.4066   41.4066
HoWcrit      34.1857   34.1857   34.1857   34.1857   35.4315   34.1857   34.1857   34.1857
CScrit       19.1857   19.1857   19.1857   19.1857   20.4315   19.1857   19.1857   19.1857
Jcrit        4.18566   4.18566   4.18566   4.18566   5.43148   4.18566   4.18566   4.18566
WoGcrit      23.5066   23.5066   23.5066   23.5066   23.5066   23.5066   23.5066   23.5066
HotRphcrit   19.1857   19.1857   19.1857   19.1857   20.4315   19.1857   19.1857   19.1857
HotRspcrit   26.4066   26.4066   26.4066   26.4066   26.4066   26.4066   26.4066   26.4066
sp              3075      2770      3027      3038      3130      3162      3450      3777
hsp             3075      2770      3027      3038      3130      3162      3450      3777
mast         23.3838   20.2434    20.963   26.2954    27.595    25.799   24.7448   23.1383
miss             4.4       4.4       4.4       4.4       4.4       4.4       4.4       4.4
dodge        13.3023   13.2669   14.6619   11.4576   14.2844   15.0385   15.9016   18.0513
parry         17.033   15.0011   15.3854   17.8613   17.0485   17.8949   18.8807   20.6542
block        57.0134   49.9477   51.5667   63.5646   64.2671   62.4477   60.0757   56.4612
size               0         0         0         0         0         0         0         0
avoid        34.7353    32.668   34.4473   33.7189   35.7329   37.3335   39.1823   43.1056
avoidpct    0.347353   0.32668  0.344473  0.337189  0.357329  0.373335  0.391823  0.431056
ctc          91.7488   82.6157    86.014   97.2836       100   99.7811    99.258   99.5668
acoeff       32572.5   32572.5   32572.5   32572.5   32572.5   32572.5   32572.5   32572.5
phdr        0.564145  0.554103  0.560649  0.564145  0.571081  0.567676  0.574295  0.580956
VengAP       15128.5   14254.5   15052.5   15750.5   16900.5   16237.5   17954.5   19028.5
ap             29217     27061     28950     29826     31545     30864     33973     36450
wdamage      6860.51   6227.61   6733.43   6973.61   7477.86   7336.39   8120.27   8813.79
ndamage      6443.13   5841.03   6319.86   6547.53   7027.21   6895.47   7634.94   8293.07
swing        2.36364   2.36364   2.36364   2.36364   2.36364   2.36364   2.36364   2.36364
phs          2.21987   2.23482   2.23195   2.21393   2.21976   2.21369   2.20674   2.19454
reck        0.364552  0.327442  0.336184  0.398186  0.402509  0.392405  0.379216  0.358638
wswing       1.62681   1.68356   1.67039   1.58343   1.58271   1.58983       1.6   1.61525
wdps         4217.15   3699.08   4031.04   4404.12   4724.73   4614.56   5075.18   5456.62
hopo               3         3         3         3         3         3         3         3
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:40 am

Ability Damage

Setup:
Race: Human (hardly matters)
Talents: 0/32/9 with all prot damage talents + Crusade + Rule of Law
Glyphs: SoT only
Seal: Truth (for glyph), Insight
Gear: T13 Heroic raid set
Rotation: N/A
Buffs: Full raid, 100% Vengeance
Code: calc_abilitydmg.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

This sim just calculates the damage of each ability under certain circumstances. This is mostly for sanity-checking, as these are the numbers that end up going into the simulations that matter.

Code: Select all
                 SoT, 2%/10                  SoI, 2%/10
                Damage/Healing              Damage/Healing
Ability    Raw    Dmg    Net  Glyph        Raw    Dmg  Glyph
SotR     28401  22784  24500  25062      28401  21305  23435
WoG      37644  46493  46493  51143      37644  46493  53467
CS       19680  18061  19408  18819      19680  16888  17597
HotR      2627   2411   3758   2596       2627   2254   2428
AS       21335  20894  22507  27162      21335  20894  27162
Cons     12987  12814  12814  15377      12987  12814  15377
Exor     16997  16771  18373  20125      16997  16771  20125
HoW      20771  25782  27395  25782      20771  25782  25782
HW        5236   5899   5899   5899       5236   5899   5899
Jud      26797  26244  27857  27556      15078  14767  15505
HaNova   10542   9368   9368  10089      10542   8771   9446
SoI       6780   4407      0   4407       6780   4407   4407
SoJ        713    703      0    703        713    703    703
SoR       1568   1634      0   1634       1568   1634   1634
SoT       1647   1716      0   1716       1647   1716   1716
Melee     6736   5065   6412   5065       6736   4728   4728
Cens     32300  33655  33655  33655      32300  33655  33655


Raw is the damage (healing for WoG/SoI) one would expect on a regular hit without target damage reduction. Dmg incorporates damage redux, hit/miss, and crit factors. Net incorporates seal procs into each ability as appropriate. Glyph is the same as "Dmg," but with that ability's glyph active. Censure damage is for a 5-stack over 15 seconds, and Consecration is a full 10 ticks. "HaNova" is HotR's AoE "holy nova" component.

I've calculated this twice, once with Seal of Truth active and once with Seal of Insight active. The case with SoI active doesn't have the extra 10 expertise from the SoT glyph, though both data sets use the same 0/32/9 build.

Here's a plot of "Dmg" for each ability, which is basically the effective damage per cast (ignoring seal procs), to give you some feeling of the damage range we're talking about:

Image

It's worth noting that Holy Wrath, which doesn't scale with AP at all, is absolutely terrible for us in Cataclysm. It's the weakest spell in our arsenal, and will turn out to be low priority even in AoE.

Crusader Strike, on the other hand, is now a formidable chunk of damage. It edges out HotR by a good margin, and should continue to outpace it as gear improves.

The buff to Judgement damage has brought it up to the level of AS and SotR. Remember, however, that this isn't accounting for rotational buffs (i.e. Sacred Duty), which will bring SotR's damage per cast up significantly.

A fairer comparison would include Seal of Truth damage in the abilities that proc seals (SotR, CS, HotR, J, HoW, AS, and Exor).

Image

Now that almost everything procs seals, this plot is somewhat less informative than it has been in the past. It primarily shows that Cons and Holy Wrath take a backseat to just about anything else.


Finally, here's a data set where we've calculated net ability damage at two different Vengeance levels (100% and 30%) and two different hit/exp levels (2%/10 vs. 8%/26) with SoT active, as well as two cases with SoI active:

Code: Select all
                   Glyphed Damage   

          -----------SoT----------    ----SoI----
Veng:     100%   100%    30%    30%   100%    30%
Hit/Exp    low   high    low   high    low    low
SotR     26779  31335  16786  19631  23435  14632
WoG      51143  51143  35168  35168  53467  36766
CS       20166  23828  13494  15945  17597  11783
HotR      3944   4656   2615   3088   2428   1610
AS       28775  30612  18747  19944  27162  17677
Cons     15377  16473   9692  10384  15377   9692
Exor     21727  23276  13945  14940  20125  12883
HoW      27395  29170  18244  19427  25782  17174
HW        5899   6320   5899   6320   5899   5899
Jud      29169  31031  18233  19397  15505   9654
HaNova   10089  11888   6107   7196   9446   5718
Melee     6412   7595   4252   5037   4728   3135
Cens     33655  33655  19650  19650  33655  19650


Image

These are all glyphed damages plotted here, and we've included seal procs. I haven't plotted the SoI values simply because the graph gets too cluttered to read easily. There's not much to say here, the trends are pretty much predictable. High vengeance is better than low vengeance, high hit/exp is better than low hit/exp. The main thing to note is that SotR and Crusader Strike see larger increases due to their dependence on expertise. If we were to just vary hit, the difference wouldn't be as significant. Conversely, if we only varied expertise, the other abilities would see no change.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:40 am

Single-Target Rotation Simulations


Setup:
Race: Human (hardly matters)
Talents: 0/32/9
Glyphs: Two sets, #1 is SoT/SotR/HotR/CS for Prime (yes, 4 primes), AS/Cons for Major, #2 is SoI/WoG/HotR/CS for Prime, AS/Cons for Major.
Seal: SoT, SoI
Gear: T13 Heroic raid set
Rotation: N/A
Buffs: Full raid, 100%/30% Vengeance
Code: calc_rot_st.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

The old priority simulation code has been retired in favor of a new Finite-State Machine formalism. For more details about how the FSM code works, see this post. The short short version is that the FSM sim is much faster and far more accurate - where the old priority code could take hours and still show variations of 100 DPS from run to run, the FSM code takes seconds and is accurate down to a couple DPS.

We've had to change some of the abbreviations used when transitioning to the new code structure. Here's an overview of the new nomenclature:

  • SD and sd are prefixes that stand for the conditionals "iff Sacred Duty active" and "iff Sacred Duty not active," respectively. In other words, "sdJ" means that in a case where you have 3 Holy Power, no Sacred Duty buff, and Judgement is off of cooldown, you prioritize Judgement (instead of just casting SotR) to "fish" for a Sacred Duty proc. "SDSotR", on the other hand, would mean that you only cast SotR if Sacred Duty is active.
  • The I and i prefixes represent Inquisition conditionals in the same fashion. So "ISotR" means "cast SotR only when Inq is active," while "iInq" would be "cast Inq only if it's not already active." This takes the place of the old asterisk suffix from previous sims.
  • The + suffix represents "only if this will grant Holy Power." For the moment, it's only relevant to AS. "AS+" thus means "AS if it will grant holy power" (i.e. Grand Crusader is active).
  • Inq is now coded like every other spell, so a flat "Inq" entry will cast it regardless of the buff status.
  • SotR# stands for an #-point SotR. If the number is omitted, it's assumed to be a 3-pointer.
  • We can add more complicated conditionals for each spell in brackets. The formalism is [<property><ability><relation><value>]. As an example, if we want to only use an ability if the cooldown on WoG is 10 seconds or longer we'd write the conditional [cdWog>10], and if we want to use something only if Inquisition is still active we'd write [buffInq>0].
  • The absorb bubbles from the T13 2-piece bonus are included in the self-healing statistics.


The simulation has extremely tight error tolerances, giving us accuracy down to ~1 DPS. So any difference in the output of two queues can be considered statistically significant from a purely mathematical point of view. However, keep in mind that the results are only as good as the model, and the model is Patchwerk with no latency. So talking about differences smaller than 10-25 DPS is probably still meaningless, even if our numerical accuracy is better than that.

Damage, self-healing, DPS, and TPS are calculated in post-processing. The tables below show two columns for DPS, and two columns for Self-Healing Per Second (SHPS); the first in each case is for 100% Vengeance and the second is for 30% Vengeance. I've removed the TPS columns since they're basically irrelevant now.

I've also included some informational fields. "E%" is the percentage of empty GCDs in a queue, while "I%" is Inquisition uptime. In addition, I've added a "mps" field that tracks mana consumption. It's calculated as (JotW+BoMight+Sanctuary+Replenishment)-(mana cost of spells), so a positive number means that the rotation is stable (and we actually gain mana), while a negative number means the rotation isn't sustainable long-term.

To make sifting through the queues easier, I've put a short list of the most relevant queues first. Complete queue lists for each Seal/talent/hit/expertise combination are given afterward.

Abbreviated list using SoT, 2% hit, 10 expertise
Code: Select all
                                               DPS            SHPS            E     I     mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %     
   1  SotR>CS>J>AS                             22616   14752  2054    1806    7.4   0.0   224
   2  SotR>CS>AS>J                             22613   14768  1945    1749    7.3   0.0    95
   7  SotR>CS>AS+>J>AS                         22633   14774  1982    1769    7.2   0.0   138
  19  SotR>CS>AS+>J>AS>Cons>HW                 23160   15182  1973    1764    1.6   0.0  -315
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             22980   14988  2007    1768    7.3  40.0   130
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     23548   15430  1995    1761    1.6  40.3  -327
  44  WoG>CS>AS+>J>AS                          18602   12258  4132    3208   11.0   0.0   120
  48  WoG>SotR>CS>AS+>J>AS                     20887   13678  3773    2983    7.4   0.0   128
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             21427   14096  3757    2974    1.6   0.0  -330
  59  SotR>CS>AS>HoW>J                         24375   15981  1748    1628    0.3   0.0  -347
  69  SotR>CS>J>AS>HoW>Cons>HW                 24454   15979  2039    1798    0.0   0.0   -87
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     24975   16368  1737    1603    0.0  43.0  -396



#1) SoT active, 2% hit, 10 expertise
Code: Select all
                                               DPS            SHPS            E     I    mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %       
   1  SotR>CS>J>AS                             22616   14752  2054    1806    7.4   0.0   224
   2  SotR>CS>AS>J                             22613   14768  1945    1749    7.3   0.0    95
   3  SotR>HotR>AS>J                           20702   13281  1945    1749    7.3   0.0    95
   4  SotR>CS>J[cdCS>0.5]>AS                   22615   14751  2054    1805    7.4   0.0   224
   5  SotR>AS>CS>J                             22450   14649  1977    1761    8.4   0.0   170
   6  SotR>J>CS>AS                             22271   14519  2064    1803    8.8   0.0   306
   7  SotR>CS>AS+>J>AS                         22633   14774  1982    1769    7.2   0.0   138
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               22631   14773  1981    1768    7.2   0.0   137
   9  SotR>AS+>CS>AS>J                         22640   14776  1977    1765    7.6   0.0   146
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  22638   14777  1982    1769    7.2   0.0   138
  11  SotR>CS>AS>J>HW                          22862   15025  1934    1743    2.8   0.0  -124
  12  SotR>CS>J>AS>HW                          22849   14996  2043    1799    3.0   0.0    16
  13  SotR>CS>AS>J>Cons                        22943   14976  1939    1746    5.1   0.0  -197
  14  SotR>CS>J>AS>Cons                        22944   14959  2048    1802    5.2   0.0   -72
  15  SotR>CS>AS>J>HW>Cons                     23108   15180  1933    1743    1.2   0.0  -332
  16  SotR>CS>J>AS>HW>Cons                     23113   15162  2041    1798    1.3   0.0  -207
  17  SotR>CS>AS>J>Cons>HW                     23142   15179  1933    1743    1.6   0.0  -363
  18  SotR>CS>J>AS>Cons>HW                     23143   15162  2041    1798    1.7   0.0  -234
  19  SotR>CS>AS+>J>AS>Cons>HW                 23160   15182  1973    1764    1.6   0.0  -315
  20  SotR>AS+>CS>AS>J>Cons>HW                 23140   15174  1954    1752    1.8   0.0  -332
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            22685   14862  2016    1765    4.3   0.0  -214
  22  Inq>CS>AS>J                              20391   13371  1977    1719    7.7  94.1    73
  23  Inq>HotR>J>AS                            19512   12484  2123    1801    7.8  93.3   201
  24  Inq>CS>J>AS                              20570   13463  2123    1801    7.8  93.3   201
  25  Inq>CS>AS+>J>AS                          20398   13369  2018    1741    7.6  94.1   113
  26  Inq>AS+>CS>AS>J                          20508   13435  2026    1746    8.0  93.9   127
  27  Inq[buffInq<2]>SotR>CS>J>AS              22074   14406  2121    1816    7.7  74.0   211
  28  ISotR>Inq>CS>J>AS                        22243   14512  2116    1815    7.6  70.1   212
  29  SDSotR>Inq>CS>J>AS                       22874   14909  2089    1809    7.5  41.0   216
  30  SDSotR>ISotR>Inq>CS>J>AS                 22945   14954  2087    1811    7.5  36.1   218
  31  SDSotR>ISotR>Inq>CS>AS>J                 22960   14981  1969    1747    7.4  40.1    88
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             22980   14988  2007    1768    7.3  40.0   130
  33  ISDSotR>Inq>CS>AS>J                      22178   14490  1984    1738    7.6  78.1    80
  34  Inq>CS>AS>J>Cons>HW                      21076   13906  1963    1710    1.8  94.2  -398
  35  Inq>HotR>AS>J>Cons>HW                    20006   12914  1963    1710    1.8  94.2  -398
  36  ISotR>Inq>CS>AS>J>Cons>HW                22909   15043  1971    1736    1.7  72.6  -383
  37  SDSotR>Inq>CS>AS>J>Cons>HW               23410   15354  1953    1733    1.7  46.5  -377
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         23532   15428  1954    1739    1.7  40.5  -373
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         23496   15388  2068    1800    1.7  36.5  -245
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     23548   15430  1995    1761    1.6  40.3  -327
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              22803   14979  1968    1728    1.7  78.4  -387
  42  WoG>CS>J>AS                              18387   12115  4128    3201   11.7   0.0   146
  43  WoG>SotR>CS>J>AS                         20841   13637  3838    3015    7.6   0.0   216
  44  WoG>CS>AS+>J>AS                          18602   12258  4132    3208   11.0   0.0   120
  45  WoG>SotR[cdWoG>10]>CS>J>AS               19489   12800  4151    3223    9.5   0.0   174
  46  WoG>Inq>CS>J>AS                          19701   12918  3879    3012    7.8  61.2   201
  47  WoG>CS>J>AS>Cons>HW                      19018   12611  4128    3201    4.8   0.0  -371
  48  WoG>SotR>CS>AS+>J>AS                     20887   13678  3773    2983    7.4   0.0   128
  49  WoG>SotR>CS>J>AS>Cons>HW                 21386   14061  3809    2997    1.7   0.0  -249
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             21427   14096  3757    2974    1.6   0.0  -330
  51  WoG>SotR2>CS>J>AS>Cons>HW                20927   13739  2046    1818    0.4   0.0  -121
  52  WoG>Inq>CS>J>AS>Cons>HW                  20326   13409  3840    2988    1.9  62.3  -273
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              20323   13414  3789    2958    2.0  64.6  -323
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            20979   13814  3840    2996    1.8  48.3  -265
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     21506   14139  3823    2996    1.8  23.1  -256
  56  SotR>CS>J>AS>HoW                         24294   15873  2039    1798    1.2   0.0    45
  57  SotR>CS>AS>J>HoW                         24163   15802  1933    1742    1.6   0.0   -73
  58  SotR>CS>J>HoW>AS                         24037   15725  2000    1754    0.8   0.0   -22
  59  SotR>CS>AS>HoW>J                         24375   15981  1748    1628    0.3   0.0  -347
  60  SotR>CS>HoW>AS>J                         24170   15871  1657    1557    0.3   0.0  -466
  61  SotR>HoW>CS>AS>J                         24013   15766  1649    1536    1.1   0.0  -438
  62  HoW>SotR>CS>AS>J                         23849   15660  1644    1523    1.6   0.0  -420
  63  SotR>CS>AS+>J>AS>HoW                     24204   15823  1972    1763    1.4   0.0   -30
  64  SotR>CS>AS+>J>HoW>AS                     24139   15785  1951    1743    1.3   0.0   -53
  65  SotR>CS>AS+>HoW>J>AS                     24304   15927  1795    1643    0.2   0.0  -279
  66  SotR>CS>AS+>HoW>AS>J                     24317   15952  1707    1598    0.2   0.0  -400
  67  SotR>CS>HoW>AS+>J>AS                     24152   15835  1787    1624    0.3   0.0  -284
  68  SotR>CS>AS>HoW>J>Cons>HW                 24417   16008  1748    1628    0.0   0.0  -382
  69  SotR>CS>J>AS>HoW>Cons>HW                 24454   15979  2039    1798    0.0   0.0   -87
  70  SotR>CS>AS>J>HoW>Cons>HW                 24364   15939  1933    1742    0.0   0.0  -241
  71  SotR>CS>J>HoW>AS>Cons>HW                 24147   15797  2000    1754    0.0   0.0  -114
  72  SotR>CS>HoW>AS>J>Cons>HW                 24217   15901  1657    1557    0.0   0.0  -505
  73  SotR>HoW>CS>AS>J>Cons>HW                 24101   15829  1629    1524    0.0   0.0  -602
  74  HoW>SotR>CS>AS>J>Cons>HW                 23988   15761  1618    1507    0.0   0.0  -637
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     24975   16368  1737    1603    0.0  43.0  -396
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     24891   16274  1953    1738    0.0  40.5  -252
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     24954   16296  2064    1798    0.0  36.6   -98
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     24592   16081  2028    1755    0.0  37.9  -126
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     24516   16060  1921    1678    0.0  41.6  -183
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     24778   16268  1637    1525    0.0  43.9  -521



#2) SoI active, 2% hit, 10 expertise
Code: Select all
                                               DPS            SHPS            E     I    mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %       
   1  SotR>CS>J>AS                             16036   10634  5741    3988    7.7   0.0   665
   2  SotR>CS>AS>J                             16229   10770  5689    3965    7.7   0.0   544
   3  SotR>HotR>AS>J                           14460    9393  5689    3965    7.7   0.0   544
   4  SotR>CS>J[cdCS>0.5]>AS                   16036   10634  5741    3987    7.7   0.0   664
   5  SotR>AS>CS>J                             16019   10624  5672    3948    8.8   0.0   608
   6  SotR>J>CS>AS                             15700   10408  5701    3955    9.1   0.0   741
   7  SotR>CS>AS+>J>AS                         16176   10731  5712    3976    7.6   0.0   590
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               16177   10731  5711    3976    7.6   0.0   589
   9  SotR>AS+>CS>AS>J                         16190   10738  5696    3966    8.0   0.0   587
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  16182   10734  5712    3976    7.6   0.0   590
  11  SotR>CS>AS>J>HW                          16503   11044  5681    3961    3.2   0.0   322
  12  SotR>CS>J>AS>HW                          16288   10891  5732    3982    3.4   0.0   455
  13  SotR>CS>AS>J>Cons                        16574   10988  5684    3963    5.5   0.0   250
  14  SotR>CS>J>AS>Cons                        16377   10849  5735    3984    5.5   0.0   367
  15  SotR>CS>AS>J>HW>Cons                     16767   11210  5680    3961    1.5   0.0   101
  16  SotR>CS>J>AS>HW>Cons                     16566   11065  5731    3982    1.6   0.0   222
  17  SotR>CS>AS>J>Cons>HW                     16793   11206  5680    3961    1.9   0.0    77
  18  SotR>CS>J>AS>Cons>HW                     16591   11064  5731    3982    1.9   0.0   199
  19  SotR>CS>AS+>J>AS>Cons>HW                 16731   11158  5705    3972    1.8   0.0   128
  20  SotR>AS+>CS>AS>J>Cons>HW                 16752   11177  5679    3957    2.1   0.0   102
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            16253   10843  5604    3889    4.5   0.0   202
  22  Inq>CS>AS>J                              13525    9091  5344    3712    8.2  91.2   450
  23  Inq>HotR>J>AS                            12402    8074  5432    3758    8.3  90.2   573
  24  Inq>CS>J>AS                              13419    9008  5432    3758    8.3  90.2   573
  25  Inq>CS>AS+>J>AS                          13453    9040  5369    3724    8.1  91.2   493
  26  Inq>AS+>CS>AS>J                          13540    9094  5365    3722    8.6  91.0   498
  27  Inq[buffInq<2]>SotR>CS>J>AS              14685    9797  5536    3834    8.1  73.6   603
  28  ISotR>Inq>CS>J>AS                        14900    9931  5552    3846    8.1  69.4   607
  29  SDSotR>Inq>CS>J>AS                       15820   10503  5626    3902    7.9  39.2   630
  30  SDSotR>ISotR>Inq>CS>J>AS                 15916   10563  5646    3916    7.9  35.1   636
  31  SDSotR>ISotR>Inq>CS>AS>J                 16106   10697  5578    3883    7.9  38.5   513
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             16053   10658  5603    3895    7.8  38.3   558
  33  ISDSotR>Inq>CS>AS>J                      15012   10019  5445    3785    8.1  76.6   476
  34  Inq>CS>AS>J>Cons>HW                      14253    9658  5332    3705    2.1  91.3   -34
  35  Inq>HotR>AS>J>Cons>HW                    13230    8716  5332    3705    2.1  91.3   -34
  36  ISotR>Inq>CS>AS>J>Cons>HW                15813   10617  5473    3808    2.0  71.4    10
  37  SDSotR>Inq>CS>AS>J>Cons>HW               16583   11091  5537    3855    2.0  43.9    32
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         16716   11171  5568    3877    2.0  38.9    41
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         16511   11026  5632    3908    2.0  35.3   164
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     16654   11124  5594    3890    1.9  38.6    90
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              15684   10541  5433    3778    2.1  76.9    -2
  42  WoG>CS>J>AS                              12694    8557  7883    5456   11.8   0.0   525
  43  WoG>SotR>CS>J>AS                         14545    9701  7640    5288    8.0   0.0   626
  44  WoG>CS>AS+>J>AS                          12901    8694  7921    5483   11.2   0.0   508
  45  WoG>SotR[cdWoG>10]>CS>J>AS               13472    9038  7944    5497    9.9   0.0   565
  46  WoG>Inq>CS>J>AS                          13035    8762  7456    5152    8.3  56.6   573
  47  WoG>CS>J>AS>Cons>HW                      13327    9055  7883    5456    4.9   0.0     7
  48  WoG>SotR>CS>AS+>J>AS                     14712    9815  7616    5281    7.8   0.0   550
  49  WoG>SotR>CS>J>AS>Cons>HW                 15117   10143  7615    5273    2.0   0.0   153
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             15279   10252  7603    5273    1.9   0.0    82
  51  WoG>SotR2>CS>J>AS>Cons>HW                14794    9906  5574    3902    0.6   0.0   271
  52  WoG>Inq>CS>J>AS>Cons>HW                  13694    9277  7418    5127    2.2  57.4    87
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              13778    9336  7379    5106    2.4  59.7    39
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            14242    9614  7478    5171    2.1  46.8   105
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     14987   10070  7550    5225    2.1  21.5   131
  56  SotR>CS>J>AS>HoW                         17678   11730  5995    4141    1.4   0.0   538
  57  SotR>CS>AS>J>HoW                         17750   11785  5923    4107    1.9   0.0   422
  58  SotR>CS>J>HoW>AS                         17497   11629  5974    4110    1.0   0.0   477
  59  SotR>CS>AS>HoW>J                         18325   12190  5879    4079    0.4   0.0   158
  60  SotR>CS>HoW>AS>J                         18278   12179  5823    4031    0.4   0.0    40
  61  SotR>HoW>CS>AS>J                         18123   12076  5800    4002    1.2   0.0    73
  62  HoW>SotR>CS>AS>J                         17988   11991  5788    3986    1.6   0.0    82
  63  SotR>CS>AS+>J>AS>HoW                     17722   11762  5953    4122    1.6   0.0   469
  64  SotR>CS>AS+>J>HoW>AS                     17676   11736  5940    4106    1.5   0.0   448
  65  SotR>CS>AS+>HoW>J>AS                     18157   12077  5895    4075    0.2   0.0   217
  66  SotR>CS>AS+>HoW>AS>J                     18341   12207  5855    4059    0.3   0.0   102
  67  SotR>CS>HoW>AS+>J>AS                     18011   11990  5881    4054    0.3   0.0   209
  68  SotR>CS>AS>HoW>J>Cons>HW                 18387   12230  5879    4079    0.0   0.0   106
  69  SotR>CS>J>AS>HoW>Cons>HW                 17863   11853  5995    4141    0.0   0.0   384
  70  SotR>CS>AS>J>HoW>Cons>HW                 17979   11942  5923    4107    0.0   0.0   232
  71  SotR>CS>J>HoW>AS>Cons>HW                 17633   11718  5974    4110    0.0   0.0   363
  72  SotR>CS>HoW>AS>J>Cons>HW                 18341   12219  5823    4031    0.0   0.0   -12
  73  SotR>HoW>CS>AS>J>Cons>HW                 18268   12176  5778    3989    0.0   0.0  -108
  74  HoW>SotR>CS>AS>J>Cons>HW                 18187   12129  5761    3970    0.0   0.0  -140
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     18510   12326  5750    3984    0.0  41.1    66
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     18041   11994  5816    4027    0.0  38.9   196
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     17931   11908  5901    4070    0.0  35.4   350
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     17638   11735  5877    4037    0.0  36.6   327
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     17753   11837  5824    3994    0.0  40.1   265
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     18476   12328  5682    3928    0.0  42.4   -58


#3) SoT active, 8% hit, 26 expertise
Code: Select all
                                               DPS            SHPS            E     I     mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %         
   1  SotR>CS>J>AS                             28048   18343  2547    2256    5.2    0.0   248
   2  SotR>CS>AS>J                             28082   18399  2375    2169    5.0    0.0    47
   3  SotR>HotR>AS>J                           25526   16413  2375    2169    5.0    0.0    47
   4  SotR>CS>J[cdCS>0.5]>AS                   28048   18343  2547    2256    5.2    0.0   248
   5  SotR>AS>CS>J                             27773   18174  2426    2185    6.4    0.0   159
   6  SotR>J>CS>AS                             27862   18219  2540    2247    5.9    0.0   260
   7  SotR>CS>AS+>J>AS                         28104   18406  2410    2188    4.9    0.0    72
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               28104   18406  2410    2188    4.9    0.0    72
   9  SotR>AS+>CS>AS>J                         28092   18386  2441    2201    5.3    0.0   139
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  28104   18406  2410    2188    4.9    0.0    72
  11  SotR>CS>AS>J>HW                          28285   18637  2348    2154    0.6    0.0  -184
  12  SotR>CS>J>AS>HW                          28280   18599  2510    2238    0.9    0.0     6
  13  SotR>CS>AS>J>Cons                        28379   18587  2359    2160    3.0    0.0  -239
  14  SotR>CS>J>AS>Cons                        28335   18531  2514    2238    3.0    0.0   -52
  15  SotR>CS>AS>J>HW>Cons                     28367   18689  2347    2154    0.1    0.0  -252
  16  SotR>CS>J>AS>HW>Cons                     28418   18683  2499    2232    0.1    0.0  -119
  17  SotR>CS>AS>J>Cons>HW                     28519   18742  2348    2154    0.3    0.0  -374
  18  SotR>CS>J>AS>Cons>HW                     28521   18713  2500    2233    0.4    0.0  -201
  19  SotR>CS>AS+>J>AS>Cons>HW                 28537   18743  2389    2176    0.3    0.0  -334
  20  SotR>AS+>CS>AS>J>Cons>HW                 28435   18678  2386    2169    0.6    0.0  -320
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            27541   18083  2416    2152    3.4    0.0  -216
  22  Inq>CS>AS>J                              24197   15943  2335    2068    5.0  100.0    47
  23  Inq>HotR>J>AS                            23351   14983  2592    2213    5.2  100.0   248
  24  Inq>CS>J>AS                              24608   16166  2592    2213    5.2  100.0   248
  25  Inq>CS>AS+>J>AS                          24234   15959  2384    2095    4.9  100.0    72
  26  Inq>AS+>CS>AS>J                          24383   16042  2435    2123    5.3  100.0   139
  27  Inq[buffInq<2]>SotR>CS>J>AS              27742   18137  2607    2257    5.2   70.7   248
  28  ISotR>Inq>CS>J>AS                        27742   18137  2607    2257    5.2   70.7   248
  29  SDSotR>Inq>CS>J>AS                       28408   18558  2583    2253    5.2   45.6   248
  30  SDSotR>ISotR>Inq>CS>J>AS                 28505   18621  2580    2257    5.2   38.0   248
  31  SDSotR>ISotR>Inq>CS>AS>J                 28527   18669  2389    2155    5.0   46.3    47
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             28550   18676  2428    2176    4.9   45.8    72
  33  ISDSotR>Inq>CS>AS>J                      27709   18149  2384    2128    5.0   82.3    47
  34  Inq>CS>AS>J>Cons>HW                      24766   16389  2299    2046    0.3  100.0  -374
  35  Inq>HotR>AS>J>Cons>HW                    23453   15153  2299    2046    0.3  100.0  -374
  36  ISotR>Inq>CS>AS>J>Cons>HW                28355   18637  2360    2123    0.3   77.1  -374
  37  SDSotR>Inq>CS>AS>J>Cons>HW               28712   18858  2343    2117    0.3   56.7  -374
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         28983   19029  2355    2135    0.3   47.1  -374
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         28942   18974  2519    2224    0.4   41.4  -201
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     28993   19025  2399    2158    0.3   46.8  -334
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              28202   18539  2345    2104    0.3   82.7  -374
  42  WoG>CS>J>AS                              22038   14589  4509    3567   11.1    0.0   136
  43  WoG>SotR>CS>J>AS                         25976   17036  4308    3447    5.2    0.0   248
  44  WoG>CS>AS+>J>AS                          22295   14761  4509    3573   10.3    0.0   102
  45  WoG>SotR[cdWoG>10]>CS>J>AS               24168   15910  4604    3646    7.9    0.0   174
  46  WoG>Inq>CS>J>AS                          23944   15747  4362    3434    5.2   80.4   248
  47  WoG>CS>J>AS>Cons>HW                      22704   15111  4509    3567    4.3    0.0  -373
  48  WoG>SotR>CS>AS+>J>AS                     26032   17099  4272    3448    4.9    0.0    72
  49  WoG>SotR>CS>J>AS>Cons>HW                 26463   17415  4305    3454    0.4    0.0  -201
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             26480   17445  4262    3443    0.3    0.0  -334
  51  WoG>SotR2>CS>J>AS>Cons>HW                25275   16645  2460    2230    0.0    0.0   -80
  52  WoG>Inq>CS>J>AS>Cons>HW                  24388   16111  4333    3423    0.4   81.7  -201
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              24319   16082  4280    3394    0.5   83.2  -280
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            26221   17261  4327    3443    0.4   48.8  -201
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     26601   17499  4319    3448    0.4   29.8  -201
  56  SotR>CS>J>AS>HoW                         29470   19306  2498    2232    0.0    0.0    54
  57  SotR>CS>AS>J>HoW                         29504   19352  2347    2154    0.0    0.0  -115
  58  SotR>CS>J>HoW>AS                         28719   18845  2456    2163    0.0    0.0   -12
  59  SotR>CS>AS>HoW>J                         29280   19246  2147    2029    0.0    0.0  -359
  60  SotR>CS>HoW>AS>J                         29047   19110  2081    1966    0.0    0.0  -424
  61  SotR>HoW>CS>AS>J                         28913   19030  2028    1911    0.0    0.0  -462
  62  HoW>SotR>CS>AS>J                         28621   18823  2038    1897    1.3    0.0  -387
  63  SotR>CS>AS+>J>AS>HoW                     29499   19341  2387    2175    0.0    0.0   -76
  64  SotR>CS>AS+>J>HoW>AS                     29300   19219  2354    2141    0.0    0.0  -105
  65  SotR>CS>AS+>HoW>J>AS                     29200   19172  2265    2086    0.0    0.0  -216
  66  SotR>CS>AS+>HoW>AS>J                     29238   19221  2140    2022    0.0    0.0  -365
  67  SotR>CS>HoW>AS+>J>AS                     28993   19042  2253    2054    0.0    0.0  -216
  68  SotR>CS>AS>HoW>J>Cons>HW                 29280   19246  2147    2029    0.0    0.0  -359
  69  SotR>CS>J>AS>HoW>Cons>HW                 29470   19306  2498    2232    0.0    0.0    54
  70  SotR>CS>AS>J>HoW>Cons>HW                 29504   19352  2347    2154    0.0    0.0  -115
  71  SotR>CS>J>HoW>AS>Cons>HW                 28719   18845  2456    2163    0.0    0.0   -12
  72  SotR>CS>HoW>AS>J>Cons>HW                 29047   19110  2081    1966    0.0    0.0  -424
  73  SotR>HoW>CS>AS>J>Cons>HW                 28913   19030  2028    1911    0.0    0.0  -462
  74  HoW>SotR>CS>AS>J>Cons>HW                 28678   18873  1996    1872    0.0    0.0  -599
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     29852   19609  2111    1981    0.0   50.8  -359
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     30060   19697  2354    2134    0.0   47.1  -115
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     29985   19625  2515    2222    0.0   41.6    54
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     29167   19122  2475    2153    0.0   44.4   -12
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     29167   19122  2475    2153    0.0   44.4   -12
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     29647   19494  2049    1922    0.0   47.3  -424



There's lots of data to parse here, so I'm going to try and focus on the highlights.

  1. CS>HotR (#2 vs #3), as expected. You lose about 1700 DPS by using HotR.

  2. Adding HW to the end of a queue is an increase of ~250 DPS, and Cons>HW at the end of the queue is a ~500 DPS increase (#1 vs #10), if we can afford the mana. So Cons only really buys you about 250 DPS over Holy Wrath. Note that this sim does not include Hallowed Ground, so if you spec that you'll see a small additional increase (~50 DPS).

  3. The buff to Judgement shifted filler priorities around, but the addition of the Souldrinker proc (which triggers from AS but not J) has basically offset that advantage. AS+>J>AS is still ahead by 10-15 DPS, but J>AS and AS>J are within a few DPS of each other. In general, the order of these two fillers won't make much difference. You do get a slight increase in absorb bubble effectiveness by prioritizing J though.

  4. "Fishing" for Sacred Duty procs is still not advantageous (#15 vs #21).

  5. The conditional Inq/SotR rotation is still ahead by about 400 DPS (#19 vs. #38). This rotation uses SotR if and only if SD or Inquisition is active. It also boosts Judgement bubbles by around 180 absorption per second.

  6. Hammer of Wrath hits about as hard as J and AS, well ahead of HW/Cons. The most efficent rotation seems to be #67, which slips it in between the two blocks (J>AS>HoW>Cons>HW). This also kills off most of the benefit of HW/Cons (compare to #54, HW+Cons now only add 150 DPS).

  7. In terms of mana efficiency, it looks like queues with strict HW/Cons usage aren't quite sustainable. This seems to match what I've seen in-game while raiding. YMMV, I haven't had time to thoroughly check the accuracy of these estimates.

  8. A few notes on WoG queues
    • WoG still generates 0 threat.
    • This sim assumes 0 overheal for both WoG and SoI. As such, take these numbers with a grain of salt. Real-world overheal is probably a significant factor (30%?).
  9. The T13 2-piece bonus provides between 450-600 absorption per second, mostly passively.


TLDR Summary
  • SotR>CS>AS+>J>AS(>Cons>HW mana permitting) (aka 939) is our "default" rotation.
  • There's a slight gain to be had for the attentive tankadin by conditionally choosing SotR or Inq: (SotR if Sacred Duty or Inquisition active)>Inq>CS>AS+>J>AS is a gain of around 400 DPS at low hit.
  • The priority order of J and AS/AS+ causes only minor variations, and isn't likely to make much difference in practice.
  • Below 20%, slip hammer into filler spots ahead of Cons/HW. In other words, SotR>CS>J>AS>HoW>Cons>HW.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:41 am

AoE Rotation Simulations

Setup:
Race: Human (hardly matters)
Talents: 0/32/9
Glyphs: SoT/SotR/HotR/CS for Prime, Cons/(AS) for Major
Seal: SoT
Gear: T13 Heroic raid set
Rotation: N/A
Buffs: Full Raid, Full Vengeance
Code: calc_rot_aoe.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

These are very similar to the single-target rotation simulations. The primary difference is the damage metrics we calculate.

For AoE, we care about two things: the damage to our primary target (in case we're burning things down one by one) and the "guaranteed" damage to all secondary targets. Guaranteed damage thus only includes HammerNova, Holy Wrath, Consecration, and unglyphed Avenger's Shield. I've provided data for glyphed and unglyphed AS since it's a fairly quick sim.

Any abbreviations or shorthand used here is identical to that used in the single-target sims, so ISotR is "SotR if and only if Inq is active" and so on.


Focused Shield glyphed
Code: Select all
                                          Primary                                      E    I    mps   mps
  Q#  Priority                            DPS        2      3      4      5      6     %    %          @6 
   1  SotR>CS>AS>J                        24918       0      0      0      0      0   7.3   0.0  1240  3150
   2  SotR>HotR>AS>J                      23007    3144   3144   3144   3144   3144   7.3   0.0  1240  3150
   3  SotR>HotR>AS>J>Cons                 23333    3494   3494   3494   3494   3494   5.1   0.0   949  2858
   4  SotR>HotR>AS>J>Cons>HW              23372    3552   3524   3514   3509   3506   1.6   0.0   783  2692
   5  SDSotR>ISotR>Inq>HotR>AS>J>Cons>HW  24157    4017   3986   3975   3969   3967   1.7  40.5   772  2681
   6  Inq>HotR>AS>J>Cons>HW               22229    4739   4700   4687   4681   4677   1.8  94.2   747  2657
   7  Inq>HotR>AS>Cons>J>HW               22029    4795   4754   4739   4732   4729   2.0  94.2   661  2570
   8  Inq>HotR>AS>Cons>HW>J               21445    4815   4760   4740   4731   4727   2.4  94.1   505  2414
   9  Inq>HotR>Cons>AS>HW>J               21325    4832   4777   4757   4748   4743   2.8  94.0   489  2398
  10  iInq>SotR>HotR>AS>Cons>HW>J         22968    4476   4426   4408   4400   4396   2.3  72.6   517  2426
  11  iInq>HotR>AS>Cons>HW>J              21875    4944   4887   4867   4858   4853   3.1  95.4   482  2392
  12  iInq>HotR>Cons>AS>HW>J              21738    4964   4906   4885   4876   4871   3.2  95.3   464  2373
  13  HotR>Inq>AS>Cons>HW>J               21551    4914   4860   4840   4832   4827   1.9  94.2   475  2384
  14  HotR>Inq>Cons>AS>HW>J               21451    4946   4891   4871   4862   4857   2.2  94.1   455  2364



Focused Shield unglyphed
Code: Select all
                                          Primary                                      E    I    mps   mps
  Q#  Priority                            DPS        2      3      4      5      6     %    %          @6 
   1  SotR>CS>AS>J                        24396    1663   1663   1108    831    665   7.3   0.0  1240  3150
   2  SotR>HotR>AS>J                      22485    4806   4806   4252   3975   3809   7.3   0.0  1240  3150
   3  SotR>HotR>AS>J>Cons                 22812    5155   5155   4602   4325   4159   5.1   0.0   949  2858
   4  SotR>HotR>AS>J>Cons>HW              22851    5213   5184   4621   4339   4171   1.6   0.0   783  2692
   5  SDSotR>ISotR>Inq>HotR>AS>J>Cons>HW  23559    5884   5852   5219   4903   4713   1.7  40.5   772  2681
   6  Inq>HotR>AS>J>Cons>HW               21514    6922   6883   6142   5772   5550   1.8  94.2   747  2657
   7  Inq>HotR>AS>Cons>J>HW               21314    6978   6936   6194   5824   5602   2.0  94.2   661  2570
   8  Inq>HotR>AS>Cons>HW>J               20730    6997   6942   6195   5823   5600   2.4  94.1   505  2414
   9  Inq>HotR>Cons>AS>HW>J               20639    6929   6873   6155   5796   5582   2.8  94.0   489  2398
  10  iInq>SotR>HotR>AS>Cons>HW>J         22310    6504   6454   5760   5414   5207   2.3  72.6   517  2426
  11  iInq>HotR>AS>Cons>HW>J              21125    7233   7176   6393   6002   5769   3.1  95.4   482  2392
  12  iInq>HotR>Cons>AS>HW>J              21017    7163   7105   6351   5975   5750   3.2  95.3   464  2373
  13  HotR>Inq>AS>Cons>HW>J               20828    7122   7068   6312   5936   5710   1.9  94.2   475  2384
  14  HotR>Inq>Cons>AS>HW>J               20757    7067   7012   6285   5923   5706   2.2  94.1   455  2364


Observations:
  • There's a pretty clear trade-off between Primary and Secondary DPS. If we just replace CS with HotR in the standard 939, we get our maximum DPS on the primary target, but a near-minimum on secondary targets. By shifting the queue around to favor AoE abilities, we lose Primary DPS but gain Secondary DPS.
  • The differences we're talking about here aren't very large. Inq and HotR are the bread-and-butter of our AoE dps. Prioritize both of those ahead of everything else in any fashion and you're pretty close to as good as you can get.
  • AS and Cons are roughly equal for larger numbers of targets, AS is stronger for 2-3 without Focused Shield.
  • HW and Judgement are lowest priority. In this sim, Sanctuary takes care of all your mana problems because there are 4 mobs beating on the tank; modulate your Judgement usage as appropriate for situations with casters or any other case where mana regen is a problem.
  • You can eke out minor increases by refreshing Inq only when it's about to fall off (so do it every 4th HotR and just waste the excess HP, basically).
  • For general purpose AoE, iInq>HotR>AS>Cons>HW>J seems to be the optimal queue.

TLDR Summary:
  • Your best pure AoE queue is generally iInq>HotR>AS>Cons>HW>J. Bump J up if you have mana troubles.
  • For cleave tanking, move ShoR back up to the top of the queue for extra single-target threat.
  • Mixing the rotation up doesn't make a huge difference in threat. As long as you're casting something every GCD, you're going to be pretty close to optimal.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:41 am

Talent Comparison

Setup:
Race: Human (hardly matters)
Talents: 5/38/10 with all relevant damage talents (see analysis)
Glyphs: Two setups, #1:WoG/SoI/HotR for Prime, Cons/AS for Major, #2:SoT/ShoR/HotR + Cons/AS
Seal: SoT, SoI
Gear: T13 Heroic raid set, hit/exp artificially fixed
Rotation: 939, W39
Buffs: Full raid, 100%/30% Vengeance
Code: calc_talents.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012


To do this analysis, we use a reduction strategy. We start with an unpossible spec that contains every relevant damage talent we have access to in all 3 trees, and record the simulated and modeled DPS output.

We then set each talent to 0 points spent one at a time and repeat the sim/model. The difference was the effect of that talent, and the difference per point is simply that value divided by the number of points we dropped.

I've done this in two configurations. The first model covers the "W39", or WoG>SotR>CS>AS+>J>AS>Cons>HW, with SoI/WoG/HotR+AS/Cons glyphs (#1). The second is a "standard" 939, or SotR>CS>AS+>J>AS>Cons>HW, with SoT/SotR/HotR+AS/Cons glyphs (set #2), and has been calculated for both low-hit (2%/10exp) and hit-capped (8%/26exp) gear sets (artificially enforced). I've repeated the calculations at 100% and 30% Vengeance.

In this round, I've added HPS calculations, since people have been asking about the effect of talents on the T13 2-piece bonus. There's some interesting results in there; several talents actually negatively impact your self-healing because they cause Judgement to be cast less often (Grand Crusader, for example).


Code: Select all
                                              DPS per point
Vengeance                       --------100%------   --------30%-------
hit%/exp                         --2%/10---  8%/26   --2%/10---   8%/26
Talent                           W39    939    939    W39    939    939
SotP                               0    222    237      0    137    146
Hallowed Ground                   72     72     77     46     45     48
WotL                            1545   1931   2241   1021   1266   1471
Reck (1st point)                 352    467    553    245    322    381
Reck (2nd point)                 315    419    496    220    289    342
Arbiter of the Light              78    139    149     49     87     93
JotP                              65    156    172     45    100    111
Crusade                          230    249    301    154    167    201
RoL                              222    240    290    149    161    194
Grand Crusader (1st point)       283    229    176    176    144    118
Grand Crusader (2nd point)       303    261    234    188    163    150
Sacred Duty                      426    767    968    266    479    605
Eternal Glory                     98      0      0     57      0      0

                                              HPS per point
Vengeance                       --------100%------   --------30%-------
hit%/exp                         --2%/10---  8%/26   --2%/10---   8%/26
Talent                           W39    939    939    W39    939    939
SotP                              0      0      0      0      0      0
Hallowed Ground                   0      0      0      0      0      0
WotL                             95    168    181     59    105    113
Reck (1st point)                295     83     98    209     83     98
Reck (2nd point)                265     75     88    187     75     88
Arbiter of the Light             20     35     37     12     22     23
JotP                             54     15     18     38     15     18
Crusade                           0      0      0      0      0      0
RoL                              83      0      0     57      0      0
Grand Crusader (1st point)       19    -36    -64     19    -16    -31
Grand Crusader (2nd point)       34    -34    -61     29    -13    -28
Sacred Duty                       0     -0      0      0     -0      0
Eternal Glory                    -2      0      0     -1      0      0


Image

I haven't plotted the 30% data, as there's no significant difference in the ordering.

Good threat talents

WotL is still our strongest talent, and works about as well for W39 as it does for 939. Previous results from the old analytical model showed that it's about half as effective in HotR rotations, which will be the case for AoE. With the T13 2-piece, WotL is also provides a significant amount of damage absorption.

Sacred Duty is still our second-best DPS talent for any variant of 939. There's really no good reason to skip this talent anymore.


Average threat talents

The next big talent is Reckoning, which provides strong single-target threat. Note that previous sims have shown that it gets better in an AoE rotation because the incoming attack rate goes up, but the damage output gained is only against your primary target. Despite being stronger than Grand Crusader point-for-point, the latter is probably a stronger choice overall because of the extra utility it affords. Also note that Reckoning only provides the full benefit while you're tanking, so on a tank-swap fight it may be roughly half as effective.

Grand Crusader has finally come into its own in 4.1 thanks to the change to Sacred Duty, and to a lesser extent the addition of Holy Power to the effect. It's finally a strong threat talent rather than an also-ran. It's right on par with Crusade and Rule of Law for single-target threat, though the exact ordering of the three talents depends on hit and expertise. Also note that if you haven't glyphed Focused Shield, this talent should be approximately 30% weaker.

Continuing down the line, we have Crusade and Rule of Law clocking in at almost identical levels in 939. If there were any question about which sub-spec (Holy or Ret) was going to be predominant in Cataclysm, Crusade and Rule of Law put the issue to rest. Both are solid talents, and should lead to a default spec of (0/31/8)+2. As a reminder, in previous sims we've seen that Crusade is many times more effective in AoE rotations against multiple mobs as it buffs HotR, and that Rule of Law also sees a significant increase in the AoE rotation.

Seals of the Pure is now almost as good as Rule of Law after the Censure buff. It's basically a gimme though, since Eternal Glory isn't compelling.


Weak threat talents

Arbiter of the Light and Judgements of the Pure are both fairly weak threat talents. It still lags SotP by a good bit though. Neither are particularly spectacular, but sitting in the first tier they're easy to pick off with extra points. Unfortunately, you'd be foolish to pass up the Crusade+RoL juggernaut, which means you'll have at most 2 points to place in these two talents (provided you don't want Pursuit of Justice). Arbiter of the Light's bonus to the Judgement absorb bubbles is also weak (~30 absorb/sec per point), so it's not a very compelling choice for survivability.

Hallowed Ground is a weak DPS increase against single targets, but a more substantial increase to AoE tanking. Many people would argue that the real attraction of the talent is the mana reduction, especially now that Judgement casts are slightly less frequent. That said, most tanks I've talked to have been AoE tanking just fine without Hallowed Ground. Use Consecration in moderation (or not at all in the single-target rotation) and you'll be OK without it.

Eternal Glory was once a survivability talent, but WoG gaining a cooldown has turned it into a threat talent, occasionally allowing you to follow a WoG with a SotR or Inq. The usefulness of this is pretty marginal - generally if you can spare the HoPo for WoG, you don't need the threat, and when you need the threat WoG isn't your go-to HP dump.

TLDR Summary:
  • Wrath of the Lightbringer and Sacred Duty are excellent threat talents for single-target DPS.
  • Reckoning is solidly in third place for single-target DPS
  • Grand Crusader, Crusade, and Rule of Law are about equal and very strong choices for both single-target and AoE.
  • SotP trails Crusade/RoL by a little bit.
  • JotP, AotL, and Hallowed Ground are all "optional" from a single-target perspective.
  • Eternal Glory sucks.
  • For general talent advice, see my Talent Spec & Glyph Guide
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:41 am

Glyph Comparison

Setup:
Race: Human (hardly matters)
Talents: 0/32/9
Glyphs: All in various configurations, see description
Seal: SoT, SoI
Gear: T13 Heroic raid set
Rotation: 939, W39
Buffs: Full raid, 100%/30% Vengeance
Code: calc_glyphs.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

This is very similar to the talent comparison, but with glyphs. We start with all glyphs active - again, an unpossible situation - and take a baseline measurement. We then disable each glyph one by one and take new measurements. The difference is the DPS contribution of the glyph, which is displayed below.

I've calculated the value with 2 different rotations: 939 and W39 (see the talent sim or glossary for definitions). For HotR's 939 value I've used a 9H9 instead of a 9C9. I haven't run an AoE simulation, because it should be pretty obvious which glyphs you'd choose to optimize that. In addition, I've performed one run at 30% Vengeance to see how things scale.

Hit/expertise are artificially capped at 2%/10 in these sims, though I've included one 939 data set for 8%/26. For reference, here's how the SoT glyph behaves at different values of expertise:

The value of the SoT glyph will change if your expertise is higher than 16 without SoT active. At 16 expertise, it will have its full value, and it will linearly decrease to half of it's value between 16 and 26. Above 26 it will be at full value until you reach 46 expertise, at which point it will again linearly decrease to 0 at 56 expertise. If you want a piecewise function for that, it's:

Code: Select all
Expertise   SoT Value (relative)
0-16          1
16-26         1-(exp-16)/20
26-46         1/2
46-56         1/2-(exp-46)/20


where "exp" is your expertise without SoT active.



Now, on with the values:
Code: Select all
                ----------------DPS----------------
   seal         SoI     SoT      SoT     SoT     SoT
   rotation     W39     939      939     W39     939
   hit/exp    2%/10   2%/10    8%/26   2%/10   2%/10
   Veng        100%    100%     100%    100%    30%
   CS         241.0    254.7   296.1    257.7   170.5
   HotR       288.2    304.3   353.2    307.8   187.8
   J           63.2    109.3   113.3    110.3    68.1
   SoT          0.0   1099.8   576.7   1022.4   730.4
   SotR       264.8    460.3   539.4    292.3   287.4
   Cons        23.1     24.8    31.1     24.6    18.9
   AS         463.3    587.2   663.2    593.3   383.7

                ----------------HPS----------------
   seal         SoI     SoT     SoT     SoT     SoT
   rotation     W39     939     939     W39     939
   hit/exp    2%/10   2%/10   8%/26   2%/10   2%/10
   Veng        100%    100%    100%    100%    30% 
   J           15.8   27.3    28.3     27.6   17.0
   SoT          0.0   79.4    43.2    101.0   82.7
   WoG        183.0    0.0     0.0    185.4    0.0
   SoI         91.5    0.0     0.0      0.0    0.0
   Cons         0.2    0.2     0.6      0.4    0.1
   AS         306.2    0.0     0.0      0.0    0.0


Image

SoT still reigns supreme as our highest-damage Prime glyph for single targets. SotR and AS are just a little under half as effective under normal circumstances. It's even our highest glyph in a WoG rotation, provided we're using SoT. In most practical scenarios, you won't have 26+ expertise without the glyph active, so it's safe to say that SoT will be one of our single target glyphs.

Avenger's Shield is a Major glyph (not Prime) but it's incredibly potent, especially now that we prioritize it over other fillers. Also note that this is only a damage increase on single-targets, on multiple targets it's actually a loss provided your Shield regularly hits 2+ mobs. And it has the drawback of removing the extremely strong multi-target utility of AS. In all likelihood, we'll be swapping between AS for single target fights and an AoE-friendly glyph for multi-target fights.

SotR is our second-best Prime glyph for DPS, though it obviously suffers a bit if you're heavily WoGging.

HotR is a pretty good single-target and AoE glyph, and probably worth using in place of CS or Judgement just for utility.

CS is considerably stronger than it was in Wrath. It's now powerful enough that you would probably run SoT/SotR/CS for a pure single-target fight.

Judgement is weak enough that it probably won't see much use outside of an extremely gimmicky fight. With T13 2-piece, it only provides a very minor survivability benefit (~25 absorb/sec).

Consecration's glyph is a minor DPS increase on single targets, but being a Major glyph it's essentially a freebie. That said, there are quite a few other attractive Major glyphs for utility/survivability, so you may simply not find room for it. It's obviously going to be an increase in AoE as well, provided you get the full duration out of the spell (arguable).


TLDR Summary:
  • SoT and SotR are our highest-DPS single-target Prime glyphs. CS is a distant third for single-targets.
  • HotR is a strong AoE Prime glyph, and worth considering for versatility.
  • AS is a beastly single-target major, while Consecration is a weak single-target major. Cons is moderately useful in AoE as well.
  • For max single-target DPS:
    • Your Prime glyphs should be SoT>SotR>>CS>J
    • Your Major glyphs should be AS>>Cons.
  • For advice on general glyphing strategy, see my Talent Spec & Glyph Guide
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:41 am

Stat Comparison

Setup:
Race: Human (hardly matters)
Talents: 0/32/9
Glyphs: SoT/ShoR/HotR + AS/Cons for 939
Seal: SoT, SoI
Gear: T13 Heroic raid set
Rotation: Standard 939
Buffs: Full raid, 100%
Code: calc_statscaling.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

This sim calculates DPS for a range of STR values (we'll call this the "independent" stat). It then adds the equivalent of 10 itemization points of one "dependent" stat (i.e. 10 STR/AGI/INT, 15 STA, 20 AP, 23 SP, etc.), and recalculates DPS. The difference between the two values is the improvement that those 10 itemization points granted us. By doing this for all of the relevant stats on our gear, we can construct a plot of how each of those stats scales with the independent stat. It then repeats this calculation using Hit and Expertise as the independent stats. This gives us a fairly broad overview of how our DPS scales with different stats.

For this simulation, I have enforced certain caps on particular stats. I've ensured that we're below melee hit, expertise, and mastery caps for the nominal value on the STR plots, so that when we try and add 10 points worth of those stats we don't get a result of zero. For the hit plot, the expertise is fixed at 10, while for the expertise plot I've set hit to 2%.

You might notice that I'm no longer posting separate plots for 939 and W39. The two plots look nearly identical now that WoG is cooldown-restricted, so there really isn't much point in posting and commentating on both. The code still calculates them if you really care, but unless something significant changes I won't be bothering with them from now on. I've also tested the conditional inquisition rotation, and it too looks like the 939 plot.

First, let's look at the STR plot. For reference, the "Armory Strength" (i.e. unbuffed) of the gear set is 4743.

Image

Not much has changed here. Expertise and hit are obviously excellent threat stats, especially now that they impact Holy Power generation. Strength comes in at a distant third.

The Vengeance->AP conversion and the proc from Souldrinker bring Stamina up into fifth place, tied with AP. Note that this is true only at 100% vengeance, and Stamina's value as a DPS stat scales down linearly at lower vengeance levels.

Crit and Agility hang out somewhere in between STA/AP and the "bad" stats.

The rest of our threat stats (Haste, Spellpower, Intellect, and Mastery) fall into a clump at the bottom of the plot. None of these are worthwhile threat stats for us at 85. Haste gained a slight edge on the other stats with the Censure buff in 4.2.2, but it's still a weak threat stat.

Before we go on, I want to dump some more data here. I've calculated the self-healing per second granted by 10 itemization points of each stat at the armory strength level, just so people can see how the T13 set bonus is affected. In addition, I'm now generating the type of stat weights you might want to plug into wowhead if you were trying to rate gear based on DPS. Those are both contained in the tables below:
Code: Select all
SHPS and stat weights
        SHPS/10   DPS Stat Weights
        ipoints   (per point of stat, not itemization-normalized)
exp     2.7267    3.6512
hit     1.9506    2.4005
str    0.47397    1.3988
ap     0.31415   0.59324
sta     1.7862   0.79123
crit   0.29693    1.0236
agi    0.26213   0.89147
haste  0.42936   0.40626
sp     0.26399   0.18709
int    0.22586   0.19055
mas          0         0


Next, let's look at Hit Rating as a primary stat:

Image

The only interesting feature on this plot is the hit rating curve, which nose-dives right at the 8% melee hit cap. There's also a tiny depression right near the cliff that represents hitting the spell hit cap. While in Wrath, we still saw a moderate benefit from hit above the melee cap, the 8% spell hit we get from talents caps our spell hit before that point, making the benefit of hit rating over melee cap exactly zero. So like many DPS classes, hit rating below the cap will be one of our best threat stats, while anything above the cap is wasted.


Finally, let's look at the Expertise graph:

Image

This plot clearly shows the 26-expertise soft cap. After that point hit surpasses expertise, but interestingly Strength doesn't. Expertise stays ahead of Strength all the way up to the hard-cap at 56.


TLDR Summary:
  • Expertise and Hit are our best DPS stats below their respective caps (8% for hit, 26 for expertise soft cap). When gearing for DPS/threat, you should be aiming for 8% hit and around 26 expertise. From that point on, stack more expertise or Strength (expertise is slightly better until the hard-cap).
  • AP, Stamina, Crit, and Agility are all second-tier threat stats.
  • Haste/Mastery/SP/Intellect are all weak threat stats. Don't stack any of them for threat.
  • Note that these are just calculations for maximizing DPS/threat, which is generally not a good gearing strategy in the current environment. This thread is not a "how-to" guide on gearing for progression raiding, it's a dps analysis for better understanding of our mechanics. In other words, use your brain when choosing gear, don't just mindlessly hit-cap and expertise-cap because "Theck said so," because I didn't.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:41 am

Weapon Comparison

Setup:
Race: Blood Elf (no weapon racial)
Talents: 0/32/9
Glyphs: Sot/SotR/HotR+AS/Cons for 939, WoG/SoI/HotR+AS/Cons for W39
Seal: SoT, SoI
Gear: T13 Heroic raid set
Rotation: Standard 939
Buffs: Full raid, 100% Vengeance
Code: calc_weapons.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

The logic behind this simulation is fairly simple. Swap a weapon into the gear set, calculate DPS. Lather, rinse, repeat. There are a few subtleties involved though.

Since weapons often have hit or expertise, we want to enforce limits on the gear set's hit and expertise, so that a weapon with either stat gets credit for those stats. On the other hand... some people hit- and expertise-cap without their weapon. So I've run the simulation twice.
  1. For the first data set, I've altered the stats on the helm in the code so that we have exactly 2% melee hit and 10 expertise without weapon contributions. I've also set mastery to 16.5 mastery on the character sheet, just to make sure we don't hit mastery cap.
  2. For the second data set, I've altered the stats on the helm so that we have exactly 8% melee hit and 26 expertise without weapon contributions (mastery is still fixed at 16.5). This means that a weapon with hit and expertise will be at a slight disadvantage in this data set - hit is essentially worthless and expertise is half it's maximum effectiveness. Note that since hit and expertise both go up in this test, the net DPS results will be noticeably higher.

I've included WoG and SoI self-healing for the W39 rotation to help scrutinize caster weapons. Since there's an interesting feature here, I've given data for W39/SoI and W39/SoT separately.

Since the caster weapons were uniformly weaker than dps or tank options, I've excluded them from the graph. They'll still be on the tables if you're interested in the details, but I see little point in cluttering up the graphs with them anymore.

I've also removed all of the 346 weapons from the simulations in r373, since at this point they're basically irrelevant.

On to the data:

Code: Select all
     
                                                   -W39/SoI--   --W39/SoT--  --939/SoT---
                                                   SHPS   DPS   SHPS   DPS    DPS    DPS
Weapon                                      ilvl      2%/10        2%/10     2%/10  8%/26
Bloodlord's Protector                        353   6113  13265  2521  17884  20685  23819
Renataki's Soul Slicer                       353   6200  13522  2528  18162  21001  23995
Fang of Twilight                             359   6072  13372  2513  18017  20814  23963
Mace of Acrid Death                          359   6130  13354  2524  17993  20802  23959
Soul Blade                                   359   6177  13518  2532  18176  21009  23956
Unbreakable Guardian                         365   6137  13435  2526  18090  20908  24084
Elementium-Edged Scalper                     365   6188  13610  2535  18286  21129  24081
Fang of Twilight (Heroic)                    372   6082  13558  2518  18242  21055  24248
Mace of Acrid Death (Heroic)                 372   6147  13535  2529  18211  21039  24240
Mandible of Beth'tilac                       378   6151  13620  2532  18314  21150  24372
Gavel of Peroth'arn                          378   6152  13621  2532  18315  21151  24373
Obsidium Cleaver                             378   6207  13806  2541  18524  21386  24378
Souldrinker (Raid Finder)                    390   7099  14219  3481  18951  21850  25203
Mandible of Beth'tilac (Heroic)              391   6170  13833  2539  18573  21430  24704
Obsidium Cleaver (Heroic)                    391   6234  14048  2549  18814  21701  24711
Souldrinker                                  403   7267  14521  3636  19303  22233  25657
Souldrinker (Heroic)                         416   7439  14856  3794  19694  22659  26162
                                                                                         
Amani Scepter of Rites                       353   5392  12814  2636  17209  19904  22840
Maldo's Sword Cane                           359   5421  12932  2656  17366  20070  23026
Andoros, Fist of the Dragon King             359   5619  13008  2645  17491  20207  23196
Twilight's Hammer                            359   5529  13006  2657  17495  20209  23187
Lightforged Elementium Hammer                365   5742  13142  2655  17680  20409  23433
Andoros, Fist of the Dragon King (Heroic)    372   5665  13167  2667  17696  20423  23444
Twilight's Hammer (Heroic)                   372   5576  13169  2681  17711  20436  23446
Eye of Purification                          378   6290  13637  2677  18396  21175  24335
Volcanospike                                 378   5524  13282  2687  17806  20547  23323
Firethorn Mindslicer                         378   5626  13329  2686  17889  20634  23467
Crescent Moon                                378   5478  13104  2677  17586  20301  23295
Scepter of Azshara                           378   5479  13148  2689  17648  20367  23366
Ko'gun, Hammer of the Firelord               384   6018  13537  2689  18239  21002  24121
Maw of the Dragonlord (Raid Finder)          390   6134  13689  2701  18430  21206  24362
Eye of Purification (Heroic)                 391   6351  13859  2703  18678  21473  24679
Volcanospike (Heroic)                        391   5584  13488  2714  18073  20829  23610
Firethorn Mindslicer (Heroic)                391   5688  13612  2731  18236  21003  23854
Vagaries of Time                             397   6201  13925  2732  18766  21561  24763
Ko'gun, Hammer of the Firelord (Heroic)      397   6078  13754  2715  18520  21297  24461
Maw of the Dragonlord                        403   6199  13923  2729  18730  21521  24727
Vagaries of Time (Heroic)                    410   6275  14192  2765  19114  21927  25184
Maw of the Dragonlord (Heroic)               416   6271  14188  2761  19068  21877  25138
                                                                                         
Mace of the Sacrificed                       353   6101  13382  2508  18022  20828  23769
Gurubashi Punisher                           353   6161  13408  2528  18064  20885  23857
Zulian Slasher                               353   6169  13480  2540  18140  20968  23903
Crul'korak, the Lightning's Arc              359   6072  13372  2513  18034  20831  23980
Krol Decapitator                             359   6105  13458  2509  18116  20929  23885
Lava Spine                                   359   6139  13414  2535  18093  20908  24073
Scimitar of the Sirocco                      359   6138  13420  2537  18098  20912  24078
Pyrium Spellward                             365   6117  13566  2512  18225  21049  23986
Crul'korak, the Lightning's Arc (Heroic)     372   6082  13558  2518  18262  21075  24268
Lava Spine (Heroic)                          372   6157  13604  2542  18327  21160  24371
Shatterskull Bonecrusher                     378   6086  13654  2521  18378  21200  24416
Ruthless Gladiator's Bonecracker             378   6153  13681  2546  18401  21242  24471
Gatecrasher                                  378   6166  13932  2528  18656  21520  24559
Dragonshrine Scepter                         378   6165  13696  2545  18419  21261  24494
Treachery's Bite                             378   6211  13823  2542  18564  21429  24396
Shatterskull Bonecrusher (Heroic)            391   6097  13876  2526  18651  21492  24760
Ruthless Gladiator's Bonecracker             391   6173  13904  2554  18672  21535  24817
Gatecrasher (Heroic)                         391   6187  14195  2534  18969  21858  24923
Cataclysmic Gladiator's Bonecracker          397   6182  14016  2559  18809  21683  24992
Morningstar of Heroic Will                   397   6208  14282  2523  19075  21976  25033
Hand of Morchok                              397   6197  14040  2559  18839  21716  25031
Spine of the Thousand Cuts                   397   6209  14296  2522  19091  21993  25035
No'Kaled, the Elements of Death              403   6077  14597  2513  19355  22274  25702
Cataclysmic Gladiator's Bonecracker (Elite)  410   6206  14284  2569  19135  22035  25409
Hand of Morchok (Heroic)                     410   6223  14311  2569  19170  22073  25454
Morningstar of Heroic Will (Heroic)          410   6235  14595  2528  19449  22381  25462
No'Kaled, the Elements of Death (Heroic)     416   6087  14940  2517  19752  22703  26211


First, let's look at just the traditional tanking weapons:
Image

Notes for 4.3:
Souldrinker is the new tanking addition this tier. The proc is properly modeled now, which gives it an edge over other tanking weapons in the DPS department. It also provides about 1k healing per second.

Notes for 4.2.2:
There are no significant changes to report.

Notes for 4.2:
There are 4 new tanking weapons this patch. The first two are from the Firelands raid, Mandible of Beth'tilac and Obsidium Cleaver. The Cleaver is a hit/mastery itemization and thus has a slight edge on threat, but most of us will probably want to use the Mandible for the slight survivability and CTC edge. There are also two new crafted items, Elementium-Edged Scalper and Unbreakable Guardian. Again, we have a hit/mastery and an avoid/mastery option, so choose accordingly.

General Notes
Weapon DPS still matters, but it's far less important than it used to be now that we've lost the old implementation of HotR. In 3.x we saw very large jumps in DPS from one item tier to the next, but in 4.0.x it's a more continuous progression. Tanking weapons from one tier with hit or expertise fall just short of the weaker items in the tier above, but the gap is very small (usually <100 DPS). In general higher ilvl (and thus higher weapon DPS) tank weapons will outperform lower ilvl ones, regardless of what stats come on the weapon.

Weapon speed is still relatively important. Cookie's Tenderizer, the only 2.8-speed tanking weapon available, performs as well as normal-mode T11 epic drops. However, we don't have any other slow weapons to choose from for the moment, making the Tenderizer a bit of an anomaly.

Secondary stats and STR/AGI govern where an item falls in relation to its equal-ilvl peers. A weapon with hit or expertise on it will tend to perform better than a pure avoidance/mastery weapon, but the differences won't be all that large. Agility weapons always seem to trail Strength weapons slightly, though still out-DPS lower-ilvl STR items.

--------------------------------------

Now let's add DPS weapons to see how they fare:
Image

Notes for 4.3:
Hand of Morchok is the only new Strength DPS addition in this tier of raids. It's a pretty strong performer, and since it's packing a socket and mastery it's got a good bit of survivability potential. However, the lack of proc means that even an LFR Souldrinker will match or beat its dps. No'kaled, whose proc also vaults it above most other weapons this tier despite being an Agility item, takes the top spot for DPS by a little under 100 DPS. Note that you won't be able to get the LFR version of No'kaled due to class restrictions.

Notes for 4.2.2:
There are no significant changes to report.

Notes for 4.2
There were 3 DPS additions this patch, Shatterskull Bonecrusher, Gatecrasher, and the PVP weapon Ruthless Gladiator's Bonecracker. The Gatecrasher's expertise makes it the highest-DPS weapon this tier, slightly ahead of the Cleaver and significantly ahead of its peers; the 378 version is on par with some of the 391 weapons.

General Notes
As we've consistently seen since 4.0, DPS weapons are not universally stronger than tank weapons anymore. Now that they share the slow 2.6 speed of DPS weapons, tank weapons perform very favorably. A DPS weapon and tanking weapon of equal ilvl will perform almost identically for threat, with small variations depending on secondary stats and AGI/STR.

Spellpower weapons perform "OK," but they're all relatively fast (2.3 speed or faster) and spellpower is just a weak threat stat for us. Both of those factors hurt their DPS potential. Even the best spellpower weapons only manage to perform as well as the lowest-tier tank or DPS weapons, 26 ilvls lower. So for threat, a spellpower weapon isn't going to be an upgrade unless it's 30+ ilvls better than your current weapon.

I haven't plotted self-healing, but you can see from the chart that spellpower weapons tend to boost WoG self-healing by less than 100 HPS, at the cost of 200-500 DPS. I'm not sure that this alone would be significant enough to offset the loss of survivability stats you suffer taking a spellpower weapon over a traditional tanking weapon. Certainly not enough to take them over casters, and probably not enough to worry about at all. The power of WoG isn't in its raw HPS output, but in its timing and availability.

Even worse, if you include SoI healing the raw HPS goes down with most spellpower weapons. Compare Mace of Acrid Death to Andoros or Twilight's Hammer for W39/SoI and you'll see a net HPS loss of around 300. This is a result of PPM proc mechanics - most of these caster weapons are fast, which means a lower chance to proc per attack. Thus, the number of procs from auto-attacks is unchanged, but you get fewer procs from specials. Bizzare, but that's how the numbers work out.


TLDR Summary:
  • Weapon performance can roughly be determined by sorting in this order:
    1. ilvl and speed (+0.2 speed is worth ~ 13 ilvls)
    2. Primary and Secondary stats (STR>AGI, Hit/Exp>Crit/Haste)
  • DPS weapons aren't anything special anymore, they're no better or worse than an equal-ilvl tank weapon with similar primary/secondary stats.
  • Slow spellpower weapons lag tanking weapons by about 26 ilvls at best, fast spellpower weapons are far worse. They don't provide an appreciable survivability/SHPS benefit.
  • Rule of Thumb: Within an ilvl category, pick items based on the secondary stats you like. For upgrades, slower and higher ilvl is almost always better.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:42 am

Enchant/Food Comparison

Setup:
Race: Blood Elf (hardly matters)
Talents: 0/32/9
Glyphs: SoT/ShoR/HotR+AS/Cons for 939, WoG/SoI/HotR+AS/Cons for W39
Seal: SoT, SoI
Gear: T13 heroic raid set
Rotation: Standard 939
Buffs: Full raid, 100% Vengeance
Code: calc_enchant.m, dynamic_model.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012


This is very similar to the Weapon analysis. For the passive enchants and foods, we just apply the effect and calculate DPS. Again, we've done this a couple of times: once with a W39 rotation at low hit and expertise, once with 939 and low hit/exp, and once with 939 at hit cap and expertise soft-cap.

Dynamic enchants are handled by dynamic_model.m, which accurately models their individual DPS contributions, uptime, and avoidance.

I have excluded Berserking, Mongoose, and other Wrath proc-based enchants because they reportedly have lower proc chances at 85, making them far inferior to the Cataclysm options. Since there are no passive Cataclysm weapon enchants, I have included a few of the passive Wrath enchants of interest.

New in this round, I've added avoidance data to the simulation. This isn't all that interesting yet, but once we get Blade Ward back in here it will be interesting to see how it fares as a low-budget alternative to Windwalk.

Code: Select all
                                        DPS (@ Hit/Exp)
                                       W39  ---939---
Weapon Enchant                         --2/10--  8/26
Enchant Weapon - Exceptional Agility    16   24   26
Enchant Weapon - Potency                17   27   31
Enchant Weapon - Greater Potency        19   30   34
Titanium Weapon Chain                   53   67    0
Enchant Weapon - Accuracy               65   85   28
Pyrium Weapon Chain                     76   96    0
Enchant Weapon - Hurricane              47   99  116
Enchant Weapon - Avalanche             139  149  166
Enchant Weapon - Landslide             139  239  300


Food
Mushroom Sauce Mudfish                  42   66   82
Blackbelly Sushi                        45   70   86
Lavascale Minestrone                    46   72  107
Basilisk Liverdog                       62  110  123
Skewered Eel                           104  156  173
Baked Rockfish                         110  164  181
Beer-Basted Crocolisk                  122  194  221
Grilled Dragon                         218  288   82
Crocolisk Au Gratin                    317  401  251



Image

Two of the three proc-based Cataclysm enchants (Landslide and Avalanche) hold a commanding lead over the other options. Hurricane got a slight boost in 4.2.2 thanks to the Censure buff, propelling it ahead of the Titanium Weapon Chain when using SoT. However, the Pyrium weapon chain still out-performs Hurricane, and is likely to be a lot cheaper on most servers, making it the go-to budget option. Of the Wrath-era enchants, Accuracy performs the best but still can't keep up with the new weapon chain. In general we can write off all of the Wrath-era DPS enchants, because even the budget Cata option surpasses them.

Unsurprisingly, the food benefits match our stat scaling. Crocolisk Au Gratin (expertise), Grilled Dragon (hit), and Beer-Basted Crocolisk (STR) lead the pack by a significant margin. At the hit cap, Grilled Dragon drops to last place, providing only the STA benefit of around 70 DPS. Crocolisk Au Gratin still surpasses all but the strength food above expertise cap.


Next let's look at the avoidance results:
Code: Select all
                                       Average Avoidance % (@ Hit/Exp)
                                        W39   ----939----
Weapon Enchant                         ---2/10----   8/26
Enchant Weapon - Potency               0.02   0.02   0.02
Enchant Weapon - Windwalk              0.69   0.74   0.83


Food
Beer-Basted Crocolisk                  0.09   0.09   0.09
Blackbelly Sushi                       0.30   0.30   0.30
Mushroom Sauce Mudfish                 0.33   0.33   0.33


With the loss of Agi->Dodge, this analysis becomes pretty boring. Windwalk is still the only game in town. Blade Ward or Mending would be the "cheap" alternatives for the budget-conscious. Note that Windwalk's speed boost does stack with Pursuit of Justice, unlike the boot enchants.

TLDR Summary:
  • Landslide and Avalanche are our high-DPS enchants.
  • Windwalk gives about 0.75% dodge after DR (uptime-averaged).
  • Crocolisk Au Gratin is our highest-DPS food, followed by Grilled Dragon and Beer-Basted Crocolisk.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

T13 2-piece Ret rotations

Postby theckhd » Wed Jul 28, 2010 6:42 am

Retribution T13 2-piece Rotation Simulations


Setup:
Race: Human (hardly matters)
Talents: 0/32/9
Glyphs: Two sets, #1 is SoT/SotR/HotR/CS for Prime (yes, 4 primes), AS/Cons for Major, #2 is SoI/WoG/HotR/CS for Prime, AS/Cons for Major.
Seal: SoT, SoI
Gear: T13 heroic raid set
Rotation: N/A
Buffs: Full raid, 100%/30% Vengeance
Code: calc_rot_st.m
Revision: r383
Patch: 4.3.2
Date: 25 Feb 2012

This simulation is identical to the single-target rotation sims; in fact, it's exactly the same code. However, I've artificially toggled on the T13 ret 2-piece bonus to see what effect it has on the rotation. Everything else is the same.



#1) SoT active, 2% hit, 10 expertise
Code: Select all
                                               DPS            SHPS            E     I    mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %       
   1  SotR>CS>J>AS                             23650   15386  2099    1842    5.3   0.0   273
   2  SotR>CS>AS>J                             23464   15281  2008    1791    5.9   0.0   176
   3  SotR>HotR>AS>J                           21682   13895  2008    1791    5.9   0.0   176
   4  SotR>CS>J[cdCS>0.5]>AS                   23648   15386  2098    1841    5.3   0.0   272
   5  SotR>AS>CS>J                             23339   15185  2034    1799    7.0   0.0   248
   6  SotR>J>CS>AS                             23412   15218  2114    1842    6.6   0.0   350
   7  SotR>CS>AS+>J>AS                         23557   15335  2041    1810    5.5   0.0   209
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               23554   15334  2039    1809    5.5   0.0   207
   9  SotR>AS+>CS>AS>J                         23478   15278  2039    1805    6.3   0.0   231
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  23556   15334  2041    1810    5.6   0.0   209
  11  SotR>CS>AS>J>HW                          23576   15445  1984    1776    2.0   0.0   -35
  12  SotR>CS>J>AS>HW                          23786   15560  2085    1833    1.5   0.0    82
  13  SotR>CS>AS>J>Cons                        23707   15436  1992    1781    3.9   0.0  -114
  14  SotR>CS>J>AS>Cons                        23890   15538  2086    1834    3.3   0.0    -4
  15  SotR>CS>AS>J>HW>Cons                     23670   15506  1959    1762    0.8   0.0  -246
  16  SotR>CS>J>AS>HW>Cons                     23838   15592  2060    1818    0.6   0.0  -102
  17  SotR>CS>AS>J>Cons>HW                     23726   15521  1962    1763    1.1   0.0  -282
  18  SotR>CS>J>AS>Cons>HW                     23906   15613  2063    1820    0.8   0.0  -146
  19  SotR>CS>AS+>J>AS>Cons>HW                 23827   15574  2002    1786    0.9   0.0  -228
  20  SotR>AS+>CS>AS>J>Cons>HW                 23707   15506  1978    1768    1.2   0.0  -263
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            23542   15380  2047    1790    3.0   0.0  -154
  22  Inq>CS>AS>J                              20354   13324  2032    1743    6.7  98.7   149
  23  Inq>HotR>J>AS                            19568   12515  2154    1812    6.1  98.8   276
  24  Inq>CS>J>AS                              20521   13414  2154    1812    6.1  98.8   276
  25  Inq>CS>AS+>J>AS                          20386   13337  2076    1767    6.3  98.8   183
  26  Inq>AS+>CS>AS>J                          20391   13333  2081    1768    7.2  98.6   208
  27  Inq[buffInq<2]>SotR>CS>J>AS              23537   15307  2152    1841    5.7  80.0   258
  28  ISotR>Inq>CS>J>AS                        23615   15356  2151    1841    5.7  78.1   259
  29  SDSotR>Inq>CS>J>AS                       23973   15581  2133    1836    5.6  54.7   261
  30  SDSotR>ISotR>Inq>CS>J>AS                 24187   15717  2130    1842    5.5  46.5   264
  31  SDSotR>ISotR>Inq>CS>AS>J                 23975   15597  2029    1785    6.1  46.8   168
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             24086   15661  2066    1806    5.8  47.7   201
  33  ISDSotR>Inq>CS>AS>J                      23280   15157  2041    1772    6.3  82.7   159
  34  Inq>CS>AS>J>Cons>HW                      20873   13755  1975    1709    1.4  98.8  -332
  35  Inq>HotR>AS>J>Cons>HW                    19903   12841  1975    1709    1.4  98.8  -332
  36  ISotR>Inq>CS>AS>J>Cons>HW                23772   15562  1989    1748    1.2  77.1  -309
  37  SDSotR>Inq>CS>AS>J>Cons>HW               24079   15749  1977    1745    1.2  56.6  -304
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         24296   15884  1979    1754    1.2  47.8  -298
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         24488   15982  2089    1816    0.9  47.5  -164
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     24409   15944  2022    1778    1.0  48.8  -247
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              23639   15479  1986    1738    1.2  82.8  -314
  42  WoG>CS>J>AS                              18382   12112  4129    3202   11.7   0.0   145
  43  WoG>SotR>CS>J>AS                         21861   14262  3986    3121    5.5   0.0   263
  44  WoG>CS>AS+>J>AS                          18599   12256  4133    3209   11.0   0.0   120
  45  WoG>SotR[cdWoG>10]>CS>J>AS               20118   13195  4195    3261    7.8   0.0   176
  46  WoG>Inq>CS>J>AS                          19998   13087  4029    3105    6.1  81.6   276
  47  WoG>CS>J>AS>Cons>HW                      19013   12608  4129    3202    4.8   0.0  -372
  48  WoG>SotR>CS>AS+>J>AS                     21778   14218  3929    3090    5.8   0.0   200
  49  WoG>SotR>CS>J>AS>Cons>HW                 22148   14511  3932    3087    0.9   0.0  -167
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             22081   14480  3874    3056    1.0   0.0  -248
  51  WoG>SotR2>CS>J>AS>Cons>HW                20715   13576  2044    1815    0.4   0.0   -44
  52  WoG>Inq>CS>J>AS>Cons>HW                  20461   13469  3964    3065    1.1  81.3  -206
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              20362   13421  3906    3029    1.4  81.2  -275
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            21989   14420  3957    3078    1.0  57.7  -189
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     22414   14682  3949    3084    0.9  34.2  -180
  56  SotR>CS>J>AS>HoW                         24844   16192  2065    1821    0.6   0.0   114
  57  SotR>CS>AS>J>HoW                         24783   16171  1969    1768    0.8   0.0    -6
  58  SotR>CS>J>HoW>AS                         24580   16042  2003    1759    0.3   0.0    37
  59  SotR>CS>AS>HoW>J                         24676   16151  1776    1643    0.2   0.0  -277
  60  SotR>CS>HoW>AS>J                         24494   16057  1690    1578    0.2   0.0  -395
  61  SotR>HoW>CS>AS>J                         24324   15946  1665    1547    1.0   0.0  -387
  62  HoW>SotR>CS>AS>J                         24225   15884  1647    1526    1.4   0.0  -390
  63  SotR>CS>AS+>J>AS>HoW                     24806   16178  2005    1789    0.7   0.0    40
  64  SotR>CS>AS+>J>HoW>AS                     24690   16110  1975    1762    0.5   0.0     9
  65  SotR>CS>AS+>HoW>J>AS                     24620   16111  1790    1643    0.1   0.0  -253
  66  SotR>CS>AS+>HoW>AS>J                     24587   16105  1731    1612    0.2   0.0  -340
  67  SotR>CS>HoW>AS+>J>AS                     24555   16074  1777    1624    0.1   0.0  -263
  68  SotR>CS>AS>HoW>J>Cons>HW                 24587   16101  1743    1623    0.0   0.0  -380
  69  SotR>CS>J>AS>HoW>Cons>HW                 24752   16139  2043    1808    0.0   0.0   -18
  70  SotR>CS>AS>J>HoW>Cons>HW                 24654   16101  1929    1744    0.0   0.0  -187
  71  SotR>CS>J>HoW>AS>Cons>HW                 24549   16023  1993    1753    0.0   0.0   -34
  72  SotR>CS>HoW>AS>J>Cons>HW                 24437   16024  1669    1565    0.0   0.0  -461
  73  SotR>HoW>CS>AS>J>Cons>HW                 24363   15980  1638    1531    0.0   0.0  -556
  74  HoW>SotR>CS>AS>J>Cons>HW                 24316   15954  1619    1508    0.0   0.0  -597
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     25283   16549  1727    1593    0.0  46.9  -397
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     25388   16566  1942    1732    0.0  48.8  -207
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     25470   16593  2065    1802    0.0  48.3   -38
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     25270   16483  2012    1746    0.0  48.5   -58
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     25169   16464  1825    1626    0.0  47.5  -243
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     25111   16462  1648    1532    0.0  47.0  -479



#2) SoI active, 2% hit, 10 expertise
Code: Select all
                                               DPS            SHPS            E     I    mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %       
   1  SotR>CS>J>AS                             16908   11166  5851    4062    5.5   0.0   732
   2  SotR>CS>AS>J                             16918   11182  5785    4027    6.1   0.0   639
   3  SotR>HotR>AS>J                           15274    9902  5785    4027    6.1   0.0   639
   4  SotR>CS>J[cdCS>0.5]>AS                   16907   11166  5850    4062    5.5   0.0   731
   5  SotR>AS>CS>J                             16755   11066  5764    4007    7.3   0.0   699
   6  SotR>J>CS>AS                             16625   10971  5808    4028    7.0   0.0   804
   7  SotR>CS>AS+>J>AS                         16931   11187  5812    4042    5.8   0.0   671
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               16930   11187  5811    4042    5.8   0.0   669
   9  SotR>AS+>CS>AS>J                         16886   11153  5790    4026    6.5   0.0   684
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  16932   11187  5811    4042    5.8   0.0   672
  11  SotR>CS>AS>J>HW                          17092   11387  5760    4012    2.2   0.0   424
  12  SotR>CS>J>AS>HW                          17076   11361  5831    4050    1.7   0.0   539
  13  SotR>CS>AS>J>Cons                        17202   11363  5768    4017    4.1   0.0   346
  14  SotR>CS>J>AS>Cons                        17181   11339  5835    4053    3.6   0.0   452
  15  SotR>CS>AS>J>HW>Cons                     17255   11490  5736    3998    0.9   0.0   207
  16  SotR>CS>J>AS>HW>Cons                     17207   11442  5810    4038    0.7   0.0   349
  17  SotR>CS>AS>J>Cons>HW                     17301   11499  5739    3999    1.2   0.0   173
  18  SotR>CS>J>AS>Cons>HW                     17263   11456  5812    4039    0.9   0.0   307
  19  SotR>CS>AS+>J>AS>Cons>HW                 17305   11491  5772    4018    1.0   0.0   229
  20  SotR>AS+>CS>AS>J>Cons>HW                 17266   11475  5732    3992    1.4   0.0   189
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            16960   11266  5676    3938    3.2   0.0   277
  22  Inq>CS>AS>J                              13356    8965  5331    3694    7.1  97.7   519
  23  Inq>HotR>J>AS                            12390    8064  5408    3736    6.5  98.0   638
  24  Inq>CS>J>AS                              13286    8909  5408    3736    6.5  98.0   638
  25  Inq>CS>AS+>J>AS                          13303    8926  5354    3706    6.8  98.0   549
  26  Inq>AS+>CS>AS>J                          13314    8929  5343    3698    7.6  97.7   568
  27  Inq[buffInq<2]>SotR>CS>J>AS              15865   10521  5618    3889    6.0  79.2   664
  28  ISotR>Inq>CS>J>AS                        15982   10594  5628    3897    6.0  76.7   667
  29  SDSotR>Inq>CS>J>AS                       16647   11007  5670    3929    5.9  52.2   680
  30  SDSotR>ISotR>Inq>CS>J>AS                 16884   11155  5723    3967    5.8  44.6   695
  31  SDSotR>ISotR>Inq>CS>AS>J                 16890   11169  5652    3929    6.4  44.7   602
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             16901   11172  5677    3942    6.1  45.6   634
  33  ISDSotR>Inq>CS>AS>J                      15878   10540  5502    3819    6.7  81.3   562
  34  Inq>CS>AS>J>Cons>HW                      14001    9480  5283    3666    1.6  97.9    23
  35  Inq>HotR>AS>J>Cons>HW                    13092    8624  5283    3666    1.6  97.9    23
  36  ISotR>Inq>CS>AS>J>Cons>HW                16519   11038  5507    3829    1.4  75.7    93
  37  SDSotR>Inq>CS>AS>J>Cons>HW               17095   11390  5544    3856    1.4  53.7   109
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         17325   11530  5600    3897    1.3  45.6   126
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         17286   11484  5678    3940    1.0  45.4   257
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     17325   11520  5631    3914    1.1  46.6   178
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              16377   10953  5449    3787    1.4  81.5    76
  42  WoG>CS>J>AS                              12687    8552  7887    5458   11.9   0.0   524
  43  WoG>SotR>CS>J>AS                         15383   10211  7869    5446    5.8   0.0   690
  44  WoG>CS>AS+>J>AS                          12897    8691  7924    5486   11.2   0.0   507
  45  WoG>SotR[cdWoG>10]>CS>J>AS               14040    9392  8064    5582    8.1   0.0   584
  46  WoG>Inq>CS>J>AS                          13043    8755  7575    5229    6.5  78.3   638
  47  WoG>CS>J>AS>Cons>HW                      13320    9050  7887    5458    5.0   0.0     5
  48  WoG>SotR>CS>AS+>J>AS                     15413   10236  7831    5426    6.1   0.0   630
  49  WoG>SotR>CS>J>AS>Cons>HW                 15769   10523  7811    5409    1.0   0.0   251
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             15818   10564  7773    5389    1.1   0.0   173
  51  WoG>SotR2>CS>J>AS>Cons>HW                14595    9752  5539    3881    0.4   0.0   348
  52  WoG>Inq>CS>J>AS>Cons>HW                  13614    9207  7512    5190    1.3  78.0   143
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              13640    9237  7452    5153    1.7  78.0    77
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            15022   10076  7637    5281    1.2  55.9   188
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     15660   10467  7713    5336    1.1  32.4   215
  56  SotR>CS>J>AS>HoW                         18130   11987  6031    4171    0.7   0.0   615
  57  SotR>CS>AS>J>HoW                         18266   12087  5980    4145    0.9   0.0   503
  58  SotR>CS>J>HoW>AS                         17923   11871  5993    4124    0.4   0.0   547
  59  SotR>CS>AS>HoW>J                         18546   12309  5903    4093    0.3   0.0   238
  60  SotR>CS>HoW>AS>J                         18509   12307  5851    4049    0.2   0.0   115
  61  SotR>HoW>CS>AS>J                         18370   12216  5811    4010    1.2   0.0   124
  62  HoW>SotR>CS>AS>J                         18298   12172  5794    3990    1.5   0.0   120
  63  SotR>CS>AS+>J>AS>HoW                     18204   12041  5999    4155    0.8   0.0   548
  64  SotR>CS>AS+>J>HoW>AS                     18114   11990  5978    4133    0.7   0.0   517
  65  SotR>CS>AS+>HoW>J>AS                     18409   12218  5905    4084    0.2   0.0   269
  66  SotR>CS>AS+>HoW>AS>J                     18537   12313  5874    4071    0.2   0.0   168
  67  SotR>CS>HoW>AS+>J>AS                     18340   12178  5896    4068    0.2   0.0   259
  68  SotR>CS>AS>HoW>J>Cons>HW                 18540   12311  5864    4070    0.0   0.0   113
  69  SotR>CS>J>AS>HoW>Cons>HW                 18124   11988  5996    4149    0.0   0.0   474
  70  SotR>CS>AS>J>HoW>Cons>HW                 18260   12095  5929    4114    0.0   0.0   309
  71  SotR>CS>J>HoW>AS>Cons>HW                 17929   11877  5975    4114    0.0   0.0   467
  72  SotR>CS>HoW>AS>J>Cons>HW                 18502   12306  5826    4034    0.0   0.0    27
  73  SotR>HoW>CS>AS>J>Cons>HW                 18487   12300  5783    3993    0.0   0.0   -65
  74  HoW>SotR>CS>AS>J>Cons>HW                 18463   12291  5763    3972    0.0   0.0  -102
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     18750   12464  5719    3963    0.0  44.9    66
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     18441   12224  5792    4013    0.0  46.5   256
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     18284   12102  5866    4052    0.0  46.1   421
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     18090   11995  5842    4015    0.0  46.9   410
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     18348   12198  5768    3965    0.0  46.3   239
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     18699   12454  5673    3922    0.0  45.7   -23


#3) SoT active, 8% hit, 26 expertise
Code: Select all
                                               DPS            SHPS            E     I     mps
  Q#  Priority                                 V=100%  V=30%  V=100%  V=30%   %     %         
   1  SotR>CS>J>AS                             28418   18554  2514    2239    5.2    0.0   261
   2  SotR>CS>AS>J                             28533   18688  2319    2148    4.1    0.0   -17
   3  SotR>HotR>AS>J                           25981   16706  2319    2148    4.1    0.0   -17
   4  SotR>CS>J[cdCS>0.5]>AS                   28418   18554  2514    2239    5.2    0.0   261
   5  SotR>AS>CS>J                             28035   18317  2406    2174    6.5    0.0   178
   6  SotR>J>CS>AS                             28228   18413  2542    2246    6.1    0.0   330
   7  SotR>CS>AS+>J>AS                         28377   18541  2443    2202    5.2    0.0   172
   8  SotR>CS>AS+>J[cdCS>0.5]>AS               28377   18541  2443    2202    5.2    0.0   172
   9  SotR>AS+>CS>AS>J                         28215   18434  2421    2186    5.9    0.0   172
  10  SotR>AS[buffGC<2][buffGC>0]>CS>AS+>J>AS  28377   18541  2443    2202    5.2    0.0   172
  11  SotR>CS>AS>J>HW                          28770   18924  2309    2144    0.4    0.0  -197
  12  SotR>CS>J>AS>HW                          28662   18796  2511    2238    1.4    0.0    82
  13  SotR>CS>AS>J>Cons                        28855   18894  2313    2145    2.1    0.0  -272
  14  SotR>CS>J>AS>Cons                        28762   18776  2503    2235    3.0    0.0   -12
  15  SotR>CS>AS>J>HW>Cons                     28830   18962  2306    2142    0.0    0.0  -249
  16  SotR>CS>J>AS>HW>Cons                     28775   18868  2468    2219    0.4    0.0  -117
  17  SotR>CS>AS>J>Cons>HW                     28974   19014  2309    2144    0.2    0.0  -364
  18  SotR>CS>J>AS>Cons>HW                     28846   18901  2469    2220    0.3    0.0  -163
  19  SotR>CS>AS+>J>AS>Cons>HW                 28894   18947  2380    2175    0.3    0.0  -282
  20  SotR>AS+>CS>AS>J>Cons>HW                 28578   18755  2341    2145    0.7    0.0  -334
  21  sdAS>sdJ>SotR>CS>AS>J>Cons>HW            28159   18451  2454    2177    2.5    0.0  -137
  22  Inq>CS>AS>J                              23742   15660  2219    1996    4.1  100.0   -17
  23  Inq>HotR>J>AS                            22628   14528  2502    2145    5.2  100.0   261
  24  Inq>CS>J>AS                              23803   15634  2502    2145    5.2  100.0   261
  25  Inq>CS>AS+>J>AS                          23687   15575  2401    2088    5.2  100.0   172
  26  Inq>AS+>CS>AS>J                          23663   15557  2380    2074    5.9  100.0   172
  27  Inq[buffInq<2]>SotR>CS>J>AS              28636   18676  2551    2219    5.2   87.2   261
  28  ISotR>Inq>CS>J>AS                        28636   18676  2551    2219    5.2   87.2   261
  29  SDSotR>Inq>CS>J>AS                       28574   18637  2530    2210    5.2   62.3   261
  30  SDSotR>ISotR>Inq>CS>J>AS                 28984   18899  2537    2227    5.2   53.9   261
  31  SDSotR>ISotR>Inq>CS>AS>J                 28977   18955  2313    2115    4.1   59.1   -17
  32  SDSotR>ISotR>Inq>CS>AS+>J>AS             28928   18877  2454    2182    5.2   55.5   172
  33  ISDSotR>Inq>CS>AS>J                      28197   18458  2292    2076    4.1   92.3   -17
  34  Inq>CS>AS>J>Cons>HW                      24300   16072  2203    1988    0.2  100.0  -364
  35  Inq>HotR>AS>J>Cons>HW                    22982   14833  2203    1988    0.2  100.0  -364
  36  ISotR>Inq>CS>AS>J>Cons>HW                29169   19134  2298    2092    0.2   89.7  -364
  37  SDSotR>Inq>CS>AS>J>Cons>HW               28927   18978  2277    2079    0.2   69.4  -364
  38  SDSotR>ISotR>Inq>CS>AS>J>Cons>HW         29495   19338  2301    2109    0.2   59.5  -364
  39  SDSotR>ISotR>Inq>CS>J>AS>Cons>HW         29455   19279  2485    2201    0.3   57.3  -163
  40  SDSotR>ISotR>Inq>CS>AS+>J>AS>Cons>HW     29492   19320  2383    2147    0.3   58.5  -282
  41  ISDSotR>Inq>CS>AS>J>Cons>HW              28729   18854  2278    2069    0.2   92.6  -364
  42  WoG>CS>J>AS                              22038   14589  4509    3567   11.1    0.0   136
  43  WoG>SotR>CS>J>AS                         26489   17336  4404    3518    5.2    0.0   261
  44  WoG>CS>AS+>J>AS                          22295   14761  4509    3573   10.3    0.0   102
  45  WoG>SotR[cdWoG>10]>CS>J>AS               24235   15969  4574    3632    7.0    0.0   146
  46  WoG>Inq>CS>J>AS                          23506   15448  4417    3464    5.2   91.8   261
  47  WoG>CS>J>AS>Cons>HW                      22704   15111  4509    3567    4.3    0.0  -373
  48  WoG>SotR>CS>AS+>J>AS                     26462   17332  4336    3483    5.2    0.0   172
  49  WoG>SotR>CS>J>AS>Cons>HW                 26932   17692  4344    3488    0.3    0.0  -163
  50  WoG>SotR>CS>AS+>J>AS>Cons>HW             26982   17739  4258    3445    0.3    0.0  -282
  51  WoG>SotR2>CS>J>AS>Cons>HW                25078   16475  2516    2251    0.0    0.0    44
  52  WoG>Inq>CS>J>AS>Cons>HW                  24061   15888  4339    3422    0.3   92.3  -163
  53  WoG>Inq>AS+>CS>J>AS>Cons>HW              23926   15823  4271    3382    0.6   91.6  -279
  54  WoG>ISotR>Inq>CS>J>AS>Cons>HW            26491   17416  4363    3462    0.3   76.1  -163
  55  WoG>SDSotR>ISotR>Inq>CS>J>AS>Cons>HW     27189   17851  4355    3475    0.3   41.5  -163
  56  SotR>CS>J>AS>HoW                         29722   19441  2473    2224    0.3    0.0    83
  57  SotR>CS>AS>J>HoW                         29684   19459  2305    2142    0.0    0.0  -146
  58  SotR>CS>J>HoW>AS                         29402   19261  2380    2140    0.0    0.0   -24
  59  SotR>CS>AS>HoW>J                         29443   19334  2134    2010    0.0    0.0  -332
  60  SotR>CS>HoW>AS>J                         29292   19247  2084    1961    0.0    0.0  -378
  61  SotR>HoW>CS>AS>J                         29151   19159  2051    1926    0.2    0.0  -404
  62  HoW>SotR>CS>AS>J                         29056   19096  2038    1904    0.3    0.0  -403
  63  SotR>CS>AS+>J>AS>HoW                     29743   19476  2374    2173    0.1    0.0   -49
  64  SotR>CS>AS+>J>HoW>AS                     29683   19443  2354    2157    0.0    0.0   -71
  65  SotR>CS>AS+>HoW>J>AS                     29443   19334  2134    2010    0.0    0.0  -332
  66  SotR>CS>AS+>HoW>AS>J                     29443   19334  2134    2010    0.0    0.0  -332
  67  SotR>CS>HoW>AS+>J>AS                     29303   19249  2099    1968    0.0    0.0  -354
  68  SotR>CS>AS>HoW>J>Cons>HW                 29443   19334  2134    2010    0.0    0.0  -332
  69  SotR>CS>J>AS>HoW>Cons>HW                 29492   19301  2452    2211    0.0    0.0   -25
  70  SotR>CS>AS>J>HoW>Cons>HW                 29668   19450  2302    2140    0.0    0.0  -155
  71  SotR>CS>J>HoW>AS>Cons>HW                 29402   19261  2380    2140    0.0    0.0   -24
  72  SotR>CS>HoW>AS>J>Cons>HW                 29292   19247  2084    1961    0.0    0.0  -378
  73  SotR>HoW>CS>AS>J>Cons>HW                 29018   19081  2018    1906    0.0    0.0  -495
  74  HoW>SotR>CS>AS>J>Cons>HW                 28983   19055  1991    1876    0.0    0.0  -543
  75  ISotR>SDSotR>Inq>CS>AS>HoW>J>Cons>HW     30182   19807  2096    1959    0.0   53.9  -332
  76  ISotR>SDSotR>Inq>CS>AS>J>HoW>Cons>HW     30325   19860  2294    2105    0.0   59.8  -155
  77  ISotR>SDSotR>Inq>CS>J>AS>HoW>Cons>HW     30192   19736  2468    2191    0.0   59.0   -25
  78  ISotR>SDSotR>Inq>CS>J>HoW>AS>Cons>HW     30127   19720  2382    2114    0.0   54.6   -24
  79  ISotR>SDSotR>Inq>CS>HoW>J>AS>Cons>HW     29975   19670  2149    1968    0.0   50.1  -259
  80  ISotR>SDSotR>Inq>CS>HoW>AS>J>Cons>HW     30063   19742  2050    1914    0.0   50.6  -378


The 2-piece is worth approximately 600-1000 DPS at low hit, depending on Cons/HW usage, but only around 400 DPS at high hit. The explanation is in the "E%" column; at high hit, the rotation is already pretty tight and we're not seeing much of a change in the number of empty GCDs. However, in the low-hit case, we've gone from ~7% empties (w/o 2-piece) to ~5%.

In addition, we see that J>AS prioritization tend to gain a bit of ground on the AS>J priorities, pulling far enough ahead that AS+ prioritization becomes a DPS loss. The same seems to be true in the sub-20% queues.

TLDR Summary
  • The ret 2-piece is worth somewhere in the vicinity of 600-1k DPS, less as you stack more hit and expertise.
  • SotR>CS>J>AS(>Cons>HW mana permitting) is the best non-Inq rotation.
  • (SotR if Sacred Duty or Inquisition active)>Inq>CS>AS+>J>AS is the best conditional Inq rotation.
  • Below 20%, slip hammer into filler spots ahead of Cons/HW. In other words, SotR>CS>J>AS>HoW>Cons>HW.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:42 am

FSM Simulation Details

The code now uses a "Finite-State Machine" or "FSM" implementation to calculate ability weight values. This is a pretty drastic change from our previous simulation methods, and a significant improvement in many areas.

For reference, the old analytical modeling, priority simulation, and numerical modeling methods are detailed in the appendix.

The basic idea behind a Finite-State Machine is to catalog every possible "state" of the system, along with the possible transitions between states. From that information, the code tries to determine the state distribution of the system in equilibrium. In many senses, it's very similar to a Markov chain.

There are pros and cons to each of the methods we've used, but the FSM implementation has the most pros and fewest cons by far:

Analytical Model
  • Pros
    1. very fast in MATLAB
    2. simple to debug
    3. gives exact DPS values
  • Cons
    1. limited to very simple queues
    2. not very flexible
    3. needs to be re-written every time game mechanics change
Priority Simulation + Numerical Modeling
  • Pros
    1. very flexible
    2. easy to update as game mechanics change
    3. fast once database is generated and modeled
  • Cons
    1. simulation is slow
    2. noisy even for long sim times
    3. generating the database takes ~days
    4. did I mention slow?
FSM
  • Pros
    1. very fast compared to priority sims
    2. results can be easily cached and stored for re-use
    3. gives exact DPS values
    4. very flexible
    5. easily updated when game mechanics change
  • Cons
    1. a little more complicated to code
    2. limited Matlab support for graphs (overcome by using C#)


As a simple example of how the FSM code works, let's look at a limited system of a Paladin with two spells, Crusader Strike and SotR, and a priority queue of SotR>CS. There are only two things to track in this system - the cooldown of Crusader Strike and the amount of Holy Power the Paladin has. We can represent that with two digits, one for the cooldown and one for the amount of Holy Power.

For our initial state, let's just start with no holy power and no cooldown on CS. We represent this state as:

Code: Select all
state0=[0 0]  (cooldown=0, holypower=0)


So far so good. To determine the transitions between states, we consider the priority queue. In this state, we can't cast a 3-HP SotR, so the only transition is to use CS, which takes us to one of two state:
Code: Select all
state1=[3 1] (cooldown=3, holypower=1)  (if CS hits)
state2=[3 0] (cooldown=3, holypower=0)  (if CS misses)


Since the GCD is active we can't cast anything, so the transitions out of these states are all "do nothing and wait 1.5 seconds." If we do that, we knock 1.5s off of the CS cooldown, leading to the states [1.5 1] and [1.5 0]. In both of those states, we'd again "do nothing" for another 1.5s, leading to states [0 1] and [0 0]. At that point, we again consult the queue and see that in both of those states, we'd choose to cast CS again, leading to the following new transitions (we already know what happens in [0 0]):
Code: Select all
[0 1] -> [3 2] (if CS hits)
[0 1] -> [3 1] (if CS misses)


We could draw this out, with each state as a node and each transition between states being an arrow pointing from the beginning state to the end state. If we did that, it would look a lot like a graph or a flow chart (see any of the figures in the Wikipedia article).

If we continued this process, we'd eventually reach a point where we've cataloged all possible states and transitions, at which point we'd have a complete graph of the "state space." For our simple system, we have a very small state space - it's even simpler than I've shown, because we can skip all of the possible states where the GCD blocks transitions. That narrows it down to:
Code: Select all
[0 0]  [1.5 0]
[0 1]  [1.5 1]
[0 2]  [1.5 2]
[0 3]  [1.5 3]


In other words, 8 different states. In practice, we'd be tracking more things - the cooldowns of 5-8 different spells, the duration of several buffs (Inq, Grand Crusader, Sacred Duty), internal cooldowns (Eternal Glory), and so forth. An actual state space in one of our sims can be as large as 20k-30k states. And we need to store the transitions between states, as well as the probability of each transition.

Creating the graph is just the first step, we also need to solve the system to find its equilibrium. You can think of this as figuring out what the average process flow through the graph is.

A simple process flow for our graph would look something like this, assuming every CS was successful:
Code: Select all
[0 0]->[1.5 1]->[0 1]->[1.5 2]->[0 2]->[1.5 3]->[0 0]
CS  - (empty)-  CS  - (empty)-  CS  -  SotR  -

That's just one way a sequence could go - you could also imagine an endless string of CS misses that just bounces you back and forth between [0 0] and [1.5 0], or any other combination. What we want is the weighted average of every possible process.

The old priority simulation code effectively did this by starting at one point on the graph and traveling through it many, many times. It just kept track of the current state and rolled the dice to see what the next transition was. That's pretty good, but it takes a long time and is always susceptible to statistical noise. The even older, analytical code could only do this for very limited systems in which there were very few states with well-defined transitions.

FSM implementations can be solved in a variety of ways. One can construct a transition matrix M that contains all of the transition probabilities and solve the linear system associated with it using standard linear algebra techniques. Unfortunately, when you're dealing with matrices of this size (20,000 x 20,000 elements) many of those techniques take an incredibly long time unless the matrix is particularly well-behaved. Instead, we've used an iterative technique that starts in a given state (usually one where each state has a probability of 1/N, where N is the number of states) and then calculates the change in each state from one step (essentially matrix multiplication of state vector v, v_out=M*v). It then repeats that process until the change in any state is smaller than a predefined tolerance threshold.

It turns out that the state generation and iterative solving process is quite a bit faster to do in C# than Matlab, so our implementation calls an executable file to do the state generation and crunching. We then import the results into Matlab and do our post-processing on the stat weights like we've always done.

The C# code that handles the FSM logic can be found in the RotationCalculator\Matlabadin\ folder within the trunk. You should be able to use any C# development environment to fool with it, including the free Microsoft Visual C# express 2010. If you want to compile it, you'll need a C# compiler or the Microsoft .Net framework.

Finally, to give credit where credit is due, the FSM implementation we're using wouldn't exist without all the hard work put in by Iminmmnni, who suggested we try this route. He has written and maintained the vast majority of the C# code, and been absolutely essential in getting it working and implemented.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Topic #12

Postby theckhd » Wed Jul 28, 2010 6:42 am

Retired as of 4.0.6
Appendix I: Analytical Model of 939


While the priority code is very nice, simming things out whenever you need it is pretty time intensive. As a shortcut, I've been saving a few useful outputs so that I can just load them up rather than re-run the sim.

However, the 939 rotation is very static, and easily dealt with analytically, which solves a lot of headaches. In this post, I'm going to work out the math I'm using to model the rotation so that others can double-check my work. The code can be found in the trunk if you want to take a look.


The Basics

939 can be modeled as a quasi-static rotation that looks like this:

CS-J-CS-X-CS-ShoR-

This is a 9-second rotation, but it's actually a little longer thanks to the possibility of ShoR misses. We'll deal with that later, first we want to document how many casts we get of each spell in those 9 seconds:

3 CS
1 J
? ShoR*
? AS
? HW
? Cons

CS/J are easy. ShoR is complicated by SD procs and the fact that we'll recast it immediately if it misses. AS/HW/Cons are complicated by Grand Crusader procs. We'll address both of these issues in turn.

ShoR handling
There are two components to getting an accurate value for the effective number of ShoR casts. First is dealing with Sacred Duty crits, second is figuring out the average number of GCDs it takes to cast ShoR.

Using the following notation, it's fairly simple to derive both of these:

Code: Select all
p = chance of melee success (1-%miss-%dodge-%parry)
q = 1-p (%miss+%dodge+%parry)
s = chance of sacred duty proc
R = raw damage of ShoR before crits
C = ShoR crit multiplier (i.e. 2)
c = ShoR crit chance factor (i.e. 1+%crit)


At three holy power, we cast ShoR. It could hit or miss, so we start with the form:

Code: Select all
dmg = p*(average damage of a hit on the first cast)+q*(other stuff)


On the first cast, there's an s chance of a crit for CR damage, and a (1-s) chance of a regular ShoR, which could be a crit or a hit, with average damage cR:

Code: Select all
dmg = p*( sCR + (1-s)*cR) + q*(other stuff)


If the first ShoR misses, we lose Sacred Duty, so we no longer have to worry about that. In that case, we cast another ShoR, which has the usual chance p of hitting for cR or q for missing:

Code: Select all
dmg = p*( s*CR + (1-s)*cR) + q*( p*cR + q*(other stuff))


You can already see where this is going - recursion. "other stuff" is always p*cR+q*(other stuff). If we start multiplying out that term, we get:

Code: Select all
dmg = p*( s*CR + (1-s)*cR) + p*cR*(q + q^2 + q^3 + ....)


The terms of the form q^n form a geometric series that converges to q/(1-q):

Code: Select all
dmg = p*( s*CR + (1-s)*cR) + p*cR*q/(1-q)


We can pull out c*R and do some algebra to get

Code: Select all
dmg = p*cR*(1 + s*(C/c-1) + q/(1-q)) = p*cR*(s(C/c-1)+1/(1-q)) = p*cR*(s(C/c-1)+1/p) = cR*(p*s*(C/c-1)+1)


or, written another way,

Code: Select all
dmg = R*(c + p*s*(C-c))


In other words, we get (c + p*s*(C-c)) "casts" of ShoR out, multiplied by the raw damage (or 1+p*s*(C/c-1) casts multiplied by the "net" damage c*R).

The GCD cost of re-casting ShoR is much easier to calculate. There is a probability p that we succeed on the first cast and only require 1 GCD, a probability of q*p that we succeed on the second cast, q^2*p on the third, and so forth. Multiplying each of those probabilities by the number of GCDs looks like this:

Code: Select all
G= 1*p + 2*qp + 3*pq^2 + 4*pq^3 + 5*pq^4 + ... = p*(1+2q+3q^2+4q^3+5q^4+...) = p*sum((n+1)*q^n, 1, infinity)


This is a form of arithmetic power series, and has the solution p/(1-q)^2 = 1/p (proof).

Avenger's Shield, Holy Wrath, and Consecration
Grand Crusader makes dealing with the "X" in the rotation a bit complicated. It's not as simple as just saying "we cast AS every other cycle, and Holy Wrath in the alternate ones if we don't get a GC proc." This is because if you do get a GC proc, you've put AS on cooldown and the next cycle becomes the "HW if no GC" portion.

Instead, you have to ask the question, "for any given cycle, what's the chance that AS will be off of cooldown when X occurs." It's fairly easy to figure this out, starting from an initial cycle where AS is not on cooldown.

Let p be the probability that GC procs at least once in three Crusader Strikes or Hammers of the Righteous. Note that Grand Crusader only procs if the attack connects. For HotR this is easy; since it automatically connects, q is just 0.8^3 (the chance of all three generating no procs), and p is just p.HotR = 1-q.HotR = 1-0.8^3, or conceptually, (chance of at least one proc in 3 HotRs) = 1-(chance of no GC procs in 3 HotRs).

For Crusader Strike it's more complicated, because we need to consider CS misses as well. Again, we consider q first:
Code: Select all
q.CS=binopdf(0,3,m) ...           %no connects
    +binopdf(1,3,m).*(0.8) ...    %one connects, no proc
    +binopdf(2,3,m).*(0.8).^2 ... %two connects, no procs
    +binopdf(3,3,m).*(0.8).^3;    %three connects, no procs

In this expression, m is the chance your CS will hit the boss (i.e. your net melee success chance).
The first line is the probability that all three CS's miss. The second is the probability of one successful CS multiplied by the probability of that success not causing a proc. The third is the probability of two CS hits times the probability that neither generate a proc, and so on. p.CS is just 1-q.CS like usual.

We could then write a table like this:

Code: Select all
Iteration     p(AS)        q(AS)
1              1             0
2              p             q
3            q+p^2         1-q-p^2
4         1-q^2-qp^2       q^2+qp^2
5       q^3+q^2*p^2+p    q-q^2*p^2-q^3


While it may not be immediately obvious from the table because I've simplified expressions, there's actually a pattern here. The element in the p(AS) column of row N is always p times the p(AS) element in row N-1 plus the element in q(AS) of row N-1. In other words, it's

p(AS,N)=p*(probability that AS was cast on previous X) + (probability AS was not cast on previous X)

p(AS,N)=p*p(AS,N-1)+q(AS,N-1)

This might converge, but it's ugly enough that I'd rather do it numerically. I just use this rule to generate the table down through 50 iterations and define P=p(AS,50) as the probability we cast AS in X. Actually, I'm defining mean(p(AS,49:50)) as the probability, because if you don't spec Grand Crusader, the method "screws up" a bit and alternates between 0 and 1. Taking the mean short-circuits this to give us the proper value of 0.5.

Consecration can only be cast every 36 seconds in this scheme, which means that it only gets cast once every 4 cycles regardless of glyph.

Holy Wrath is then 1-P if we ignore Consecration, or 1-P-0.25 if we use Consecration.

I've ignored seal casts up until now, but those are easy - 3 chances from CS, one from SotR, one from Judgement. If we use m for melee hit and r for ranged hit, that's 4m+r.

Finally, once we're in Execute range we drop AS, Cons, and HW in favor of Hammer of Wrath. This is trivially accounted for by multiplying AS, Cons, and HW by 0.81 (% of time above execute range) and adding one cast of Holy Wrath to the list multiplied by 0.19 (% of time spent in execute range).

So our ability usage looks like this (evaluated using the T11 gear set, modified to be at hit- and expertise-caps:

Code: Select all
Skill #casts               evaluated
CS:   3                      3
J:    1                      1
ShoR: c+p*s*(C-c)            1.4865*
AS:   P*0.81                 0.5255
HW:   (1-P-0.25)*0.81        0.0820
Cons: 0.25*0.81              0.2025
HoW   1*0.19                 0.19
Seal  4*m+r                  4.7


All of that occurs in just over 9 seconds due to ShoR misses. The exact length of the cycle should be:

9+1.5*(G-1)



Running the code we get the following output:
Code: Select all
       xtragcd: 0.0811
         acdps: 13941
         padps: 4682
        totdps: 18623


"acdps" is the DPS from the stuff we've modeled here, "padps" is the passive DPS from censure, melee, and SoT procs.
"totdps" is just the sum of these two, which is our total dps. For comparison, prio_sim gave us values of 18513 and 18997 above and below execute range, respectively, which gives us a weighted average of 18610. That's in excellent agreement given the inherent statistical error due to discretization of ShoR misses and GC procs.

For most of the rest of the simulations, I'm going to be using the analytical model simply because it's a little faster to work with, and 99% as accurate.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Postby theckhd » Wed Jul 28, 2010 6:43 am

Retired as of 4.1

Appendix IIa:Priority Simulations

The (now deprecated) rotation simulation code is available on the matlabadin project page, as are the priority models used.

The simulation works by simulating a limited combat environment. It keeps track of ability cooldowns, holy power, and the GCD, iterating in user-definable time steps. At each time step, it checks the priority queue in order and casts the first thing for which the conditionals are true.

While it's capable of incorporating haste effects (by working in time steps of 0.1s or less), that leads to some weird situations. For example, since Holy Wrath is a spell it has a shorter GCD than a melee attack like Crusader Strike. Thus, you can end up in a situation that looks like this:

CS-HW-????

If your Holy Wrath GCD is shorter than 1.5 seconds by at least one full timestep, CS still won't be off of cooldown. However, if something else is (Judgement perhaps, or Consecration) it'll try and cast that instead. That pushes CS back by almost a full GCD, inevitably causing a massive drop in DPS.

Because of this, I've simulated in time steps of 0.5 seconds, which is essentially throwing out haste as far as our spellcast choices are concerned. Since we are unlikely to want to deviate from casting CS on every alternate cooldown, this shouldn't be an issue.

If you're looking at old queues, there are some non-standard abbreviations and things to note:

  • SD stands for Sacred Duty, and means that in a case where you have 3 Holy Power, no Sacred Duty buff, and Judgement is off of cooldown, you prioritize Judgement (instead of just casting SotR) to "fish" for a Sacred Duty proc.
  • J2 stands for Judgement in the 2nd "filler" slot before a finisher. It's probably irrelevant, but it was something I was toying with as a way to eke out more SD/SotR damage. It's only a weak theoretical increase though.
  • SotR# stands for an #-point SotR. If the number is omitted, it's assumed to be a 3-pointer.
  • SDSotR# stands for an #-point SotR if and only if Sacred Duty is up. If # is omitted, it's assumed to be 3.
  • Inq is coded in such a way that it will only refresh if the duration is <1 second. This means that Inq overlap time is essentially 0, because this condition forces a refresh at 8 GCDs instead of 6 GCDs. Just like SotR#, Inq# would stand for an #-point Inq.
  • An asterisk after any damage-dealing ability (i.e. SotR*) indicates the conditional "if and only if Inquisition is Active."
  • Inq* is the exception to its own rule. Inq* stands for forcing an Inq cast at 3 HP, regardless of remaining duration. For casts at lower HoPo, I'll use Inq#* just like SotR.
  • CS+ means "CS if HoPo<3," and is a way to put CS at the top of the queue without allowing the sim to be stupid.

The simulation is run for 30k GCDs, or roughly 12 and a half hours of combat. That's a long time, but random procs are random, and it's still entirely possible to get variations of 30-50 DPS or more from sim to sim. That's around 0.4% or less of variation, but I'd say that a more reasonable threshold for significance is around 0.5% (or around 75 DPS). In other words, if the difference between two sims is less than around 75 DPS, they're roughly the same as far as we're concerned.

I've also included some information that helps us interpret the simulations. "Empty" is the number of empty GCDs, and "E%" is simply the percentage of empties (Empty/30k). "SotR miss" is the number of missed SotRs in the parse, while "AS cast" is the number of Avenger's Shields cast. SotR miss and AS cast give you some idea whether those factors were a significant source of variation in a given sim. If rotation A had 1500 SotR misses, and rotation B had only 1000, we might expect B to perform better even if A is better (or equal) on paper. Similarly, if B had many more AS casts, it might've had more favorable luck with Grand Crusader procs, which could give it an "unfair" advantage.


Appendix IIb: Numerical Rotation Model

The old analytical model we've been using for 4.0.3a no longer works for the new Holy Power generation mechanics, so I've archived it in the appendix. Before proceeding with the new method, I want to briefly discuss the reasons we had to abandon the analytical approach.

Out with the old...
The primary issue is that there are factors that affect the cast sequences and damage values in the rotation. The primary one is hit and expertise, but talents like Sacred Duty, Grand Crusader, and Eternal Glory also cause problems. With guaranteed Holy Power generation, we were able to ignore a lot of these effects, and simply wrap them into the average damage done by each ability. We then needed small correction terms for the talented effects as described in the Appendix. We also needed to correct for the one hit/exp effect that did affect the cast sequence (SotR misses), which is also described in the Appendix.

However, the change to Holy Power generation in 4.0.6 threw a wrench into this. Now the result of a CS attack does affect the rest of the rotation in a very significant and hard to model way. It may delay SotR, which then causes cooldown clashes with Judgement or AS. That means that the cast probabilities of J and AS change, which then collaterally affects the other fillers. It also makes all of those probabilities harder to calculate, because the availability of J and AS suddenly depends on what happened in the previous cycle. This makes everything much more sensitively dependent on hit and expertise, because you're not just missing abilities, you're also changing the entire cast composition of the rotation.

I tried to work out the analytical problem for a single "block" of CS-X- to determine the probability of each filler spell being in slot X at an arbitrary spot in the rotation, taking into account all of these effects. In the end though, I failed - the problem became too complex too quickly, and none of my attempts gave me anything that I felt was consistent enough to be an accurate model.

One alternative concept that we considered (and tlitp worked very hard on, at least as hard as I did on the analytical approach) was breaking things down into independent "macroblocks" that represent the casts between one SotR and the next. In other words, if you start with 0 Holy Power and succeed on all three CS casts, your macroblock would be CS-X-CS-X-CS-SotR. If we represent that in a shorthand that just represents CS successes as 1 and CS failures as 0, that macroblock is 111. The macroblocks with 1 unsuccessful CS cast and 3 successful ones are 1011, 1101, and 0111.

This method has some advantages - for one thing, we can explicitly and easily calculate the probability of each CS macroblock. The fillers are still difficult though, but we may have been able to be calculated recursively. However, the big disadvantage is that, if we limit ourselves to considering macroblocks of length 7 or less (since we would want to refresh Holy Shield by that point), there are 63 different macroblocks for CS alone, all of which needed to be coded by hand. And we still didn't have a reliable way to handle fillers!

I even suggested a method where we generate a string of N random numbers to represent the CS casts, which would then quickly be broken down into a string of macroblocks. We'd then fill in the empty spots with SotR, then J, then AS. This might be faster than the priority sim code, but is fundamentally no different, and has most of the same disadvantages.

Despite all the hard work, none of these seemed to be reasonable approaches. I punted on the analytical approach, and after further scrutiny it made little sense to go with the macroblock approach, which was half-numerical and half-analytical. If we're going to go numerical, why go half-hog and make the entire thing very rigid and complicated? Why not go whole-hog numerical, and take advantage of all the work we had put into the priority simulations? So that's exactly what we did.

... and in with the new
We could continue with a brute-force method, namely to run the priority simulation code every time we wanted to calculate DPS. This has several disadvantages, the biggest being that it's very slow. Running the simulation long enough to get ~1% or better accuracy in the results takes time, and doing that many times for a single calculation ends up being prohibitive. In addition, we'll still have variations on the order of ~1% that make exact values hard to come by, since 1% is around 100 DPS or more. In many cases, this would mean that the noise threshold is larger than the results of our calculations.

Instead, we've taken a slightly more intelligent approach. Rather than run the simulation code every time we want a value, we run the code a number of times under certain configurations and generate curve fits for the results. We can store the coefficients of these curve fits in a database, and then when we want the results of a calculation we can access the appropriate portion of the database to extract the fit coefficients. From that data, we can accurately reproduce the results of any given simulation in under a second.

This has a lot of pros and very few cons.
  • The biggest pro is speed - accessing the database and generating results is as quick or quicker than the analytical model was. It takes several hours (up to 6 or so on my i7-2600K running at 4GHz) to generate the database, which is a con, but we only have to do that once, or at least once every time we make significant changes, and it's all done automatically in the code so it can be performed unattended.
  • Another pro is consistency - with the numerical model, we're essentially evaluating a function F for certain inputs F(x,y,z). Since the function doesn't change, we will always get the same outputs for the same inputs. This means that we won't see 50-100 DPS variations between runs.
  • We also get consistency in interpolation. For example, if we know that the function increases monotonically with x, then we know that if we feed the function F(x+a,y,z), it will always give a larger result than F(x,y,z). In the priority sim, variations could lead to one sim erroneously suggesting F(x+a,y,z) is lower than F(x,y,z).
  • Generality - One problem with analytical models is that they tend to be very specific. This means that one little change (like, oh, say, only granting Holy Power on successful CS, or a chance to get Holy Power from AS) disrupts the entire model, and requires reformulation. Despite spending weeks working on a new analytical model for 4.0.6, we still couldn't iron out enough of the bugs to make it work right.

    In contrast, this method is very general, and can accommodate anything the priority sim can handle (which is more or less everything). Blizz could completely overhaul the rotation next week and it wouldn't matter. We'd just have to make minor adjustments to the priority code, regenerate the database, and we'd be ready to go. From a time-saving point of view, I'd rather let the computer spend 6 hours overnight regenerating the database than spend 10-20 hours or more trying to model the new mechanics analytically.
  • Since the priority code already handles Inquisition, seal procs, and talents like Grand Crusader or Sacred Duty properly, we no longer have to use adjustment factors to approximate their effects.

The code is more or less finished, and can be seen here:
rotation_db_gen.m
rotation_db_data.m
rotation_db_fit.m
rotation_db.m
and of course, the updated rotation_model.m, which turns the database entries into CPS/DPS/HPS/TPS values.

Since I value transparency and community scrutiny in this code, I want to briefly describe the process flow so that people can check my work.
rotation_db_gen.m is the master script that creates the "rotation database." It does so by calling rotation_db_data.m to generate data sets at different hit/exp values with the prio_sim() function. It then calls rotation_db_fit.m to take the output of the simulations and fits them with 5th-order polynomials (i.e. a*x^5+b*x^4+c*x^3+d*x^2+e*x+f), where x is your chance to hit with SotR (mdf.mehit in the code). It then stores the constants a-f and generates output code in a text file, which we copy/paste into rotation_db.m. The output code is written such that when rotation_db is run, it creates structures containing the constants a-f.

There's an additional complication to all of this, which is that talents like Grand Crusader, Sacred Duty, and Eternal Glory have a significant effect. Thus, we can't just generate function of hit/expertise, we also need those functions to depend on these talents. In other words, y=F(x) won't cut it, we need y=F(x,GC,SD,EG). In practice, we do this by calculating F(x) for every ability and every possible configuration of GC, SD, and EG, so that we have a 5-dimensional matrix that gives us a-f for any choice of the four parameters (ability,GC,SD,EG).

To illustrate how this works, here's an example graph from a test run that shows how this works. This is a very short run for demonstration purposes (3 runs of N=100 for each hit value), so the accuracy is very low, but it does a good job of illustrating the idea. For the actual database, we run 30 runs of N=1000, or 30k GCDs for each value of mdf.mehit.

Image

The blue and red traces are data generated by prio_sim for the "coefficient weight" and "casts per second" of SotR, respectively. The black line with circles represents the fit to the data, which is what we extract the coefficients a-f from. The line at 0 is for inquisition uptime modeling - in this rotation, we don't use Inq at all, and the fit reflects that by giving us 0 for a-f.

There are a few subtleties left to discuss. GC, SD, and EG are not the only three external factors that affect the rotation. An obvious one is the Consecration glyph, which would affect the availability of Cons as a filler. However, the variation due to that is very small, and not worth the additional computation time of extending the code to incorporate a fourth external parameter. I've run everything with the Cons glyph enabled just in case, but it's unlikely that disabling it would result in a significant DPS increase. And in the current environment, we may not have mana to cast Consecration frequently enough for it to matter anyway.

A less obvious one is the double-latency penalty on CS. Since CS has a cooldown, you can't use the ability queue system to queue it up ahead of time. Thus, you're limited to mashing the button so that it fires as soon as the cooldown is up. What this means in practice is that the effective cooldown on CS is not 1.5s+latency like other spells, but 1.5s+2*latency. The code doesn't attempt to model this at all (and never did). If we decide to include it, the more convenient way to do so is to simply treat the GCD as 1.5+2*latency seconds rather than add complexity to the database generation.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Glossary

Postby theckhd » Wed Jul 28, 2010 6:43 am

This section will define acronyms that appear over and over again in calculations. I have tried to be good about defining these clearly in newer calculations as well, but this master list should contain everything you need just in case.

Current Terminology (See the 3.0 thread if you want discontinued Wrath acronyms)
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7717
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Next

Return to Advanced Theorycraft and Calculations

Who is online

Users browsing this forum: Google [Bot] and 1 guest


Remove Advertisements

Who is online

In total there are 2 users online :: 1 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
Most users ever online was 380 on Tue Oct 14, 2008 6:28 pm

Users browsing this forum: Google [Bot] and 1 guest