Defense / Resist Equation Update

AIethea - Sanctuary
AIethea - Sanctuary Posts: 35 Arc User
edited December 2012 in Archer
These two equations were a particular pain in the neck to deduce due to the strange rounding of the first one but I do believe I finally have it. However, there is a significant difference from other people's previous attempts at armor; level plays no role in the actual value just the % reduction.

Defense = Round{ (Vit + Str -2)/4 } + Round{ Def*(1 + Round{ (2*Vit + 3*Str)/25 }/100) } + 1

Resist = Round{ (Vit + Mag -2)/4 } + Round{ Res*(1 + Round{ (2*Vit + 3*Mag)/25 }/100) }

% Reduction = RoundDown{ Resist / (40*Attacker.Lvl + Resist - 25) } **2 decimals


The only 2 differences between Physical and Elemental is that Physical has a +1 offset (shown in red to highlight it) and Physical uses Str & Def as opposed to Mag & Res. Both Utilize vitality to the same degree. The %Reduction is the exact same in both cases using the value obtained from the previous equation.

These equations could be simplified but I present it in this way due to the peculiar rounding involved with the calculation. In this format each Round is to 0 decimal places. A notable trait is the combination of the two stats, vit & str/mag, instead of dealing with them seperately.

Something worth mentioning is that while the % Reduction is rounded in the tooltip, my tests have indicated that the value is not rounded off in actual calculation (at least not to 2 places, perhaps 4)

**Disclaimer** While this has been test on a select few Barbs and Clerics to which it holds, my focus and test data is for Archers and on Archers. It is my opinion that other classes would not have different equations in this matter but it has not been tested extensively. It has held in PvE vs targets my level or lower.

**Note** It would be possible to transform the Round functions to RoundDown (Floor) with appropriate offset values added but I felt this method was more intuitive overall. Ex. RoundDown{ (Vit + Str)/4}. This would bring some more continuity with the previous assumed equation.


--Link to Evasion Equation http://pwi-forum.perfectworld.com/showthread.php?t=1180791
Post edited by AIethea - Sanctuary on

Comments

  • Asterelle - Sanctuary_1381265973
    Asterelle - Sanctuary_1381265973 Posts: 7,881 Arc User
    edited October 2011
    Wow got this to work exactly.. the rounding issues in the inner term are very sneaky and was definitely the issue that confounded previous attempts.

    equip.pdef = 6520
    equip.mres = 5285
    vit = 141
    str = 138
    mag = 23

    actual pdef = 8415
    actual mres = 6066


    I'll update my socket calculator with this thanks.

    I'm a little dubious of that "-25" term in the % reduction. Is that for the displayed value or how it is actually calculated when taking damage. I'm pretty sure when taking real damage there is no -25 but I'm not sure about the displayed value.


    Ohh you have an unmatched parenthesis for first 2 equations.
    [SIGPIC][/SIGPIC]
    Refining Simulator - aster.ohmydays.net/pw/refiningsimulator.html (don't use IE)
    Genie Calculator - aster.ohmydays.net/pw/geniecalculator.html - (don't use IE)
    Socket Calculator - aster.ohmydays.net/pw/socketcalculator.html
  • AIethea - Sanctuary
    AIethea - Sanctuary Posts: 35 Arc User
    edited October 2011
    Ohh you have an unmatched parenthesis for first 2 equations.

    My bad, I missed that. Ty for this. Fixing it now.
  • AIethea - Sanctuary
    AIethea - Sanctuary Posts: 35 Arc User
    edited October 2011
    I'm a little dubious of that "-25" term in the % reduction. Is that for the displayed value or how it is actually calculated when taking damage. I'm pretty sure when taking real damage there is no -25 but I'm not sure about the displayed value..

    I understand your hesitation, but it's what makes the data fit and at the exact right spots. Trying to match an equation without it yielded haphazard numbers and things that did not match up across the board. The reason I feel confident in this is the fact the numbers are very clean (as I expect programmers would make) and fit all the data I have practically perfect from every data point...which is significant.

    In terms of actual damage, I am far from a confident result but I have used this predict reduction and the data is fitting very nicely (without the rounddown as I mentioned). Thus far I have stuck with things with very low damage (lvl 1 bow, lvl 2 sling) because they have a small range with enough wpn damage for blazing arrow to show itself. However, this will be expanded in the near future.
  • Mooooooooo - Lost City
    Mooooooooo - Lost City Posts: 377 Arc User
    edited October 2011
    A R E
    Y O U
    A
    W I Z A R D
    ???
    youtube channel: youtube.com/user/chezedude
  • Asterelle - Sanctuary_1381265973
    Asterelle - Sanctuary_1381265973 Posts: 7,881 Arc User
    edited October 2011
    You can just use weaponless attacks like punching or wingspan to do fixed damage.
    There is also a special level 1 sword in blood theater that does 99999 fixed damage. I think pretty much all genie attacks also do fixed damage.
    [SIGPIC][/SIGPIC]
    Refining Simulator - aster.ohmydays.net/pw/refiningsimulator.html (don't use IE)
    Genie Calculator - aster.ohmydays.net/pw/geniecalculator.html - (don't use IE)
    Socket Calculator - aster.ohmydays.net/pw/socketcalculator.html
  • AIethea - Sanctuary
    AIethea - Sanctuary Posts: 35 Arc User
    edited October 2011
    You can just use weaponless attacks like punching or wingspan to do fixed damage.
    There is also a special level 1 sword in blood theater that does 99999 fixed damage. I think pretty much all genie attacks also do fixed damage.

    Not when you are trying to figure out the mechanics of attacks / abilities that require a weapon
  • Ladidel - Raging Tide
    Ladidel - Raging Tide Posts: 37 Arc User
    edited December 2012
    These two equations were a particular pain in the neck to deduce due to the strange rounding of the first one but I do believe I finally have it. However, there is a significant difference from other people's previous attempts at armor; level plays no role in the actual value just the % reduction.

    Defense = Round{ (Vit + Str -2)/4 } + Round{ Def*(1 + Round{ (2*Vit + 3*Str)/25 }/100) } + 1

    Resist = Round{ (Vit + Mag -2)/4 } + Round{ Res*(1 + Round{ (2*Vit + 3*Mag)/25 }/100) }

    % Reduction = RoundDown{ Resist / (40*Attacker.Lvl + Resist - 25) } **2 decimals


    The only 2 differences between Physical and Elemental is that Physical has a +1 offset (shown in red to highlight it) and Physical uses Str & Def as opposed to Mag & Res. Both Utilize vitality to the same degree. The %Reduction is the exact same in both cases using the value obtained from the previous equation.

    These equations could be simplified but I present it in this way due to the peculiar rounding involved with the calculation. In this format each Round is to 0 decimal places. A notable trait is the combination of the two stats, vit & str/mag, instead of dealing with them seperately.

    Something worth mentioning is that while the % Reduction is rounded in the tooltip, my tests have indicated that the value is not rounded off in actual calculation (at least not to 2 places, perhaps 4)

    **Disclaimer** While this has been test on a select few Barbs and Clerics to which it holds, my focus and test data is for Archers and on Archers. It is my opinion that other classes would not have different equations in this matter but it has not been tested extensively. It has held in PvE vs targets my level or lower.

    **Note** It would be possible to transform the Round functions to RoundDown (Floor) with appropriate offset values added but I felt this method was more intuitive overall. Ex. RoundDown{ (Vit + Str)/4}. This would bring some more continuity with the previous assumed equation.


    --Link to Evasion Equation http://pwi-forum.perfectworld.com/showthread.php?t=1180791


    I was checking the formulas for get physical defense and elemental resistances; the elemental formula worked exactly, but the physical formula had a variation of 1 or 2 points. I realized that if I add a new term the formula came exact, at least for me in the cases I tried it. I leave these formulas thinking that maybe someone could find them useful.

    Defense = Round{ (Vit + Str -2)/4 } + Round{ Def*(1 + Round{ (2*Vit + 3*Str)/25 }/100) } + Round{ (3*Def -5000)/10000} + 1

    Resist = Round{ (Vit + Mag -2)/4 } + Round{ Res*(1 + Round{ (2*Vit + 3*Mag)/25 }/100) }


    I write again these two formulas regarding the increase of physical defense and elemental resistances from the buffs or some gear.

    Defense = Round{ (Vit + Str -2)/4 } + Round{ Def* Round {100 + %Def + (2*Vit + 3*Str)/25 }/100) } + Round{ (Def*(300+3*%Def)/100 -5000)/10000} + 1

    Resist = Round{ (Vit + Mag -2)/4 } + Round{ Res* Round{ 100 + %Res + (2*Vit + 3*Mag)/25 }/100) }


    Where %Def and %Res are the % of increase of physical Defense or elemental resistance from the buffs and gear.


    I add a formula for calculate the hp too; maybe someone can find it useful too.

    HP = Round{ (x*vit + y*(lv-1) + gear hp) * (1+%hp/100) }

    let "x" be the "+hp you get from each point of vit for your specific class"
    let "y" be the "+hp you get for level up for your specific class"
    let "gear hp" be the "+hp you get from the gear"
    let "% hp" be the % the hp is increased from buffs and the gear.
    let "lv" be the character level
    let "vit" be the vitality