Warlords of Draenor Theorycraft Discussion

(Sticky)

100 Human Death Knight
19640
Couple of questions based on patch notes:

Level-60 rune regeneration talents can now be triggered by the following abilities at a rate proportional to their Runic Power costs: Breath of Sindragosa, Conversion, Dark Simulacrum, Mind Freeze (glyphed), Outbreak (glyphed), and Raise Ally (unglyphed).


-Does "proportional to costs" mean that each spec's Runic Power dump's baseline cost is used as a baseline? For Blood/Unholy, for instance: 30 RP = 45% chance to proc RE/RC or 2 charges of Blood Tap.

-Will Frost's baseline cost differ from Blood and Unholy's? Frost Strike costs 35 RP baseline on Live and is then reduced in actual cost with Improved Frost Presence- will this change?

-Runic Corruption and Runic Empowerment are easy to understand since they work on % based chances, which will (I assume) scale with the amount of RP spent. What about Blood Tap? If we're going to see a "partial charge" system for BT, could you elaborate on how visible this will be in logs and the UI?

-How will Shadow Infusion (Unholy DKs) and stacking health buff (Blood DKs) work with this system? Will some abilities proc them? Will they follow similar logic to what we've seen with RP?
Reply Quote
Game Designer
06/09/2014 11:01 PMPosted by Kaydeethree
Re the attack tables, what's the ceiling for values? Say, a level 35 creature attacking a level 100 player should have +97.5% chance to get dodged/parried/blocked from what's listed on the character sheet. Actual values don't get that high, do they?

-edit: Also, spell resist?


No cap. Spell Resist is in that block of tables, either "Player attacking Level 90 Creature, Spell Attack", or "Level 80 Creature attacking Player, Spell Miss Chance" depending upon which direction you're talking.
Reply Quote
100 Tauren Druid
15855
1. Are personal buffs like Savage Roar/Slice and Dice meant to benefit from the pandemic mechanic as well? HoTs are working that way too.

2. Are SR and Tiger's Fury going to snapshot? Currently they do not. Completely reverses the old idea of always having SR up before Rip, now Rip up before SR.
Edited by Kraineth on 6/10/2014 1:10 AM PDT
Reply Quote
Game Designer
06/10/2014 12:45 AMPosted by Magdalena
-Does "proportional to costs" mean that each spec's Runic Power dump's baseline cost is used as a baseline? For Blood/Unholy, for instance: 30 RP = 45% chance to proc RE/RC or 2 charges of Blood Tap.

-Will Frost's baseline cost differ from Blood and Unholy's? Frost Strike costs 35 RP baseline on Live and is then reduced in actual cost with Improved Frost Presence- will this change?


It's out of 30 for all specs. Frost Strike still has 100% of normal rate due to its base cost.

06/10/2014 12:45 AMPosted by Magdalena
-Runic Corruption and Runic Empowerment are easy to understand since they work on % based chances, which will (I assume) scale with the amount of RP spent. What about Blood Tap? If we're going to see a "partial charge" system for BT, could you elaborate on how visible this will be in logs and the UI?


BT will keep track of partial charges under the hood, invisibly. (Just like how a Windwalker's Tigereye Brew charges are)

06/10/2014 12:45 AMPosted by Magdalena
-How will Shadow Infusion (Unholy DKs) and stacking health buff (Blood DKs) work with this system? Will some abilities proc them? Will they follow similar logic to what we've seen with RP?

They'll only be triggered by Death Coil and Sindragosa's Breath, and will follow similar logic.
Reply Quote
Game Designer
06/10/2014 01:07 AMPosted by Kraineth
1. Are personal buffs like Savage Roar/Slice and Dice meant to benefit from the pandemic mechanic as well? HoTs are working that way too.

2. Are SR and Tiger's Fury going to snapshot? Currently they do not. Completely reverses the old idea of always having SR up before Rip, now Rip up before SR.


1. Yes.
2. TF should already snapshot (bug if not). We're still considering SR.
Reply Quote
100 Human Death Knight
19640
06/10/2014 01:18 AMPosted by Celestalon
They'll only be triggered by Death Coil and Sindragosa's Breath, and will follow similar logic.


Thanks for the confirmation. Here's some preliminary math I've done on the subject- could you tell me if it all looks OK, or if anything is off?

For all specs:

Breath of Sindragosa: Each tick costs 15 Runic Power. This translates to a 22.5% chance to proc RE/RC or 1 Blood Charge generated per tick.

Glyphed Mind Freeze: Costs 15 RP, and therefore behaves like one tick of BoS.

Dark Simulacrum: Costs 20 Runic Power. This translates to a 30% chance to proc RE/RC. For Blood Tap, it means 1.3 guaranteed charges. The “1” appears instantly, while the .3 remains hidden till it is added to.

Conversion: Each tick costs 5 Runic Power. This translates to a 7.5% chance to proc RE/RC or 0.3 partial charges of Blood Tap.

Glyphed Outbreak: Costs 30 Runic Power, and thus perfectly supplants a Death Coil/Frost Strike in terms of proc chance and Blood Charge generation. This same logic applies to Unglyped Raise Ally.

In addition, we note that Shadow Infusion and Blood’s stacking health buff are procced by Breath of Sindragosa, but NOT by any of the other RP dumps.

Shadow Infusion for Unholy DKs works similarly to the partial charge system of Blood Tap. Every 15 RP spent per tick of BoS generates 0.5 charges of Shadow Infusion, thus 2 ticks of BoS = 1 charge of Shadow Infusion.

The stacking health buff for Blood DKs is simply sliced in half. Every 15 Runic Power spent by Breath of Sindragosa increases Maximum Health by 2.5%
Reply Quote
Game Designer
Edited the Resolve post: We're going to try Resolve working on % Heals, though may backtrack on that if it proves problematic.
Reply Quote
Game Designer
06/10/2014 01:47 AMPosted by Magdalena
Thanks for the confirmation. Here's some preliminary math I've done on the subject- could you tell me if it all looks OK, or if anything is off?


Yep, all looks correct, except Sindragosa+Enhanced Death Coil, which I'm not sure about; will check tomorrow.
Reply Quote
100 Human Death Knight
19640
06/10/2014 01:19 AMPosted by Celestalon
1. Yes.


In line with this question: Does this also apply to buffs like Rune of the Fallen Crusader? If this is the case, does this mean every "refresh" would re-trigger the heal component of FC?
Reply Quote
Game Designer
No, just ones that you would otherwise attempt to recast as close to its end as possible. Rune of the Fallen Crusader isn't controllable like that.
Reply Quote
MVP - World of Warcraft
90 Human Mage
10015
To clarify Improved Blizzard perk: is it triggered once per tick per target, or just once per tick regardless of number of targets?
________________________________________________
Find answers to questions about Mage mechanics in
Lhivera’s Compendium • http://lhiveras-library.com/compendium

“I learned long ago, never to wrestle with a pig. You get dirty, and besides, the pig likes it.”
– George Bernard Shaw
Reply Quote
2 Troll Shaman
0
Hello!

Presuming that partial blood tap charges are effectively floored ( 1.3 charges is treated as 1 charge, not 2, in terms of being able to spend it or not), do you foresee any problems with the partial charges being useless? Focusing on raiding in PVE, and presuming that conversion seems similar levels of use to mists (read: none), we'll be getting 1 or 2 charges from everything bar Dsim, and it takes 4 Dsim's to generate a "bonus charge". Uses of Dsim are already few and far between, and looking for 4 or more uses in any one combat length is rare. Do you plan on having partial charges decay at the same rate as normal charges to avoid using Dsim 3 times prior to a fight to build up .9 charges?

I'm also curious if you happen to have the ppm of rune of the fallen crusader, and cinderglacier, and if there are any plans to make ppms as transparent as rppms in the spell data.
Reply Quote
100 Human Paladin
18480
For those interested in formulaic ways to express the combat data Celestalon provided, here you go.

Source data is all from http://us.battle.net/wow/en/forum/topic/13087818929?page=1#16
-----------------------------------------------------------------------------------------------------------------

For all sections:
LD = target_level - source_level
max(x,y) is the usual maximum function, returns the larger of x or y
min(x,y) is the usual minimum function
(X) indicates a boolean operation that is 1 if X is true and 0 if X is false.

target_* is the target's current value at the time of the event. So for example, a paladin with 30% block on the character sheet at the time of an attack would have target_block=30%.

source_* is the source's current value at the time of the event. So for example, a rogue attacking a boss would have source_expertise = 7.5%. (see below)

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

Crit Suppression

Crit chance against a target is:
net_crit = source_crit - max( LD, 0 )

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

Block, Dodge, Parry, Miss, Spell Miss, Glance, Crushing Blow Chance

Every actor's (meaning players and npcs) base dodge, parry, melee miss, and block is 3.0%, provided they are capable of that result (ex: druids can't parry). This is the value before talents, spec, and gear bonuses. Base spell miss is 6% (double melee miss) for both players and npcs.

NPCs have 0% hit and expertise. Players have a base 7.5% hit and 7.5% expertise in WoD.

As usual, melee attacks are subject to miss, dodge, parry, and block. Ranged attacks are subject to miss and dodge. Spells may only miss. Auto-attacks are the only attacks subject to glances and crushing blows, and both are asymmetric based on target (glances only player->npc, crushes only npc->player).

It's worth noting here that unlike MoP, expertise affects dodge and parry equally (as it did in earlier expansions) rather than sequentially. So 7.5% expertise ends up reducing the target's dodge chance by 7.5% and their parry chance by 7.5%.

Formulas:

net_block = target_block + 1.5% * LD

net_dodge = target_dodge + 1.5% * LD - source_expertise

net_parry = target_parry + 1.5% * LD + 3% * ( LD > 2 ) * (target_is_npc) - source_expertise

net_melee_miss = target_melee_miss + 1.5% * LD + 1.5% * max( LD - 3, 0 ) * (target_is_npc) - source_hit

net_spell_miss = target_spellmiss + 3% * LD + 8% * max( LD - 3, 0 ) - source_hit - source_exp

net_glance = ( LD > 3 ) * (target_is_npc) * ( 10% + 10% * LD )

net_crush = ( LD < -3 ) * ( -15% - 10% * LD ) * (target_is_player)


(The crush formula is a little funny-looking, but note that LD is always negative if ( LD < -3 ) is true, so -10*LD is always positive)

In case you don't feel like double-checking my math on every single entry there (not that I blame you, I threw it in MATLAB to avoid exactly that!) here are two sets of plots representing the given data (blue solid line) and the values these models spit out (green circles). As you can see, these models match every single data point we've been given.

https://www.dropbox.com/s/vznwsdtmfdsvexl/defensive_matching.png
https://www.dropbox.com/s/pono1i44daxfvlg/offensive_matching.png

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

Armor information

Paladin/Warrior/Rogue-type npc armor values can be exactly matched by the equations:

armor = round( 0.006464588162215 * exp( 0.123782410252464 * level ) ) if level < = 100
armor = 134 * level - 11864 if level > = 100


Mage-type npc armor values are matched by the equations**:
mage_armor = round( 0.005174717123423 * exp( 0.123777893791586 * level ) ) if level < = 100
mage_armor = 107 * level - 9471 if level > = 100


**With one exception: the level 97 armor value produced by the formula is 848, instead of the given 847.
Edited by Theck on 6/10/2014 5:43 PM PDT
Reply Quote
100 Gnome Mage
16140
Ack, sorry, I meant elemental resistance (we needed FR for molten core, for example), not hit/miss. It got removed from the character sheet in 5.0 but it still exists on old gear. Does it actually do anything any more?
Reply Quote
Game Designer
Looks like the ItemScaling table I referenced in the description of Resolve isn't actually in the DBCs, after all. So, I dumped the relevant data at the bottom of the Resolve post.
Reply Quote
Game Designer
06/09/2014 08:33 PMPosted by Doubdan
-How is bonus armor working in terms of the mitigation, just like armor? I see a separate "damage reduction by xx.xx%" when I mouse over bonus armor and I guess that's multiplicative? Currently it looks very strong for tanks considering that it’s both offensive and defensive stat.


The tooltips on the character sheet are actually misleading. Base Armor DR and Bonus Armor DR can't be combined. You need to combine the Base Armor and Bonus Armor, and then formulate a Total Armor DR (DR=Armor/(Armor+K)). Future alpha build will have that fixed. K is looked up in the game tables as mentioned, but for easy reference, it's 3610 for a 100 attacker, and 5234 for a 103 attacker.

06/09/2014 08:33 PMPosted by Doubdan
-When I checked out wowhead for some datamining, I realized that with stat-squish affecting everything, the stats of low level weapons are totally in a mess where 164lv 2h could be lower than 115lv 2h and a lv35 quest reward could not find update until lv70…do devs have any plan to fix that to make up for the feeling of powering up and rewarding during leveling of new toons?


I think what you're seeing is how the level jumps in between expansions were removed. I don't see the lvl35 quest reward that you're referring to. Also remember that in old expansions, the power of an item was based on its ilvl *and* its quality. That's not the case at high level gear, but still is in low level gear. A Karazhan item was better than a Netherstorm item. Now that there's a smooth progression from Netherstorm to Howling Fjord, the Karazhan item can be better than Howling Fjord too, which is appropriate for its difficulty.
Edited by Celestalon on 6/10/2014 12:48 PM PDT
Reply Quote
Game Designer
Players vs Lower Level Creatures, Damage Taken/Dealt Adjustments
Here are the details about how you'll still be able to solo old raids (without being Mione). This includes pseudo-code, so get your imaginary interpreters ready.

Damage Taken Reduction
All players receive a damage reduction factor when attacked by a creature that is lower level. This applies only to creatures from expansions prior to Mists of Pandaria. All damage taken from qualifying creatures is multiplied by DamageTakenFactor, as determined below:
LevelDiff = PlayerLevel - CreatureLevel
if (CreatureExpansion < Pandaria) then
// 10% DR per level diff, with a floor of 10%
DamageTakenFactor = max(1.0 - 0.1 * LevelDiff, 0.1)
else
DamageTakenFactor = 1.0
end


Damage Dealt Increase
All players receive a damage increase factor when dealing damage to a creature that is lower level. This applies only to creatures from expansions prior to Mists of Pandaria. All damage dealt to qualifying creatures is multiplied by DamageDealtFactor, as determined below:
LevelDiff = PlayerLevel - CreatureLevel
if (CreatureExpansion >= Pandaria) then
DamageDealtFactor = 1.0
elseif (LevelDiff < 5) then
// Ranges from 1.0625 to 1.25 vs. 1-4 LevelDiffs
DamageDealtFactor = 1 + 0.0625 * LevelDiff
elseif (LevelDiff < 10) then
// Ranges from 4.0 to 6.0 vs. 5-9 LevelDiffs
DamageDealtFactor = 1.5 + 0.5 * LevelDiff
else
// Maximum factor of 16.5 vs. 10+ LevelDiffs
DamageDealtFactor = 16.5
end


Alternate Inter-Expansion Damage Adjustments
We also want to provide power growth within an expansion, despite the fact that we've flattened the ilvl power curve within each old expansion. This applies only to creatures from expansions prior to Mists of Pandaria. To do that, we calculate an alternate set of damage dealt/taken factors, and use either these ones, or the normal ones, whichever is most beneficial to the player.
MaxPlayerLevelsByExpansion = {69, 79, 84, 89, 0, 0}
IntendedItemLevelByExpansion = {65, 115, 200, 346, 0, 0}
MaxPlayerLevel = MaxPlayerLevelsByExpansion[CreatureExpansion]
IntendedItemLevel = IntendedItemLevelByExpansion[CreatureExpansion]

if (PlayerLevel <= MaxPlayerLevel and
PlayerEquippedItemLevel > IntendedItemLevel) then
AlternateDamageTakenFactor = 1 - 0.01 * (PlayerEquippedItemLevel - IntendedItemLevel)
AlternateDamageDealtFactor = 1 + 5/3*0.01 * (PlayerEquippedItemLevel - IntendedItemLevel)
DamageTakenFactor = min(DamageTakenFactor, AlternateDamageTakenFactor)
DamageDealtFactor = max(DamageDealtFactor, AlternateDamageDealtFactor)
end


EDIT: Added note to the last section that it only applies to expansions prior to MoP. Revised the code to make that more clear.
Edited by Celestalon on 6/10/2014 4:11 PM PDT
Reply Quote
100 Tauren Druid
18100
Reporting an issue Stenhaldi found last night.

Ferals when shifting into caster form lose our Mastery, AP conversion from agility, Savage Roar, and the 5% crit we get from cat form. This is the way it has always been which hasn't been a problem until now. Previously if we shifted into caster form our snapshotted bleeds stayed ticking for the same amount.

Now that DoT's are updating dynamically if we shift into caster form current DoT's lose everything. I am guessing this is just something that hasn't been accounted for with the new dynamic DoT system, but I wanted to make sure it was on the radar, and verify that it is not expected.
Reply Quote
Game Designer
06/10/2014 01:47 AMPosted by Magdalena
The stacking health buff for Blood DKs is simply sliced in half. Every 15 Runic Power spent by Breath of Sindragosa increases Maximum Health by 2.5%


06/10/2014 01:53 AMPosted by Celestalon
06/10/2014 01:47 AMPosted by Magdalena
Thanks for the confirmation. Here's some preliminary math I've done on the subject- could you tell me if it all looks OK, or if anything is off?


Yep, all looks correct, except Sindragosa+Enhanced Death Coil, which I'm not sure about; will check tomorrow.


Clarification on this: Every other tick of Breath of Sindragosa will trigger an Enhanced Death Coil effect. (5% every other tick, not 2.5% every tick)
Reply Quote
Game Designer
06/10/2014 05:43 AMPosted by Lhivera
To clarify Improved Blizzard perk: is it triggered once per tick per target, or just once per tick regardless of number of targets?


Per damage event. A Blizzard on empty ground does nothing. A Blizzard on 10 enemies reduces Frozen Orb's cooldown by 10sec per Blizzard tick. (Yes, that may be too strong; we'll see how it goes in testing.)

06/10/2014 06:07 AMPosted by Mendenbarr
Presuming that partial blood tap charges are effectively floored ( 1.3 charges is treated as 1 charge, not 2, in terms of being able to spend it or not), do you foresee any problems with the partial charges being useless? Focusing on raiding in PVE, and presuming that conversion seems similar levels of use to mists (read: none), we'll be getting 1 or 2 charges from everything bar Dsim, and it takes 4 Dsim's to generate a "bonus charge". Uses of Dsim are already few and far between, and looking for 4 or more uses in any one combat length is rare. Do you plan on having partial charges decay at the same rate as normal charges to avoid using Dsim 3 times prior to a fight to build up .9 charges?


It takes 3 Dark Sims to collect the partial charge into a full charge. Also, conversion will likely be more valuable because of this change. This is purely a bonus, so not concerned if a couple tiny fractions are left over unused at the end of a fight.

06/10/2014 06:07 AMPosted by Mendenbarr
I'm also curious if you happen to have the ppm of rune of the fallen crusader, and cinderglacier, and if there are any plans to make ppms as transparent as rppms in the spell data.


Fallen Crusader is now 2 RPPM. Cinderglacier is now 1.5*Haste RPPM.
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]