Item Search
     
BG-Wiki Search
+ Reply to Thread
Page 1 of 9 1 2 3 ... LastLast
Results 1 to 20 of 172

Thread: pDif and damage     submit to reddit submit to twitter

  1. #1
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    pDif and damage

    Reference existing thread: http://www.bluegartr.com/threads/877...amage-formulas

    Copying my evaluations here. Should have done this long ago, really. It's based mostly on Masamune's data.

    This is an explanation of the algorithmic order of calculations for determining pDif on melee damage. It's a bit messy and complicated, and uses terms I had to make up just to describe the idea being presented. Plus, certain limits were never fully verified, and some of the equations have multiple possible solutions, which is why I held back on presenting it before. However it's the best representation of the game formulas that I know of.

    Also note: These equations are a bit different from Masamune's, since the approach we each used to solve the approximations was a bit different. I obviously will be biased towards my own formulations.



    Summary:

    [For Ratios above 1.0; no data below 1.0 yet]

    Numbers are run as fractions of 1024. Corresponding floating point values will be provided as well.

    Examples used for illustration:
    [Example 1: 1-handed melee vs lvl 63 lesser colibri (231 defense), attack of 370]
    [Example 2: 2-handed melee vs lvl 81 greater colibri (322 defense), attack of 422]


    ~~~~
    Basic info

    Ratio = attack/defense

    Ex.1: 370 att vs 231 def == (370 * 1024) / 231 = 1640 (1.6016)
    Ex.2: 422 att vs 322 def == (422 * 1024) / 322 = 1342 (1.3105)

    cRatio = level corrected Ratio {{ Level correction gets applied after the Ratio cap is applied. }}
    -50 (~0.05) from Ratio for every level the mob is above player level

    Ex.1: No level correction. cRatio = Ratio = 1640
    Ex.2: Lvl 81 - Lvl 75 = 6; cRatio = Ratio - (50 * 6) = 1342 - 300 = 1042 (1.0176)


    cRatio has a max of 2048 (2.0) for 1-handed weapons and 2304 (2.25) for 2-handed weapons.

    If the hit is a crit, skip all the equations for normal hits and go to the crit hit section. Crit hits are NOT +1.0 to a normal hit's pDiff.

    {{ This may not be correct. }}


    ~~~
    Normal hit calculations


    mRatio is cRatio with a gain multiplier factored in.
    1-handed gain multiplier = +133/1024 (+13%)
    2-handed gain multiplier = +163/1024 (+16%)

    Ex.1: mRatio = 1640 * ((1024 + 133) / 1024) = 1853 (1.8096)
    Ex.2: mRatio = 1042 * ((1024 + 163) / 1024) = 1207 (1.1787)


    minROffset is the amount subtracted from mRatio to get the min pDiff.
    1-handed minPDiffOffset = -711
    2-handed minPDiffOffset = -762

    {{ 1-handed gain/offset pair can be any of +133//-711, +134//-713, +135//-714, +136//-716; final value undetermined }}
    {{ 2-handed gain/offset pair can be any of +159//-751, +160//-757, +163//-762; final value undetermined }}


    Of particular note: when cRatio is exactly 1.5, mRatio - minROffset gives 1.0 as the min pDiff.

    {{ 2-handed gain/offset is slightly off for this requirement; +159/-751 is the closest }}

    Ex.1: minPDiff = 1853 - 711 = 1142 (1.1152)
    Ex.2: minPDiff = 1207 - 762 = 445 (0.4346)


    There are also limits on how low the pDiff value can go.

    First, the minimum lower limit is mRatio - 440.

    Ex.1: minPDiffMinLimit = mRatio - 440 = 1853 - 440 = 1413
    Ex.2: minPDiffMinLimit = mRatio - 440 = 1207 - 440 = 767

    There's also a minimum cap of 1.0, but only as long as it doesn't violate the minimum lower limit above.

    We want to determine the final limit for min pDiff (minPDiffLimit)

    minPDiffLimit = minPDiff

    if (minPDiffLimit < 1024) then minPDiffLimit = 1024
    if (minPDiffLimit > minPDiffMinLimit) then minPDiffLimit = minPDiffMinLimit

    Ex.1: if (1142 < 1024) is false, so no change, and no second check required
    Ex.2: if (445 < 1024) is true, so set to 1024; if (1024 > 767) is true, so set to 767

    So:

    Ex.1: minPDiffLimit = 1142
    Ex.2: minPDiffLimit = 767


    maxRMultiplier is used to calculate max pDiff. It is applied to cRatio, not mRatio.
    maxRMultiplier appears to be +230 (0.225).
    maxRMultiplier has a maximum value of 378 (0.375).
    maxRMultiplier has a minimum, possibly 275 (0.269).


    Ex.1: maxPDiffOffset = 1640 * 230 / 1024 = 368 (0.3594), within min/max range
    Ex.2: maxPDiffOffset = 1042 * 230 / 1024 = 234; this is lower than min value, so set to 275


    max pDiff = cRatio + maxPDiffOffset

    Ex.1: maxPDiff = 1640 + 368 = 2008 (1.9610)
    Ex.2: maxPDiff = 1042 + 275 = 1317 (1.2861)


    A random value is then generated between minPDiff and maxPDiff.

    Current pDiff range:
    Ex.1: 1142 to 2008
    Ex.2: 445 to 1317


    If the pDiff value is less than the limited min pDiff (minPDiffLimit), reset it back to a neutral 1024 (1.0).

    Ex.1: limited to 1142-2008, so no problems.
    Ex.2: limited to 767-1317. Any random values less than 767 (since it can go as low as 445) are set to 1024.


    Finally, an additional 5% multiplier is applied as a damage spreader to make the damage distribution a bit less crisp.

    dmgSpread: random value between 0 and 51.

    Final pDiff = pDiff * (1024+dmgSpread) / 1024

    Final pDiff range:
    Ex.1: 1142 to 2108
    Ex.2: 767 to 1382


    pDiff is then multiplied by the base damage to get the final damage.

    Ex.1: base damage of 50+9 = 59
    Ex.2: Base damage of 75+8 = 83

    Looking at the range of possible damage:
    Ex.1: 65 to 121 {{observed: 65-121}}
    Ex.2: 62 to 112 {{observed: 63-112}}


    ~~~~

    Crit hits:

    1-handed and 2-handed weapons use the same equation.

    minCritGain is 30 (3%)
    minCritOffset is 589

    min crit pDiff is calculated from cRatio.

    min crit pDiff = (cRatio * (1024 + minCritGain) / 1024) + minCritOffset

    eg:
    min crit pDiff = (1595 * (1024 + 30) / 1024) + 589 = 2229 (2.1768)

    max crit pDiff is calculated from min crit pDiff

    max crit pDiff = minCritPDiff + 845

    eg:
    max crit pDiff = 2229 + 845 = 3074 (3.0020)

    A random value is then generated between min pDiff and max pDiff.

    pDiff = random(2229, 3074)

    Caps are then applied. Max pDiff cannot be higher than 3072 (3.0).

    An additional 5% damage spread is then applied here.

    dmgSpread: random value between 0 and 51.

    Final pDiff = pDiff * (1024+dmgSpread) / 1024

  2. #2
    Masamune
    Guest

    There is another approach i tried last year but kinda dropped research...

    The idea is, since one can get a distribution graph from a KParse, to find "signatures" in a 1st step, then try to reproduce them with an Excel formula (and RAND()) over about 5k values graphed into a distribution graph to compare with the KParse.
    ...and only after reproducing the general shape of distribution graph parsed, can tweak the parameters in the formula in such way produced damage values match parsed ones.

    I partially managed to reproduce the signatures at high cRatios down to cRatio=1, but not below, with same formula...

    need KParses for below cRatio=0.7, maybe on those new Orichalcum crabs ? or even high lvl Buffalos (since they are PLD) ?

    EDIT: what i call "signature" is for example the high frequency spike at cRatio=1, the one at PDIF=3,15, the caps and the "floors". Also the trapezoidal shape of the distribution graph is a signature.

  3. #3
    Masamune
    Guest

    i found this from Prothescar implying got another source of data for pDIF testing.

    Mind sharing those datas please Prot so can cross check and hopefully confirm and even better, get data for cRatio<0.7 ?

  4. #4
    An exploitable mess of a card game
    Join Date
    Sep 2008
    Posts
    13,258
    BG Level
    9
    FFXIV Character
    Gouka Mekkyaku
    FFXIV Server
    Gilgamesh
    FFXI Server
    Diabolos

    I'm actually interested in this as well. Namely, I've seen recent debates over pDIF models, but I haven't seen anyone lay out the competing versions. The only ones I know of are BG's and Wiki's, but it seems as if new versions have formed since.

  5. #5
    Custom Title
    Join Date
    Nov 2008
    Posts
    1,066
    BG Level
    6
    FFXI Server
    Diabolos

    Short version is there are effectively two. Prothescar's was a complete hodgepodge mess and will be ignored if I have anything to say about it.

    1. Masa and Moten did this huge workup with tons of parsed data and regression.

    2. I took the old knowledge, which was fairly incomplete anyway, and had an epiphany related to Ratio, level correction, and crit cap orders and the 1.00-1.05x randomizer you see being thrown around to produce exactly the sort of change that was observed.

    The former continually rejected the latter for sake of a few instances at mid-range Ratio values where it didn't fit, even when it was pointed out that an unforeseen 1 fSTR increase (which can only be estimated anyway) would have given exactly the disparity noted.

    The latter continually rejected the former for sake of it all producing an incoherent mess of numbers with no real usefulness or sanity in assigning multipliers or order of operations, foolhardy chasing of the max and min of a nonuniform (trapezoidal) distribution, and seeming pick-and-choose acceptance of concepts like the 1.05 secondary randomizer (but then rejecting it again a week later).

    So what we have now is their model with a wide range of usefulness but no real coherence or even simple methods, and my model that is perfect above ~1.8 Ratio for one- and two-handed but lacks real data for any other application (which is fine for me, I play DRK and whatnot) and is detailed on otherwiki.

    Neither is invalid within its given range or application, it's just more work than we've already done to put it all together now, plus there are still other strangenesses such as what a crit really does to pDIF.


    There are simply two approaches happening here. One by Statisticians, the other grounded in Sensible Game Design. My policy that their work brushes up against is simply put "One does not write an MMO damage system by slamming their face into the numpad".

  6. #6
    Sea Torques
    Join Date
    Dec 2007
    Posts
    582
    BG Level
    5

    Use of regression estimates is actually more practical because it is reasonably "model-free" thanks to the central limit theorem and you can incorporate it into "DoT" calculations regardless of whether an exact model is ever determined. Face-slamming is a straw man

  7. #7
    Custom Title
    Join Date
    Nov 2008
    Posts
    1,066
    BG Level
    6
    FFXI Server
    Diabolos

    Don't be that guy that rushes in to referee some formal argument. I gave my opinion on the usability of their system, which in no way questioned the validity of their method only its cleanliness, and you're just intending to sow more discourse and generally invoke why the internet sucks.

  8. #8
    Sea Torques
    Join Date
    Dec 2007
    Posts
    582
    BG Level
    5

    Ultimately cleanliness doesn't even matter because DPS calculations, specifically changes in average DPS, are what people are interested in and regression is an easy and practical way to link changes in attack to changes in average pDIF, which Motenten may have done with his DPS spreadsheets (correct me if I'm mistaken because I have yet to look at them), which seem to be widely used and cited.

    As for otherwiki, whatever the claims are (such as a distinction between 1H and 2H, critical points of 5/6 and 10/6 for 2H), they aren't supported by Masamune's data as a whole but I don't know if you have your own data.

  9. #9
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Quote Originally Posted by Raelia
    The former continually rejected the latter for sake of a few instances at mid-range Ratio values where it didn't fit, even when it was pointed out that an unforeseen 1 fSTR increase (which can only be estimated anyway) would have given exactly the disparity noted.
    I don't recall such a thing being pointed out to me, so it may have been something you discussed with Masa. In any case, the lower pDif samples (below about 1.4 Ratio) were able to show exactly what the total base damage was, and thus exactly what the fStr was. There was no ambiguity.

    I did, in fact, completely ignore the old pDif model on the wiki (which was a bit different from what's on there now), as there were too many instances where it didn't even come close to matching the observed values. It was more practical to work solely from observed data.

    The model currently on the wiki is actually much closer to my own, but makes some 'softening' assumptions that I'd have to verify against the parsed data. It also doesn't even make an attempt to explain certain pDif distribution behaviors, which to me means it's inherently flawed, though it may be "close enough" for most work (and it's not like I even use my own model very often).

    Quote Originally Posted by Raelia
    The latter continually rejected the former for sake of it all producing an incoherent mess of numbers with no real usefulness or sanity in assigning multipliers or order of operations, foolhardy chasing of the max and min of a nonuniform (trapezoidal) distribution, and seeming pick-and-choose acceptance of concepts like the 1.05 secondary randomizer (but then rejecting it again a week later).
    I know Masa had some issues accepting the 1.05 multiplier (trying to figure out if there was a way to explain the distributions without using it), but it's always been part of my own equations. I'll agree that the equations are a bit of a mess, though, but that's because we never really reached the "clean-up" stage.


    I'm thinking of running my own set of new test data and reworking things from scratch. On nin I can add up to ~130 attack at roughly 7-8 attack intervals without affecting fStr, and attack fast enough to get lots of sample points quickly. Will see if I can find the free time to do it.

  10. #10
    Custom Title
    Join Date
    Nov 2008
    Posts
    1,066
    BG Level
    6
    FFXI Server
    Diabolos

    The tables on otherwiki are out of date and not something I wrote nor confirmed nor even endorsed. I just put my knowledge of the changed cap order and extra randomizer on there, which works perfectly at capped Ratio where the 1.0/2.0 'flats' don't occur. The place is still a joke it's just easier to link people there than this mess from long ago. The flats are still the weirdest part and crits not being a flat +1.0 increase I now agree with.

    At some point I will take a stab at fitting their much larger data set to my assertions or vice versa, I'm just generally too busy... you know... actually playing the game lately. This isn't anymore the 2009-2010 level 75 doldrums that boredom'd me into modeling high Ratio damage in the first place. We're all doing the same thing, I just worked from a much narrower set that let me focus on what mattered to my playstyle and avoid some of the craziness Moten and Masa ran into at intermediate Ratio values.

    I have to disagree heartily with your 2.25 2-hander Ratio cap, which I surmise you got from the other thread you linked. I had 2-hander's ratio cap pinned down pretty good using the first post of page 3 here. He found a pDif max multiplier of ~1.23, which with an 'average' 1.025 secondary taken out gives 1.2 for max primary multiplier. Secondary rolling high as well explains why he saw up to 1.25. This then feeds back in with the observed 2.76-2.77 'maximum' pDif that was approached in many sources that then a 2.2 capped Ratio gives: 2.2 * 1.2 * 1.05 = 2.772 max combined pDIF, which after flooring of final damage gives the widely observed pDIF max limit for 2-handers of 2.76-2.77. Extend this model to the observed 2.0 Ratio cap on 1-handers and you get a 2.52 max combined pDIF which is very close to the 1-handed data in the other thread after flooring of final damage is considered.

    That's the basis of my model in a single paragraph really, besides the 1.00-1.05 secondary randomizer being visible on crits capping at 3.0 before it.

  11. #11
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Started some of my own testing, which lets me pin down certain values that were ambiguous with Masa's data since I can choose the exact attack values to work with.

    Test environment:
    Nin/dnc vs Greater Colibri (slashing weapons, so no piercing bonus to factor out).
    No spellcast, no gear swaps within a test.
    93+5 str which gives 8 fStr.
    Two d23 weapons. Final d on all attacks is 31.
    Gear swaps only change attack (and dex/agi/etc, which I don't care about), not str or crit damage (so I can use the crit data later).


    Can generally get around 100 attacks in per bird. I try to get at least 5 birds per level per test run for ~500 attacks per bird-level. With a d31 weapon, I should be fairly certain of hitting the damage limits, as well as seeing some of the shaping effects (though not so much on these tests, since cRatio is too high).


    Testing for first bound factor: max pDif.

    Whatever max damage result occurs, factor out the 1.05 multiplier in order to determine max pDif damage value.

    Will list just the tests that gave useful results (other tests included all values that these tests covered, plus more, so don't actually contribute towards finding the limit).

    Max pDif appears (from this and previous testing) to be a straight multiplier on cRatio. It also appears (from previous testing) to be capped, but I'm not trying to determine the cap yet, just the multiplier.

    Code:
    Attack      Defense     cRatio (1+ X/1024)    Max observed     Max/1.05     Mult. range (decimal)    Mult. Range (X/1024)
    464             322     1.441 (451)                     56           54       +20.89% - +23.11%        214-236
    464             327     1.419 (429)                     56           54       +22.76% - +25.02%        234-256
    472             327     1.443 (454)                     57           55       +22.92% - +25.15%        235-257
    489             327     1.495 (507)                     59           57       +22.99% - +25.14%        236-257
    Note: The multiplier ranges are calculated based on Max/1.05; they do not include the damage spread factor.

    Reason for these values:
    464 att gave a possible range of 234-236 when combining the lvl 81 and lvl 82 bird results. 472 was chosen to either prove or eliminate 234 (eliminated), and 489 was chosen to either prove or eliminate 236 (proven).

    From that, we can see that the multiplier must be 236/1024 (assuming integer math in /1024 base), or 23.047%.

    Masa's test data indicated that the max pDif multiplier was the same for 1-handed and 2-handed weapons. I have not re-tested 2-handed weapons, but will assume that it still holds for now.

    Prior testing indicated that the multiplier had a max possible pDiff gain of 0.375 (384/1024, though I wrote 378/1024 in my notes; needs validation).

    ~ Gain: if you have 400 att and add 20% you end up with 480; the 'gain' is 80 points

    The cRatio that would generate a gain of +384 would be 1.627. Testing 1.75 cRatio to see if it holds.

    1.75 cRatio: 572 att vs lvl 82 birds. I put together a build with 571 att.
    571 vs lvl 81 birds: 1.773
    571 vs lvl 82 birds: 1.746

    Expected max damage if gain is capped:
    Vs lvl 81: 31 * (1.773 + 0.375) = 66 (69 after 1.05)
    Vs lvl 82: 31 * (1.746 + 0.375) = 65 (68 after 1.05)

    Expected max damage if gain is not capped:
    Vs lvl 81: 31 * 1.773 * 1.23047 = 67 (70 after 1.05)
    Vs lvl 82: 31 * 1.746 * 1.23047 = 66 (69 after 1.05)


    Observed max damage for lvl 81 birds: 69
    Observed max damage for lvl 82 birds: 68

    Conclusion: The max pDif multiplier has a cap on the amount gained of approximately 0.375.

    Caveat: Cannot necessarily assume that the same holds for 2-handed weapons.

    With regards to max cRatio for 2-handed weapons: 2.25 plus the capped gain of 0.375 totals 2.625. Add in 1.05 multiplier and max pDif should reach 2.75625, which is close to, but not necessarily an absolute match for, the 2.76-2.77 max observed values.

    On the other hand, the 20% multiplier value you use is clearly wrong (if it uses the same value as for 1-handed weapons), so can't be used as a basis for calculating max cRatio on 2-handed weapons. You'd end up with a max damage value of ~2.84 pDif if using the proper +23% multiplier on a max cRatio of 2.2.

  12. #12
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Just as a cross-reference point with respect to the validity of the current pDif formulas ~~


    With 482 attack and 91 str, both attack and fStr will be capped on all levels of lesser colibri.
    Testing with 496 attack and 103 str.

    d23 katana, capped fStr, total base damage = 33

    With capped attack, using:

    1) My formula: cRatio * 236/1024, capped at 384/1024.
    2 * 236/1024 = 472/1024, capped at 384/1024 (0.375)
    2 + 0.375 = 2.375
    33 * 2.375 = 78.375 (floored to 78)
    78 * 1.05 = 81.9 (floored to 81)

    2) BGWiki formula: 1.019 × cRatio + 0.485
    = 2.523
    33 * 2.523 = 83.259 (floored to 83)
    I think this includes the 1.05 damage spread already?

    3) OtherWiki formula: fMax(cRatio) = 1.2 x cRatio + 0.05 (Proven)
    1.2 * 2 + 0.05 = 2.45
    33 * 2.45 = 80.85 (floored to 80)
    Does this include 1.05 damage spread? If not,
    80 * 1.05 = 84 (would almost never see; functional max of 83)



    Since I don't have to worry about mob level, simply targetting ~500 non-crits to be certain of full spread.


    698 total hits; 188 crits; so 510 non-crit hits.

    Low/Hi: 51/81

    Hit distribution:
    Spoiler: show
    Code:
      Melee
             51:    3
             52:    8
             53:   18
             54:   17
             55:   19
             56:   14
             57:   17
             58:   17
             59:   23
             60:   17
             61:   14
             62:   11
             63:   18
             64:    8
             65:   13
             66:   22
     ^       67:   21
    +        68:   30
             69:   21
             70:   20
             71:   20
             72:   14
             73:   24
             74:   24
             75:   21
             76:   24
             77:   15
             78:   17
             79:   12
             80:    7
             81:    1


    I did manually verify the 81 dmg sample in my chat log.

    BGWiki predicts high of 83
    OtherWiki predicts high of 80 or 83/84
    Mine predicts high of 81

  13. #13
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Going to attempt an additional test to see if I can pin down the max cap a bit better.

    There are more differentiable values on the lvl 81 birds than on the 82 birds, so that's the target for these tests.

    For any given A/B cap, if the cap is at least B then the max will be Y, while if the cap is A or lower the max seen will be X.

    374/375 @ 537 attack
    374 max: 62 (65 with 1.05)
    375+ max: 63 (66 with 1.05)

    379/380 @ 556 attack
    379 max: 64 (67 with 1.05)
    380+ max: 65 (68 with 1.05)

    383/384 @ 534 attack
    383 max: 62 (65 with 1.05)
    384+ max: 63 (66 with 1.05)

    Note that failure to show the higher value does not eliminate that cap value. The chances of hitting the exact max are extremely small, further reduced by needing to hit the top end of the 1.05 spread. The purpose of this test is mostly to eliminate lower values as possibilities. For a given max, you know the cap has to be at least X if you ever see a max value above the higher limit.


    It's impractical to try to test for the exact value. For example, if the limit was 375, My 374/375 test would take about 17,500 hits on level 81 birds (so ~35k hits total, after removing crits and misses, if there were an even numbers of 81 and 82 birds) for a max value of 66 to show up.

    On the other hand, if the max cap is 384 then my 374/375 test should see a 66 show up in about 1/10 the number of hits: 1750 instead of 17,500.

    ...

    Given the preponderance of lvl 82 birds I'm getting (which I'm sure will reverse now that I'm changing the test), and the rarity of the chance of hitting the max damage target, I'm going to change my setup.

    374/375 @ 524 attack vs lvl 82 birds
    374 max: 60 (63 with 1.05, functional max of 62)
    375+ max: 61 (64 with 1.05, all 63's should be evidence of this max)

    Given that over 1/3 of all damage spread results should be 63 on a 'hit' if the cap is at least 375, and that I shouldn't get any 63's if the cap is 374 or less, and I should see a 63 within a reasonable time frame if the cap is notably above 375.

    Results: a damage value of 63 on the first lvl 82 bird, out of 75 non-crit hits. This indicates that the cap is above 375, and probably a fair bit above in order to see that result so quickly.

    Ok, two 63-damage results within 3 lvl 82 mobs using 524 attack. That's enough to show that the cap is clearly above 375.


    Moving to the next stage.

    379/380 @ 556 attack vs lvl 81 birds
    379 max: 64 (67 with 1.05)
    380+ max: 65 (68 with 1.05)

    If cap is 379 or lower, 67 results should be very rare (once every several thousand hits). If cap is 380 or higher (in particular, if it's ~384), 67s should be fairly common, and 68s are possible.

    The only difficulty is getting lvl 81 birds to pop....

    Ok, after several 81's, I got several 67s and a few 68s. More 68s than I would have expected, actually, but I can hardly complain. It's clear the cap is reasonably above 380, which puts 384 as a perfectly viable threshhold.

    Also, from the previous test, it's also clear that the cap cannot be higher than about 395. It's possible the cap is in the 385-390 region, but I've done enough work on this stage for now and am willing to work with 384.

    This gets us maximum max pDif. We also need to test for minimum max pDif. I'll have to use clubs for that test to get my attack down low enough.

  14. #14
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Minimum max pDif

    Max pDif has a minimum limit to complement its maximum limit. In order to find it we need to set up a cRatio that will give us a multiplied value well under what we would expect the lower limit to be.

    Using my -attack setup while wielding clubs, my attack is 337. That gives cRatios of 1071/1024 for lvl 81 birds and 1055/1024 for the lvl 82 birds.

    The default max pDif based on the multiplier would be +246 for the lvl 81 birds and +243 for the lvl 82 birds.

    Base damage is d15 + 8 fStr = d23.

    Threshholds for a higher minimum:
    Lvl 81:
    +246 = 29 (30 with 1.05)
    +265 = 30 (31 with 1.05)
    +310 = 31 (32 with 1.05)

    Lvl 82:
    +243 = 29 (30 with 1.05)
    +282 = 30 (31 with 1.05)
    +326 = 31 (32 with 1.05)


    Sample max 31 on lvl 81 birds, means that the min value is at least +265.
    Sample max 30 on lvl 81 82 birds, means that the min value is probably less than +282.

    Lacking the patience right now to fine tune this again, I'm going to assume a value of +272, which is evenly divisible by 16 and falls neatly between the two limiting values from the test run, as the minimum limit for max pDif.


    Overall max pDif calculation:

    cRatio * 236 / 1024
    Clamped to a range of +272 to +384.

    Any cRatio below 1180/1024 (1.152) will have a max pDif of +272 (0.265625)
    Any cRatio above 1666/1024 (1.627) will have a max pDif of +384 (0.375)

  15. #15
    Custom Title
    Join Date
    Nov 2008
    Posts
    1,066
    BG Level
    6
    FFXI Server
    Diabolos

    Quote Originally Posted by Motenten View Post
    On the other hand, the 20% multiplier value you use is clearly wrong (if it uses the same value as for 1-handed weapons), so can't be used as a basis for calculating max cRatio on 2-handed weapons. You'd end up with a max damage value of ~2.84 pDif if using the proper +23% multiplier on a max cRatio of 2.2.
    Except you did it ass-backwards from my system. Your 1.23 multiplier is the same as 1.2 * 1.025 (because max Primary multiplier samples are always very rare, secondary rolling average would be normal, not to mention flooring), so you're re-applying secondary to this already combined multiplier to 'disprove' my model? Please don't mix systems, especially in completely the wrong way. Masa's chart does not include Secondary, which is an imbalanced (always 'upward') multiplier. If you want to use it to solve for 2-hander Ratio cap, but agree that the Secondary multiplier exists, you need to solve:

    (1.116x+0.2535)1.025=2.77

    x = 2.194

    1.025, average Secondary, because max Primary multiplier hits are far too small in sample size to reliably have Secondary high as well. Is it inconceivable that pDif min/max multipliers stop converging past 2.0 cRatio? They appear to dip in the final two samples of Masa's 2-hander chart, which for that matter has no hitcount for any values to really know their reliability.

    Anyway, hard-testing Ratio cap currently to put this to rest. Rather nice to be around 2.2 on Greater Colibri in my standard gear now, and one piece swaps to go from 2.15 up to 2.3 with birds self-identifying in Kparser for easy sorting between 322 and 327 defense. Capped fSTR on my OA2-4 Scythe even.


    Edit: (I edit a lot anyway, but wanted to point this out as an edit) I may have found something absolutely bonkers: Secondary may be only applied when you hit capped ratio. I'll have both 2.198 and 2.208 Ratio parses to show this I think, but it's also visible on Masa's 1-hander data, where if you really look at all the sub-2.0 data it appears to shoot low of the 2.0 result (but he fit his line to the 2.0 result anyway). This sorta came to me when I was snoozing last night that my 708 attack data seemed far lower than it should have been compared to my 800+ attack samples and that I should try 'truly' capped 2.2 ratio just to be sure.

    I'll have a really tight cluster of data around 2.2 Ratio, some 2.257 Ratio, and some 2.4+ Ratio data (Last Resort up) just to compare. This would explain perfectly why yours and Masa's partial ratio data always disagreed with my capped ratio conclusions.

  16. #16
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Quote Originally Posted by Raelia
    Your 1.23 multiplier is the same as 1.2 * 1.025 (because max Primary multiplier samples are always very rare, secondary rolling average would be normal, not to mention flooring), so you're re-applying secondary to this already combined multiplier to 'disprove' my model?
    You stated:

    Quote Originally Posted by Raelia
    He found a pDif max multiplier of ~1.23, which with an 'average' 1.025 secondary taken out gives 1.2 for max primary multiplier.
    That is, you're removing the average possible 1.05 additional multiplier from the estimate that Yarko made.

    I removed the 1.05 multiplier -completely- (not just the average, the full 1.05) before figuring out the primary multiplier. The 'average' 1.025 applied to mine would produce 1.23 * 1.025 = 1.26075 and the max would be 1.23 * 1.05 = 1.2915. So it is not the same thing as yours.



    Quote Originally Posted by Raelia
    Anyway, hard-testing Ratio cap currently. Rather nice to be around 2.2 on Greater Colibri in my standard gear now, and one piece swaps to go from 2.15 up to 2.3 with birds self-identifying in Kparser for easy sorting between 322 and 327 defense. Capped fSTR on my OA2-4 Scythe even.
    I do appreciate this. I hadn't even started retesting 2-handed stuff; was just working from the prior assertions that max pDif was calculated the same for 1-handed weapons and 2-handed weapons.

    I could actually start pulling out Masa's old parses to try to validate, or at least confirm, some aspects of things.

  17. #17
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Going back to Masa's data (I have copies of his parses, so can clarify anything missing in his posts), here's some sample points from the 2-handed parses vs lesser colibris (just enough to do some basic checks):

    482 att
    d103 vs lvl 63 (def 231, ratio=2.087), max = 265
    d103 vs lvl 64 (def 235, ratio=2.051), max = 261
    d102 vs lvl 65 (def 241, ratio=2.000), max = 253
    435 att
    d103 vs lvl 63 (def 231, ratio=1.883), max = 242
    d103 vs lvl 64 (def 235, ratio=1.851), max = 239
    d102 vs lvl 65 (def 241, ratio=1.805), max = 231
    404 att
    d103 vs lvl 63 (def 231, ratio=1.749), max = 228
    d103 vs lvl 64 (def 235, ratio=1.719), max = 225
    d102 vs lvl 65 (def 241, ratio=1.676), max = 217

    Each of these parses had 2500-3000 hits, split fairly evenly across the various levels of birds (for every 100 hits on one level of bird, there weren't more than about 150 on any other level).

    If you factor out the 1.05 from the max damage, convert to approximate pDif value, and then subtract ratio, you get:

    482 att
    Lvl 63: 265 > 253, 2.456, 0.369
    Lvl 64: 261 > 249, 2.417, 0.366
    Lvl 65: 253 > 241, 2.363, 0.363
    435 att
    Lvl 63: 242 > 231, 2.243, 0.360
    Lvl 64: 239 > 228, 2.214, 0.363
    Lvl 65: 231 > 220, 2.157, 0.352
    404 att
    Lvl 63: 228 > 218, 2.117, 0.368
    Lvl 64: 225 > 215, 2.087, 0.368
    Lvl 65: 217 > 207, 2.029, 0.353

    This is similar to what I expect in my model, though the lvl 65 birds start to fall a bit low. Due to rounding? Try working the other direction.


    Predicted vs actual max using my model:
    482 att
    Lvl 63: 2.087 + 0.375 = 2.462 * 103 = 253.586 > 253 * 1.05 = 265.65 > 265 / 265
    Lvl 64: 261 / 261
    Lvl 65: 254 / 253
    435 att
    Lvl 63: 243 / 242
    Lvl 64: 240 / 239
    Lvl 65: 233 / 231
    404 att
    Lvl 63: 228 / 228
    Lvl 64: 225 / 225
    Lvl 65: 219 / 217

    Several exact matches, and some that are 1-2 points higher than observed (does not invalidate theory). Lvl 65 results are still a slight concern as they appear to be a full point off.

    Predicted vs actual max using the 1.2 multiplier:
    482 att
    Lvl 63: 2.087 * 1.2 = 2.5044 * 103 = 257.9532 > 257 * 1.05 = 269.85 > 269 / 265
    Lvl 64: 265 / 261
    Lvl 65: 256 / 253
    435 att
    Lvl 63: 243 / 242
    Lvl 64: 239 / 239
    Lvl 65: 231 / 231
    404 att
    Lvl 63: 226 / 228
    Lvl 64: 222 / 225
    Lvl 65: 215 / 217

    Predicted values are several points high at 482 att, perfect matches at 435 attack, and low at 404 att. Even if you remove the first flooring step, the predicted maxes for 404 att do not reach the observed values, so that would seem to invalidate this method.


    Quote Originally Posted by Raelia
    Secondary may be only applied when you hit capped ratio.
    I can pretty well confirm that this is not the case. Indications of the secondary multiplier abound in every single parse I've looked at, usually in 2 to 3 different segments of the distribution.

  18. #18
    Custom Title
    Join Date
    Nov 2008
    Posts
    1,066
    BG Level
    6
    FFXI Server
    Diabolos

    Put simply, I'm seeing my average damage jump from 166 to 172 just going from 2.198 Ratio to 2.208. This is with 1000+ samples. Could also be explained by Ratio being floored to 2 decimals. Silly me, there's another zero in there when you 2.2/2.19 compared to 172/166

    Also remember that if the max damage predicted is something like 100.1, there's only that 0.1 margin that must be hit to actually floor to that 100 damage, else you'll only see 99.

    Also, you're using partial ratio examples to 'disprove' my capped ratio assertion again. Primary multiplier gets wider as you drop below 2.0 ratio with 2-handers, as apparent on Masa's graph.

  19. #19
    Chram
    Join Date
    Sep 2007
    Posts
    2,526
    BG Level
    7
    FFXI Server
    Fenrir

    Quote Originally Posted by Raelia View Post
    Put simply, I'm seeing my average damage jump from 166 to 172 just going from 2.198 Ratio to 2.208. This is with 1000+ samples. Could also be explained by Ratio being floored to 2 decimals. Silly me, there's another zero in there when you 2.2/2.19 compared to 172/166
    I'd have to see the full distribution to make any guesses. Will see once you've completed the runs.

    Quote Originally Posted by Raelia View Post
    Also remember that if the max damage predicted is something like 100.1, there's only that 0.1 margin that must be hit to actually floor to that 100 damage, else you'll only see 99.
    Indeed. That's why I noted that a predicted max value being slightly above observed does not in itself invalidate a particular methodology. A predicted value being below max observed, however, should.

    Quote Originally Posted by Raelia View Post
    Also, you're using partial ratio examples to 'disprove' my capped ratio assertion again. Primary multiplier gets wider as you drop below 2.0 ratio with 2-handers, as apparent on Masa's graph.
    As I am apparently completely misunderstanding what you're trying to say, please spell it out in clear steps, and define your terms (eg: what do you mean by "partial ratio examples"? how does a multiplier get "wider"?). Also, please run through the actual math that you would apply for the above listed samples to show how it compares with the observed values.

  20. #20
    Masamune
    Guest

    Question: any ideas to setup a test for determining the lower inflexion points for Max Normal PDIF (around cRatio~0.7 & 0.3?) and Min Crit PDIF ?

    Asking this because once determined, since we also know precisely the other inflexion points (cRatio=1.25 and 1.5 + the max caps), can start to search for a model mimicing the parsed distribution with excel.

+ Reply to Thread
Page 1 of 9 1 2 3 ... LastLast