User:Praise/Hostile NPC Damage

From Guild Wars Wiki
Jump to navigationJump to search

Weapon damage dealt by hostile NPC in Normal Mode[edit]

To start with the conclusion: certain hostile NPCs (as well as some friendly NPCs such as Asura summons) get an extra -20 armor bonus against their target. Meaning for example, if an Am Fah attacks you and you are wearing 60 armor, their weapon damage is calculated as if you had 40 armor. The bonus is only active for weapon attacks, not for skills. As far as I know this is a new discovery, I couldn't find it on any other wiki or forum.

Some clear proof for it can be observed when you are attacked by a Mighty Grawl who is wielding The Icebreaker. From earlier observations by others, they only have a chance to drop this green hammer when they can be seen wielding it. If they are wielding it, they should be dealing 19-35 base dmg and have a 15^50 mod active.

Assuming that the Grawl's base weapon dmg is 19-35, and knowing that he has either 14, 15, or 16 hammer mastery (as observed from the duration of blindness they inflict), let's observe their dmg inflicted on us under structurally varied circumstances, as in the table below.

Looking at the Grawl's critical hit values and regular min & max values without strength involved (12 values in total), the most obvious conclusion is that his mastery is 15 and more importantly, we have 20 less armor against him.

Now of course, everyone immediately notices that you can also get that perfect fit to those 12 observed values without the theorised armor penalty, by setting his mastery to 14 and weapon dmg to 28-51. That's true, but if you do that, there is no single attribute lvl for strength that will explain all 4 observed critical hit dmg values.
With the armor penalty hypothesis however, these 4 values also fit (with strength at 14).

Lastly, I think it makes more sense to have a weapon dmg of 19-35 while wielding a green hammer, even if it's an NPC.


60 armor 76 armor
with 15^50 no 15^50 with 15^50 no 15^50
no strength with strength no strength with strength no strength with strength no strength with strength
crit 99 116 86 101 crit 75 91 65 79
min 38 no data 33 no data min 29 no data 25 no data
max 70 no data 61 no data max 53 no data 46 no data


When you test this -20 armor theory in other places against melee hostile NPCs, they all suddenly make more sense: for example, Am Fah Assassins wielding daggers roughly in a range of 5-12 to 7-17, instead of almost double.


Weapon damage dealt by hostile NPCs in Hard Mode[edit]

In Hard Mode, hostile NPCs deal more damage. The statement on the wiki ("roughly 5% more skill damage") is rather cryptic and generalising. When talking about skill damage, what is meant is:

  • Attacker level is a factor in the armor-respecting skill damage formula, therefore increasing it will increase the dmg multiplier.

Attack damage is not mentioned as being increased, but logically it should be, if only because Attacker level is also a factor in the weapon dmg formula.
However, for weapon damage in hard mode, there are more factors involved:

  • Increased level gives a higher threshold in the strike level formula
  • Increased level gives a higher critical hit chance
  • Increased weapon mastery (usually to 20) gives an increased strike level
  • Increased weapon mastery gives a higher critical hit chance
  • Most importantly: Base weapon damage is given a flat increase

As far as I know, the last point is a new discovery, I couldn't find it on any other wiki or forum.
It was quite complicated to find out exactly how the observed increase in weapon dmg in HM is calculated by the game. The puzzle is not entirely complete, but for most cases there is a convincing answer. Credits go to Red Fireball for figuring out the final method.

I will show data from a lvl 20 warrior hostile NPC to explain how the HM damage increase works.
Here are the basic stats of the hostile NPC. Everything applies in both NM and HM:

  • Level 20
  • Warrior
  • Wields an axe
  • Mastery is 15
  • Target armor is 60
  • The PvE NPC bonus of -20 is active
  • From all this, his strike level for regular dmg is 1.569

Firstly, in NM, their observed damage is exactly as expected from the normal formula. This shows that no parameter in the setup is overlooked.
When switching to Hard Mode, all parameters stay the same, except maybe their axe dmg range. A change in weapon dmg range will affect the min and/or max dmg value and their proportion of hits, but the profile of hit value distributions (see my regular dmg generation page) will remain the same. Therefore, any difference in observed dmg pattern must be caused by HM itself.

Observed hostile NPC axe dmg in Hard Mode.

The chart on the right shows the observations for the above circumstances.
Clearly, the pattern is very different from the ones in Normal Mode. Such a pattern cannot be explained by a change in weapon dmg range. Something must have changed in the calculation.
This is what can be seen:

  • The range from 17-36 is fully populated in a way like it would be in NM
  • The range from 19-52 has a pattern of 11010110110 which is repeated
  • The pattern seems to be added on top of the normal-looking 17-36 range
  • The max regular dmg value of 52 is higher than the critical dmg value of 51

Now there is some logic jujutsu to be done. I hope I'm telling it at least partially understandably. Feel free to pry if something seems weird to you.
The max dmg of 36 and the critical hit of 51 tell us that the axe's max base dmg is 23.
If the pattern would be superimposed onto the normal-looking 17-36 range, that would mean that the values 17 and 36 are also increased by ~1.3%. Subtracting this from the observed counts at 17 and 36, we are left with 0.9% of 17 dmg, and 1.93% of 36 dmg. That means that the real dmg range is approximately 17.3-36.0. This corresponds to a base dmg range of almost exactly (17.3 / 1.569) - (36.0 / 1.569) = 11-23!
The proportion of total counts that are superimposed (i.e. that 1.3% at each dmg value 17,19,20,22,24,25,27,28,30,31,33,35,36,38-52) is approximately 30%.
The min dmg for an axe with max dmg 23 would most likely be 6, or else 5. A min dmg of 7 is not possible in combination with max dmg 23.
A base dmg of 6 would result in an observed min dmg of 6 * 1.569 = 9.42. A base dmg of 5 would result in an observed min dmg of 5 * 1.569 = 7.85.
Combining the 2 previous notes: the proportion of the range 9.42 (min dmg with base 6) to 17.3 (the observed min dmg) is 29.4%, very close to the observed 30% that is sumperimposed!
The first tentative conclusion is that he is wielding a 6-23 axe, and that the range of 6-11 is being recalculated to give the observed superimposed pattern of dmg values.

The question now is: what method is used to generate that pattern of dmg values between 17-52 with a repeating pattern of 11010110110?
Firstly, observe that unlike with the normal NM dmg counts, the counts of the max value 52 here is not lower than the rest. In a single case this could be coincidence, however I have observed this in all the HM weapon dmg datasets so far.
This suggests that to calculate the superimposed part of the dmg value range, the game might be using integers. If so, the back-calculated base dmg range from 17-52 would be 11-33.
Furthermore, when assuming the above, multiplying each integer in the 11-33 range with the current strike level of 1.569 results in exactly the observed pattern of gaps!
Finally, what's the meaning of the numbers 11-33? Well, it's a bit far-fetched, but it's the same as (6+5) - (28+5), in other words 5 added to the weapon type's max dmg range.
This could be coincidence too, but so far, it is not. I have tested similar situations with different weapons: it is valid for daggers (12-22) and hammer (24-40) too.

So, here is the final model we came up with, of how GW calculates HM hostile NPC weapon dmg:

  1. Roll a random number in the weapon's actual non-integer range (6.00-23.00 in the example)
  2. If the roll results in a number lower than (WeapontypeMin+5), reroll it in the integer range (WeapontypeMin+5) - (WeapontypeMax+5), (11-33 in the example)
  3. Multiply all results by the applicable strike level

One final observation that adds support to this hypothesis: while the observed dmg range in the example (17-52) is much bigger than expected, this is the result of a strike level being above 1. If you brought down the hostile NPC's strike level to below 1 (for example by having high armor), the pattern would superimpose on itself and not have any gaps. This has been observed as well.