Jump to content


Photo

Combat Mechanics, 3.0


  • Please log in to reply
380 replies to this topic

#1 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 10:30 PM

Intro: This is the third iteration of my post detailing what we know about WoW mechanics. It began as a post on my guild forums about my experiments with Taunt, and grew as I picked more theorycraft-y information. More recently, this forum is the main source of updated info (partially because it's just about the only major one I browse anyone), so regulars will see a lot of familiar results.

Regardless, it should be useful for regulars to reference things without have to dig up old threads, for lurkers to have a concise place to glean information, and for newcomers to avoid asking repetitive questions. And all but the most avid forum-browsers will probably find at least one thing in there that they didn't know.

The primary concern is PvE combat at level 60. Some of the formulae scale to lower levels in obvious ways, but I've left out the dependences on level for cleanliness. Also, some fundamental things are different in PvP, and those are not treated here.

Specifically, the information here is complete for level 60 players with maxed skills fighting PvE enemies from level 60 to 63.

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

I. Magical Combat

The spell hit roll determines whether you hit, miss, or crit. The miss chance and crit chances computed below are measured out of the total number of casts, and to not overlap. The remaining probability defines the ordinary "hits."

A. Base spell miss chance = {.04, .05, .06, .17} against level {60, 61, 62, 63} mobs.
+Hit gear can improve this, but not below .01.

B. Crits
Base Spell Crit:
Mag: Int/59.5 + 0.2
Wlk: Int/60.6 + 1.7
Shm: Int/59.2 + 2.3
Pst: Int/59.5 + 0.8
Dru: Int/60 + 1.8
Pal: Int/29.5 + 2(?)
Mob: 0 (Mob-cast spells cannot crit)

A spell crit does 150% damage, before talents.

C. Spell damage = TooltipDamage + (spelldmg)*X

X is a scaling factor for each spell, generally given by max(1,CastTime/3.5). Instant spells have a cast time of 1.5, and channeled spells and DoTs receive the full value, divided over all the ticks. For AoE spells, multiply by 1/3. Sometimes, multiply by yet another factor for spells with secondary abilities (for example, .95 for Frostbolt, .8 for Cone of Cold, and .2 for Frost Nova).

% increases from talents are added after damage bonuses from gear, except in the case of healing spells.

D. Avg mitigation due to resists = .15*resist/casterlevel. Capped at .75.

This means that, for a binary spell like Frostbolt, this fraction of the spells that "hit" are resisted anyway. For a spell like Fireball, you will see, 0%, 25%, 50%, 75%, and full resists, but the average amount resisted is given by this value.

E. Mana regen per tick
Drd, Hun, Wlk: Spi/5 + 15
Mag, Pst: Spi/4 + 12.5
Pal: Spi/4 + 8
Shm: Spi/5 + 17

A tick is 2 seconds. If your regen is not an integer, the game alternates between next lowest and higher integer in such a way as to make the average correspond to the above value.

Actual regen per tick can be modified two different ways:
1) Flat Regen Modification. A multiplier which is applied to every tick. The only things which can give a bonus of this form are Innervate and Evocation.

2) The "5-Second Rule"
Any time you have spent mana in the past 5 seconds, you are in the "5-second rule," and your regen is modified by a multiplicative factor, which I will call F. F is equal to 0 by default, but can be increased above 0 by buffs such as Mage Armor, Innervate, Evocation, Spirit Tap, and Blue Dragon.

Notably, F is not capped at 1. This means that, when some of the above buffs start stacking, situations can arise where your regen in the 5SR is greater than it is out of the 5SR. EDIT: This is no longer true.

Also note that things like Clearcasting, Inner Focus, and channeled spells can cause you to not spend mana, and hence gain full regen ticks where you otherwise wouldn't.

II. Physical combat

A. Outcome of a Melee Swing

1. The Attack Roll
The outcome of a melee swing is determined by a single roll. There is not, for example, a roll to see whether it crits, and then a separate roll to see whether it is blocked.

There are 8 possible outcomes of a swing, and the probability of each is represented by a letter:
1) Miss (M)
1b) Parry (P)
1c) Dodge (D)
2a) Block (B)
2b) Glance (G)
3) Crush (U)
4) Crit ©
5) Hit (H)

They do not combine in any way. There is no such thing as a "blocked crush," nor is there even an abstract concept like a "swing that was going to crit, but was parried"

Each of these things, except "Hit," has a fixed, independent chance of happening (each of these is computed individually in the following sections). "Chance to hit" is actually a fictional concept, and items which affect "chance to hit" are actually affecting M, the chance to Miss. All probabilities are measured out of the total number of swings.

The order and numbering of the above list are important. Each swing is a pie that totals 100%, and the game fills it up in the order I specified. If the first 7 slices do not total 100%, the leftovers slice is called "Hit." If the total is greater than 100%, the things at the bottom get pushed off the list entirely.

Hence, the sum of the 8 probabilities (possibly after truncation) is always 100%, and one roll is made to select the outcome.

For example:
If M+P+D+B+C+G+U = 70, then H = 30.
If M+P+D+B = 100, then C = G = U = H = 0.

a. Ranged Attacks
All computations for ranged attacks are identical to those presented for melee attacks, the only difference being that M, C, H, and B are the only terms which exist.


Unknown: player vs. mob blocked crits? Any detailed info known here?

2. Miscellaneous Terms
Throughout this section, "T" refers to the miscellaneous bonuses which you must always remember to add back in at the end. It is explicitly included in all formulae, just so you don't forget about them (I know it seems silly, but this is the most common cause of "the formula doesn't match my observed numbers").

These include:
Talents
"Equip:" Bonuses
Racials
Stances
Buffs

3. Skill
Skill affects the probability of a Miss, Parry, Dodge, Block, and Crit.

The magnitude is the same in all of these cases, henceforth known as the Skill Term, S:

S(in %) = (TargetDefense - AttackerWepSkill)/25

For example, each point of defense you gain increases your chance to [be Missed], Dodge, and Parry by 1/25 = 0.04% each. So, 1 defense increases your overall chance to avoid by 0.12%.

The Weapon Skill of a Cat or Bear is always 300.

4. Miss % (M)
Melee attacks: M = B + S + T
B (base Miss chance) = 24% for white hits while Dual Wielding, and 5% for all other attacks (including incoming boss hits).

Ranged attacks: M = B + 6*S + L + T
L = (TargetLvl - AtkrLvl)
Ref: Lactose for increased dependence of ranged hit chance on skill.

5. Crit % ©
C = X + Agi/Y - S + T

Y = 53 for Hunters, 29 for Rogues, and 20 for all other classes.
X = 0 for Warriors, Rogues, and Hunters, 0.9 for Druids. It is higher (3-4%) for casters, so that they have nonvanishing melee crit chances. Someone remind me to check what is it for Paladins.

To compute your crit chance in the spellbook, it assumes the target has 5*level defense skill. This is why you appear to lose .2 to crit when you level; the tooltip is simply recalculated for a target with 5 more Defense.

6. Parry/Block % (P,B)
B = 5 + S + T
P = 5 + S + T
(Note these are not generally equal, as the T terms differ)

7. Dodge % (D)
For classes other than Rogues or Hunters:
D = X + Agi/Y + S + T
(X and Y are determined as in Crit%, II.A.5)

For Rogues and Hunters:
D = 2*(X + Agi/Y) + S + T

8. Crushing Blow % (U)
When a Level 63 mob attacks a player,
U = 15.
Otherwise,
U = 0.

9. Glancing Blow % (G)
G = {0, 10(?), 25(?), 40}, when a player attacks a level {60, 61, 62, 63} mob with a white hit.


B. Damage Done By a Swing

1. Attack Power

a. Melee Attack Power:
160 + 2*Str, for War, Pal, and Bear
100 + 2*Str, for Shm
100 + Str + Agi, for Rog, Hun
100 + 2*Str + Agi for Cat

b. Ranged Attack Power:
100 + 2*Agi for Hun
2*Agi for War, Rog

2. AP contribution

a. Weapon Damage (W) is randomly rolled. It is linearly distributed along the damage range of the weapon.

b. White hit:
D1 = W + AP*Speed/14
(*.5 if off-hand)

c. Special Attack (before attack-specific modifiers):
D1 = W + AP*N/14

N is given by:
1.7 for Dagger
2.4 for other 1H weapon
3.3 for 2H weapon
2.8 for ranged weapon

3. Armor Mitigation
Every attack is mitigated by the target's armor.
Base Armor (before gear) = 2*Agi

Mitigation = A/(A + 85*AtkrLevel + 400)

4. Final Damage Dealt
"Hit Damage" DH = D1*(1-Mit)

M, P, D: 0
H: DH
B: DH - Block (Block = ShieldBlock + Str/22 + T)
C: 2*DH
U: 1.5*DH
G: (.7 + Min(Skill-300,10)*.03)*DH


C. Rage/Energy Generation
1 Rage generated per 30 damage dealt
1 Rage generated per 90 damage taken
20 Energy generated every 2 seconds


III. Threat

Update: for more detail, consult Kenco's thesis on threat. I'm not going to replicate the entire thing here. I will update the information I already had for accuracy.

A. Basics
A mob as a hate list which stores its threat values for everyone who is in combat with it. Randomly targeted abilities choose their target from this list. Also, the order in which players appear on the hate list can serve as a sort of tie-breaker in some sitations (see Taunt, below).

Initially a mob aggros onto the first person who either targets it with an ability or enters its aggro radius. Note that a "body-pulled" mob is in a precarious state: its current target has 0 threat, and even things which ordinarily generate insignificant threat (e.g. buffs) can pull aggro.

Once a mob has chosen a target, it can be pulled off in one of two ways:
1) Somebody exceeds the current target's threat level by 30%. The mob will then chase the new target, even if it is at range.
2) Somebody exceeds the current target's threat level by 10%, and performs an ability within melee range of the mob. The mob will be turn towards the new target.

Once either of these happens, the mob will be "stuck" to the new target, and will remain there until yet another 10% (melee) or 30% (ranged) threat gap is surpassed.

B. Overall Threat Scaling
Some abilities affect an overall multiplier which is applied to all threat generated. Bonuses stack multiplicatively. Notable examples:
Rogue/Cat Form: -29%
Battle/Berserker Stance: -20%
Defensive Stance/Bear Form: +30%
Defiance/Feral Instinct: +15%
Blessing of Salvation: -30%

C. Damage Threat
Dealing damage to a mob generates threat with it, at a rate of 1 threat per damage dealt.

DoT's generate threat with each tick.

D. Healing Threat
You gain threat with a mob by healing any person on that mob's hate list. "Healing" is any ability which restores HP, Mana, or Rage to the target. Greater Heal, Major Mana Potion, Furor, Bloodrage, and Dark Pact all generate threat of this type.

1 point of HP/Mana healing generates 0.5 threat (0.25 for a Paladin).
1 point of Rage/Energy healing generates 5 threat.

E. Overheals
The threat generated is determined by the amount of HP/mana actually healed. In other words, overhealing generates no threat at all.

F. Skills
Some skills generate threat which is not caused by damage or healing. This can happen in one of two ways:

1) Many skills have a constant amount of threat associated with them, which is added to any damage they may do. Examples are Distracting Shot, Counterspell, and Revenge.

2) Some skills have a total multiplicative bonus factored into their threat generation. Examples are Maul, Mind Blast, and Earth Shock.

G. Taunt
Taunt and Growl force the mob to attack the caster for 3 seconds. They also have some unique effects:

1) They insantly raise your total threat to be equal to that of the mob's "favored target" (typically, the person it was attacking) at the time the spell is cast.
2) They "unstick" the mob from it's current target and give it to the Taunter. This person will now have the 10%/30% threat buffer described above.

H. Miscellaneous
The Mocking Blow and Challenging Shout debuffs force the mob to attack you temporarily, but have no effect on threat levels.

Similarly, Ice Block, Blessing of Protection, Divine Shield, and Limited Invulnerability force the mob to not attack you, but have no overall effect on threat levels. A mob will not attack a feared target, and a rooted mob will not attack a target that is out of range. In all these cases, the mob goes after the legal target with the highest threat.

#2 Kalman

Kalman

    Super Macho Man

  • Members
  • 8,791 posts

Posted 09 May 2006 - 10:40 PM

AP contribution section:

N for non-dagger 1H weapons is 2.4, not 2.2.

Might want to add a section on how crit is described by Blizzard: crit is crits across swings, not crits across hits, whereas most stat addons track it as crits across hits.

Also possibly note that melee crits are 200% by default, while spell crits are 150% by default.

Level 61 and 62 mobs can also generate crushing blows, I believe, although I think they generate at 5% and 10% rates respectively.
Melador> Incidentally, these last few pages are why people hate lawyers.
Viator> I really don't want to go all Kalman here.
Bury> Just imagine what the world would be like if you used your powers for good.

#3 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 10:43 PM

Hmm, yeah, may as well make that more explicit, since it's a common misconception.

#4 Drauk

Drauk

    Bald Bull

  • Members
  • 1,689 posts

Posted 09 May 2006 - 10:44 PM

Seeing as EJ forum has steady flow of combat mechanics discussions, i think it will be nice to have a separate sub-forum for this kind of things.

Women's breasts can be modeled as a cone and measured as V = (Db^2*h*.785)/3 and since breasts can be thought of as an amorphous fluid, you just have to worry about containing the volume of the breast.


#5 goss

goss

    King Hippo

  • Members
  • 660 posts

Posted 09 May 2006 - 10:52 PM

Fairly certain that paladin INT : Spell Crit ratio is closer to 20 INT : 1 spell crit

#6 Shalas

Shalas

    Bald Bull

  • Members
  • 2,351 posts

Posted 09 May 2006 - 10:54 PM

They do not combine in any way. There is no such thing as a "blocked crush," nor is there even an abstract concept like a "swing that was going to crit, but was parried"

Posted Image

Could quite easily be a HitsMode bug, of course.

#7 chalon

chalon

    Founder of the Chalonverse

  • Members
  • 1,717 posts

Posted 09 May 2006 - 11:02 PM

Ranged missile attacks don't work the same as melee attacks do, though. For instance, there are no glancing blows.

#8 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:05 PM

Oh crap, I forgot about ranged blocks. I only just recently started thinking about ranged attacks.

(In fact, one of the main reasons to post this here was to fill in the gaps).

#9 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:06 PM

Fairly certain that paladin INT : Spell Crit ratio is closer to 20 INT : 1 spell crit

Ok. Do you have any good info on this? Mine was basically a guess from looking at the other hybrid numbers; I haven't been able to find it anywhere.

#10 Soul

Soul

    Don Flamenco

  • Members
  • 364 posts

Posted 09 May 2006 - 11:20 PM

About the time folks were brickwalling at the untauntable drakes, I believe Diego posted on on R&D to the effect that percentage-based threat modifiers did not stack up additively. This might have changed, but it seems unlikely to me.

#11 saramin

saramin

    King Hippo

  • Members
  • 591 posts

Posted 09 May 2006 - 11:23 PM

Fairly certain that paladin INT : Spell Crit ratio is closer to 20 INT : 1 spell crit

Ok. Do you have any good info on this? Mine was basically a guess from looking at the other hybrid numbers; I haven't been able to find it anywhere.

http://www.wowwiki.com/Talshuler's_Int_Research

I'd say ~29 int per is about right from personal testing. Also regarding your spellhit section, I believe regardless of your +hit gear there is always a base 1% chance to do a clean "white" resist. I may be wrong in this however.

Edit: Copy+paste the above. Buggered forum code.

#12 Shalas

Shalas

    Bald Bull

  • Members
  • 2,351 posts

Posted 09 May 2006 - 11:25 PM

From what I've experienced the only thing that can reduce the resist rate to 0% is things like Priest's Shadow Focus.

#13 goss

goss

    King Hippo

  • Members
  • 660 posts

Posted 09 May 2006 - 11:26 PM

Fairly certain that paladin INT : Spell Crit ratio is closer to 20 INT : 1 spell crit

Ok. Do you have any good info on this? Mine was basically a guess from looking at the other hybrid numbers; I haven't been able to find it anywhere.

I did some tests awhile back - I'll try to dig up the data or run them again - Wowwiki has some reasonable results, they report 29.5 INT / spell crit.

http://www.wowwiki.c...'s_Int_Research

#14 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:27 PM

About the time folks were brickwalling at the untauntable drakes, I believe Diego posted on on R&D to the effect that percentage-based threat modifiers did not stack up additively. This might have changed, but it seems unlikely to me.

Hmm, I thought I remembered recent Druid tanking stuff reporting that 1.45 was the factor for Bear Form threat with Feral Instinct.

#15 Soul

Soul

    Don Flamenco

  • Members
  • 364 posts

Posted 09 May 2006 - 11:32 PM

About the time folks were brickwalling at the untauntable drakes, I believe Diego posted on on R&D to the effect that percentage-based threat modifiers did not stack up additively. This might have changed, but it seems unlikely to me.

Hmm, I thought I remembered recent Druid tanking stuff reporting that 1.45 was the factor for Bear Form threat with Feral Instinct.

Maybe that's true for Tanking talents, but I'm really sure it's not the case for stacking, say, BoS, Arcane Subtlety and the Arcanist bonus. That'd be an absolutely stupid reduction.

#16 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:32 PM

Fairly certain that paladin INT : Spell Crit ratio is closer to 20 INT : 1 spell crit

Ok. Do you have any good info on this? Mine was basically a guess from looking at the other hybrid numbers; I haven't been able to find it anywhere.

I did some tests awhile back - I'll try to dig up the data or run them again - Wowwiki has some reasonable results, they report 29.5 INT / spell crit.

http://www.wowwiki.c...'s_Int_Research

Well, if his data is to be believed, Paladins have a constant term in their crit%. I'm not sure how he didn't conclude the same, based on what he has posted there.

I'll change it to 29.5 for now, as that seems like the best try at the moment.

#17 Twid

Twid

    WildStar Shill

  • Members
  • 1,292 posts

Posted 09 May 2006 - 11:33 PM

Could you type up an Outcome of an Offensive Spell Cast section? It'd be for both binary and non-binary spells and deal with hit/crit/level resist/resistance resist rolls :)

I'm lazy.

Get you some purple drank and slow yo roll.


#18 chalon

chalon

    Founder of the Chalonverse

  • Members
  • 1,717 posts

Posted 09 May 2006 - 11:39 PM

I'm not sure we have enough information to precisely now how spell cast rolls work. From a resistance standpoint at least, it appears that for non-binary spells there is a resistance score roll FIRST, and then it subsequently does the miss/crit/hit roll.

#19 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:40 PM

Maybe that's true for Tanking talents, but I'm really sure it's not the case for stacking, say, BoS, Arcane Subtlety and the Arcanist bonus. That'd be an absolutely stupid reduction.

Hmm, you're right.

Hold on, I think I remember a blue post about this, a while ago. On some thread about the Netherwind Bonus. By Drysc, maybe? Anyone remember?

#20 Hamlet

Hamlet

    Mike Tyson

  • • Guide Author
  • 11,540 posts

Posted 09 May 2006 - 11:41 PM

I'm not sure we have enough information to precisely now how spell cast rolls work. From a resistance standpoint at least, it appears that for non-binary spells there is a resistance score roll FIRST, and then it subsequently does the miss/crit/hit roll.

I think this is equivalent to saying that the miss/hit/crit roll is first, as long as you agree that the two are independent.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users