Item Search
     
BG-Wiki Search
+ Reply to Thread
Page 2 of 9 FirstFirst 1 2 3 4 ... LastLast
Results 21 to 40 of 172

Thread: pDif and damage     submit to reddit submit to twitter

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

    Ok, limits.

    I know from my parses that there -must- be a multiplier on cRatio of at least 236/1024 for max pDif. While I also pegged that as the maximum possible value, I'll grant the possibility that extremely low-frequency values could have shown up later to boost that max.


    Pulled all data to review again. Looking at it first without factoring out the 1.05 secondary multiplier. Assuming for now that the secondary multiplier is applied directly to primary pDif, and not to a floored damage value.

    For my data (cRatio of about 1.4 to 1.8), there's a clear trend upwards if you use a difference value (max pDif - cRatio). If you use a ratio (max pDif / cRatio), the line is pretty much flat.

    For Masa's data (cRatio of about 1.5 to 2.0), the difference values are mostly flat, while the ratio values have a slight decline.

    Combined graph very much looks like there's a multiplier that can reach a cap. The difference at the low end is around 0.40, while the difference at the high end hits 0.50. It's clear that it can't be a flat addition, and there are also no indications that it's a piecewise calculation (ie: use this formula for cRatio between A and B, use the next formula for cRatio between B and C, etc).

    So continuing with the idea that the concept of the original formulation is correct.



    The highest difference shows the minimum that it has to be able to add. This is reached on Masa's 2.0 data. Difference required is between 0.4915 and 0.5085.

    The highest ratio shows the minimum multiplier that has to be used. This is reached with Masa's 370 att data. Ratio required is between 1.2810 and 1.2918. There are several other points that hit 1.27+, however it falls off very rapidly above ~1.75 cRatio.

    Note that both of those include secondary multiplier effect.

    We may reasonably assume that the secondary multiplier on those maximum cases was between 1.04 and 1.05. Factoring that out, and picking through the narrowest viable final ranges, that gives us a base range of:

    Ratio: 1.2810 to 1.2848 >> 1.2200 to 1.2354

    As fractions of /1024, 1.2200 to 1.2354 would lie between 1 + 225.3/1024 to 1 + 241.0/1024. I picked 236/1024 before, but it appears 240/1024 is also viable. Given the issues with probability distributions, the higher value also seems more probable, so I'll go with that.

    Difference: 0.3729 to 0.3960

    That's between 381.8/1024 and 405.5/1024. Any of 384, 392 or 400 is acceptable as a fraction of /1024, and based on recent probability work I'd be willing to go for the higher value of 400/1024.


    So, reasonable choice on max pDif:
    Adds to cRatio as a random value between 0 and (cRatio * 240)/1024, with a cap of 400/1024. Cap would be reached at 1.6667 cRatio.


    With a cap of 400/1024, max at 2.0 cRatio for the previous discussion with d59 weapon would be 148.099.


    Min cap on max pDif:

    More limited data.

    d23 on warp cudgel with 8 fStr

    Max of 31 at 337/322 = 1.0466 cRatio
    Max of 30 at 337/327 = 1.0306 cRatio

    Expected max without any caps applied:
    Lvl 81: 29.71 without 1.05, 31.20 with 1.05
    Lvl 82: 29.26 without 1.05, 30.72 with 1.05

    It would appear that there's no evidence of a lower limit on the max pDif at this point. The lower limit would only apply if the primary damage value was being floored. If there's no flooring, it doesn't appear to be necessary.

    There's probably still some sort of limit, but whatever it is would occur below 1.0 cRatio.

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

    The next test is for the minimum pDif.

    The first thing we need is to create a slope on the min pDif value. This will determine what type of formula we want to use.

    1) If slope is 1.0 vs cRatio, then min pDif is a direct subtraction from cRatio
    2) If slope is less than 1.0 vs cRatio, then min pDif is a multiplier on cRatio, with the multiplier being less than 1.0
    3) If the slope is greater than 1.0 vs cratio, then min pDif is a subtraction from a line generated by multiplying cRatio by a value greater than 1.0




    Blue line is minimum possible pDif for the min damage at X.0 (eg: pDif for 35.0 when minimum damage is 35). The pink line is the maximum possible pDif (eg: pDif for 35.999 when minimum damage is 35). The yellow line is same as the lower line, but excluding the 1.0 values. This allows us to get a trendline on that segment.

    A quick trendline shows a slope of about 1.15.

    Since the slope is greater than 1, it has to be a fixed subtraction from a some multiple of cRatio (option 3, above).

    There are a few points where it appears reasonable to expect that the true minimum was not reached. Tweaking a few values gives a trendline of 1.1499x + 0.7431.

    Going to see if it's possible to make a 1.15 slope line that fits fully between min and max limits.

    Dropping 5 values by 1 point (two of which are clearly wrong, such as the 2.0 cRatio with a higher min than other 2.0 samples, and the other three of which can be shown to be out of balance with the surrounding results) out of 25, the result can fit 1.15x + 0.7324. 0.7324 was chosen as 750/1024; 1.15 is 1 + 153.6/1024.

    1.15 doesn't have a convenient /1024 value, and 750/1024 isn't a multiple of 8 (or at least 4) like I'd prefer. Tried tweaking various values to see what combinations worked.

    Using a subtraction of L, range of valid multiplier M:

    Lowest possible L: 688
    Highest possible L: 771
    Outside that range, it's not possible to generate a valid M.

    Given that M appears to be close to 1.15 --

    Code:
    L         M
    747     152
    748     152
    749     153
    750     153
    751     154
    752     154
    753     155
    754     155-156
    755     156
    756     157
    The only combination where both L and M are divisible by 4 is 748 L with 152 M. Will probably go with that, but more likely use the simplified version of 1.15 * cRatio - 750/1024.

    Edit: If I tweak one other value of questionable validity, a better fit is 752 L and 152 M. That's better as it makes both values divisible by 8.



    Edit 2: Further note, drawn from my original calculation set:

    Quote Originally Posted by Motenten
    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 }}
    Given the data in this post, it's clear that my original estimate of an M value of ~1.13 for 1-handed weapons is wrong (though understandable due to the valid range that L and M can cover). As the 2-handed weapon values are very close to the results I determined here for 1-handed weapons, it's likely that both types use the same equation.

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

    Min crit graph. This is a bit more scattered about, but there's a pretty clear baseline.



    Taking only the lowest points, the trendline generated is 1.0843x + 0.4566, so it's increasing at a rate greater than cRatio. Slope could go as high as 1.1018. We don't really have to factor out the secondary randomizer since this is a minimum set, but it could potentially drop the slope to 1.09.

    Max crit is even more messy.




    Peak of 3.15 seems to be reached at about 1.64 cRatio. Best slope before cap seems to be... (3.15-2.9355) / (1.6422 - 1.4587) = 0.2145 / 0.1835 = 1.1689. Possibly a little lower, such as 1.15.

    Unlike the minimum pDif, however, we need to factor out the 1.05 spread. That ends up with a slope between 1.095 and 1.124 (with allowance for not-quite-max secondary modifier).

    So it looks like it's feasible that both min and max crit could be plotted relative to a 1.09 or 1.10*cRatio line (before secondary). A basic initial attempt to find something that works ends up with:

    critLine = 1.09*cRatio + 0.85
    min Crit = critLine - 0.4
    max Crit = critLine + 0.4

    This is moderately close. Given that a lot of Masa's data only had ~100 crits (much lower crit rate than my data, so fewer crits even though he had more hits), not hitting the full edges is to be expected. The above formula gives a few points leeway on several of the data sets, and matches the limits on others.

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

    When making estimations based on crit hit distributions, I usually maintain a rough assumption of a 50/50 split between below 3.0 and 3.0+. That actually isn't quite accurate, as there's a small bias towards 3.0+.

    Using the above estimation of the crit hit distribution pattern, 1.09 * 2.0 + 0.85 puts the center of that distribution at 3.03. Along with the secondary modifier, you should expect to see maybe 55%-60% of all hits as 3.0+.

    Going to look at Masa's 2.0 samples to see if that holds.

    d59
    Total crits: 96 + 103 + 27 + 69 = 295
    Crits of 177 or higher: 56 + 56 + 20 + 43 = 175
    Percent of crits at 3.0 or higher: 59%

    d58
    Total crits: 40
    Crits of 174 or higher: 22
    Percent of crits at 3.0 or higher: 55%


    My d33 data vs Lesser Colibri:
    Total crits: 188
    Total crits of 99 or higher: 104
    Percent of crits at 3.0 or higher: 55%


    Overall:
    Total crits: 523
    Total crits at 3.0 or higher: 301
    Percent of crits at 3.0 or higher: 57.6% +/- 4%


    On the other hand, it is possible to explain the skew based solely on the secondary modifier. Anything down to 2.86 could potentially be pushed over the 3.0 limit, and the overall average is about 8.9% of all values end up as 3.0+ instead of below 3.0, giving a 59/41 split. That's actually closer to the observed results than it would be if the extra .03 was factored in.

    As such it's possible that the target average crit value is exactly 3.0 when starting from a 2.0 cRatio. That means a 1.075 multiplier + 0.85 (or 1.1 + 0.8?). Combined with +/- 400/1024, it seems to fit pretty well.

  5. #25
    CoP Dynamis
    Join Date
    Jul 2007
    Posts
    281
    BG Level
    4

    Some notes on low ratio, since it has been brought up a bit:

    Non-crit max has a cap of 1.0 pDIF from 0.5 to 0.75 ratio.

    Crit min has a floor of 1.0 pDIF from 0.25 to 0.5 ratio, exactly 1.0 below the 1.0 floor for non-crit min at 1.25 to 1.5.

    Comparing what data I have, it seems that the function for min crit for 0.5 to 1.0 ratio is, if not identical, then at least very similar for non-crits for 1.5 to 2.0 ratio. Seems entirely possible that crit min and non-crit min use the same function, with crits receiving a 1.0 bonus to ratio (obviously bypassing the cap that normal hits have).

    Looking at max crits for sub-1.0 and comparing them to max non-crits for ratio values 1.0 above those, the resulting pDIF values there are also close enough that they could quite possibly function the same as suggested in the previous paragraph, adding +1.0 not to pDIF, but to ratio.

  6. #26
    BG Content
    Join Date
    Jul 2007
    Posts
    21,105
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    Heh, here is the expanded version of the lolmodel I made:
    Spoiler: show

    Here is the MATLAB code:
    Code:
    clear;
    cRatio=[0:.01:2.25];
    reso = length(cRatio);
    bigar = zeros(10000,reso);
    for index=1:reso
        randy = cRatio(index)*10/9 + rand(10000,1)*8/9 - 3/19;
        for n = 1:10000
            if randy(n) < 1.3
                bigar(n,index) = (randy(n) - .3);
            else
                if randy(n) < 1.5
                    bigar(n,index) = 1;
                else
                    if randy(n)  > 1.5
                        bigar(n,index) = (randy(n)-.5);
                    end
                end
            end
            if bigar(n,index) > 3
                bigar(n,index) = 3;
            end
            if bigar(n,index) < 0
                bigar(n,index) = 0;
            end
        end
    end
    plotar = zeros(3,reso);
    plotar(1,1:reso) = cRatio;
    plotar(2,1:reso) = min(bigar);
    plotar(3,1:reso) = max(bigar);
    figure; plot(cRatio,plotar(2,:)); hold on; plot(cRatio,plotar(3,:));
    figure; hist(bigar(:,1),50);
    It's horrible, I'm a bad taru, etc. Solly, but cope.

    Edit: I should note that I just intended this as a model of the shape and didn't bother dicking around with constant to get it precisely correct. Also, I haven't really figured out how to incorporate critical hit rate yet (if it would work) and I ignored the 1~1.05 randomizer that gets tacked on at the end.

    I was expecting to test some low pDIF values tonight, but Rena is ahead of me! I might still do it tomorrow, but I'm sleepy >:/

    Edit 2: Critical Hit minimum is approximately cRatio + .5 and maximum is approximately cRatio + 1.2.

    Spoiler: Here is Masa's 1H data, corrected for inconsistent fSTR and plotted with the above fit using the above constants:
    Spoiler: show


    You can see why critical hits are going to pose a problem with a scheme like this. I could wave my hands and say that 10/9 is within tolerance for most of the data, but I can't account for the critical hit max. I mean, we have to accept that the crit max/mins are less rigorously tested than the non-crits simply because the tests were performed with about a 30% crit rate. I would not feel bad about changing the intercept of the lower crit boundary a little, and putting a line with 10/9 slope low enough to account for the values.

    If I was going to adjust the crit max slope though, based on Masa's numbers I would be inclined to decrease it a little and bump the intercept up.

  7. #27
    Masamune
    Guest

    Quote Originally Posted by Rena View Post
    Some notes on low ratio, since it has been brought up a bit:

    Non-crit max has a cap of 1.0 pDIF from 0.5 to 0.75 ratio.

    Crit min has a floor of 1.0 pDIF from 0.25 to 0.5 ratio, exactly 1.0 below the 1.0 floor for non-crit min at 1.25 to 1.5.

    Comparing what data I have, it seems that the function for min crit for 0.5 to 1.0 ratio is, if not identical, then at least very similar for non-crits for 1.5 to 2.0 ratio. Seems entirely possible that crit min and non-crit min use the same function, with crits receiving a 1.0 bonus to ratio (obviously bypassing the cap that normal hits have).

    Looking at max crits for sub-1.0 and comparing them to max non-crits for ratio values 1.0 above those, the resulting pDIF values there are also close enough that they could quite possibly function the same as suggested in the previous paragraph, adding +1.0 not to pDIF, but to ratio.
    exactly what i were trying to simulate Rena /nod :D

    prob is since with older formula there were a plateau for min crits that disappeared after the 2H update, and since i have only sparse data of min crits, imnot sure where is exactly the pDIF=1 plateau for them... same for non-crits Max pDIF, ends at 0.75 ? 0.7? 0.65 ?

  8. #28
    BG Content
    Join Date
    Jul 2007
    Posts
    21,105
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    Here is what you are suggesting, I think. It took very little modification to my code.
    Simulation:


    Comparison with adjusted 1H data:


    Code:
    Code:
    clear;
    critrt=.5;
    cRatio=[0:.02:2];
    reso = length(cRatio);
    bigar = zeros(200,reso);
    for index=1:reso
        for n = 1:200
            randy = (cRatio(index)+(rand < critrt) + rand*4/5 )*10/9 + - 3/19;
            if randy < 1.3
                bigar(n,index) = (randy - .3);
            else
                if randy < 1.5
                    bigar(n,index) = 1;
                else
                    if randy  > 1.5
                        bigar(n,index) = (randy-.5);
                    end
                end
            end
            if bigar(n,index) > 3
                bigar(n,index) = 3;
            end
            if bigar(n,index) < 0
                bigar(n,index) = 0;
            end
        end
    end
    figure; plot(cRatio,bigar,'.');<critrt) +="" rand*4="" 5="" )*10="" 9="" -="" 3="" 19;
      <critrt) +="" rand*8="" 10)*10="" 9="" -="" 3="" 19;
    The things I like about this:
    * It fits fairly well considering how simple it is.
    * It is similar to almost every other equation in FFXI (piecewise linear)
    ** The above two things are what we would expect of the "true" pDIF function.</critrt)></critrt)>
    * It uses constants that we see in the ranged attack equation.
    <critrt) +="" rand*4="" 5="" )*10="" 9="" -="" 3="" 19;
    <critrt) +="" rand*8="" 10)*10="" 9="" -="" 3="" 19;
    * It predicted an unverified observation.

    The thing I don't like about it:
    * As I noted earlier, the model fails when it comes to the max crit damage. I'm not willing to accept that we're somehow just never seeing the "true maximum" in most of those parses.</critrt)></critrt)>

  9. #29
    CoP Dynamis
    Join Date
    Jul 2007
    Posts
    281
    BG Level
    4

    I don't think max pDIF uses the same function for 0.75 to 1.?? as it does from 1.?? to cap. It's easy enough to see that from ~1.75 and up at least, max is ratio + 0.375, and crit max is simply ratio + 1.375 (consistent enough with crits being ratio +1.0, and this would mean we run into the 3.0 cap on crits around ~ 1.625 ratio, which seems correct). Somewhere below 1.75, results and formula diverge noticably, with disparities growing greater as ratio drops, suggesting there is another function between 0.75 and 1.75. 1.75 is a rough guess due to somewhat limited data at the moment, but if I draw a line between 0.75 and 1.75, the results fit very well, if we assume there is no floor before the 5% randomizer. This results in a 9/8 growth per ratio for 0.75-1.75.

    As another curiosity that still needs some more examination; if we apply this same formula to the min pDIF line, we end up with results that are very close to observed results (1.5625 and 2.625 for 2.0 ratio, and 1.84375 and 2.875 for 2.25 ratio, as non-crit min and crit min, respectively). If we also look at the 1.0 caps, we can see that for min pDIF, it occurs exactly 0.75 after it does for max pDIF. In other words, max and min pDIF seem to be using the same function, with min pDIF simply being ratio - 0.75.

    Edit: going to make a wild guess here, since I haven't looked much at distribution at all, but for those who have, how would a simple randomizer generating a value from 0/256 to 192/256 to subtract from ratio work?

  10. #30
    BG Content
    Join Date
    Jul 2007
    Posts
    21,105
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    I don't know about that. As you can see above, I get an R^2 of .9991 for 1H non-crit max pDIF via Excel's linear fit over the whole range. The lowest R^2 is .9924. No data has been deleted (1H samples) and I just combined all the 2H samples and they end up right on top of one another.

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

    What values are you using for the model equations in the comparison graph?

    Also, using the R^2 values for a graph fit isn't necessarily the best validator. Consider:



    This is purely a model graph for max pDif, where max pDif = cRatio * (1 + 240/1024), capped at +400/1024 (you can see the inflection at about 1.65). It generates an R^2 of 0.9982.

    Actually, I wonder...

    Ok, a couple more graphs, that show some interesting effects.

    Max pDif below 1.625 cRatio. A bit messy, and I'm not sure how to create a trendline that requires all points are above or below it, so I don't really trust the scaling value here.


    Note: for all of these, the blue line is the absolute minimum valid pDif for the given damage value, and the red line is the absolute max valid pDif for the damage value. Trendlines were created on the max curve.

    A subset of the above, this takes only the most linear segment.


    Seems to be running at 1.216 over cRatio. However that includes the 1.05 secondary multiplier, so actual slope is perhaps 1.16. Hard to say, as the larger segment requires a higher multiplier.

    Now the interesting one. This is max pDif values above 1.625.


    Note that the trendline multiplier is just a bit below 1.05. Considering that these values are after the 1.05 secondary multiplier, it would seem to indicate a 1:1 match with cRatio, simply offset. Also note the offset of 0.4013, just a little higher than my estimated 400/1024 (0.39). Considering that the trendline was created off of the upper limit, this makes sense.

    Note that I still don't believe that these are sets of piecewise-joined equations, but rather that there is simply a cap on the value that can be added, while the equation remains the same.

  12. #32
    BG Content
    Join Date
    Jul 2007
    Posts
    21,105
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    The equation is:
    Normal Val = (cRatio + .8*rand)*10/9 - 3/19
    Crit Val = (cRatio + 1 + .8*rand)*10/9 - 3/19

    If Val < 1.3, pDIF = Val - .3
    If 1.3 < Val < 1.5, pDIF = 1
    If Val > 1.5, pDIF = Val - .5

    Then I cap pDIF to 3 and keep it from going below 0.

    I am also using what you call the max pDIF (recorded damage+1)/base damage in my plots. I forget exactly what my logic for this was, but they stuck around because I thought it looked too cluttered with both sets.

  13. #33
    Masamune
    Guest

    Easiest imho is to pinpoint @ which cRatio Max pDIF hit the plateau =1.

    Why? because we know it caps @ Cratio~2, then can pinpoint an acceptable line having parsed maxs below it.

    Other concern i had due to lack of data is when crit pDIF min meets the plateau max pDIF=1... around cRatio~0.3 but not very clean...

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

    Quote Originally Posted by Motenten View Post
    Note that the trendline multiplier is just a bit below 1.05. Considering that these values are after the 1.05 secondary multiplier, it would seem to indicate a 1:1 match with cRatio, simply offset. Also note the offset of 0.4013, just a little higher than my estimated 400/1024 (0.39). Considering that the trendline was created off of the upper limit, this makes sense.

    Note that I still don't believe that these are sets of piecewise-joined equations, but rather that there is simply a cap on the value that can be added, while the equation remains the same.
    [snark]Gee, sounds like cRatio+0.40 before Secondary to me. Don't make me feel like you all took my ball and went home guys...[/snark]

    They can certainly be piecewise, because Secondary will 'scrub' the discontinuity anyway (to say: no holes unfilled). If you try to make the RAE values not piecewise you just screw up the slope over half of each range. I tried this, was not pretty. Had values in the bottom half falling completely out of Secondary's range.

    I think part of your problem with those particular graphs is your parse sizes:

    Code:
    1,797	1,792	1,762	1,718	1,688	1,660	1,618	1,602	1,574	1,535
    1096	1336	974	1227	851	1277	1376	1296	1177	1003
    Notice the shorter parse at 1.688 causing an apparent 'dip' in maximum, and the shorter parse at 1.762 as well. Reconsidering these values presents to me two distinct sets above and below 1.75

    Except these are backwards from pDif max (RAE) getting smaller as cRatio gets lower.

    Unfortunately this presents quite a pickle, because if you look to see those 1.762 values be any higher due to a small parse size it messes with 1.75 being a break point, so it could be that 1.762 'got lucky' and hit a high value just by chance, or there is a change in maximum there and 1.762 lowballed it hard.

    Perhaps all of that wonkiness is caused by larger parse sizes hitting extreme values by higher chance while the more moderate parse sizes better fit a norm and all of this is further confounded by particularly small samples like 1.950 completely undershooting maximum. In fewer words, I think in this particular graph you're chasing variance in maximums due to parse size instead of an actual change in pDif max. It's not that they're all too small, but a few are too small and a few are noticeably larger as to change the amount of 'plunge' into extreme values.

    Anyway, I have a suggestion for parsing effectively below 1.0 cRatio: Reverse the roles! Find a particular mob that doesn't use any attack boosting or debuff abilities, work out it's attack and base damage, and then vary the player's defense to produce useful data. Throw on some -Evasion (stumbling sandals, spelunker's hat), some regen junk, and walk away for an hour or two.

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

    I was actually asking about the graph you labelled "Comparison with adjusted 1H data:"; is that the same data, and you're just using the limits?

    Still, am seeing an obvious effect here that doesn't match up. Since all your adjustments are fixed linear subtractions, the entirety of the slope calculation comes from the 10/9 fraction. As such, the minimum pDiff observed should fall on such a slope, but it doesn't.

    From this image from my earlier post:



    you can see the slope of the minimum pDif is 1.15, not 1.11. We can also see that it would be impossible to fit the data to a 1.11 curve; the L value (combination of all the subtractions you do) cannot be below 688/1024 (actually, with better refinements it can't be below 712/1024). 712/1024 offset requires a 131/1024 slope, significantly higher than the 114/1024 slope of 10/9, and even with an L of 688/1024, the multiplier needs to be around 117/1024.


    Tried doing a fit over the non-crit values.

    For the minimum damage results: Only about 2/3 of the values ended up being 'valid' using your equation, even after adjustments (not counting the 1.0 minimums).

    For the maximum damage results: Only 5 out of 36 of the values fit if 1.05 multiplier was left in; none fit if it was factored out. Was generally nowhere close to matching. There was a fair bit more noise in the data, but there was enough that at least some should have matched if it was a reasonable estimation.

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

    Quote Originally Posted by Raelia
    [snark]Gee, sounds like cRatio+0.40 before Secondary to me. Don't make me feel like you all took my ball and went home guys...[/snark]
    Yours is a fixed addtion; mine is the cap on a multiplier. Very different effects once you start dropping cRatio (as you somewhat allude to in your next paragraph).

    Also, your estimated value is 0.40. Mine is 400/1024, which is more like 0.39. Other than that minor discrepency, I thought we'd already more or less agreed on that max value in the other thread.

    And I'm posting more here because this thread is more for my model, and I've been trying to keep it updated with my own work on the issue.

    Quote Originally Posted by Raelia
    They can certainly be piecewise, because Secondary will 'scrub' the discontinuity anyway (to say: no holes unfilled).
    Interesting that you should put it like that, as there have been mild indications of some sort of "holes" in the data, where the frequency of certain damage values are significantly lower than surrounding values. I've always set it aside as random noise (which is most likely the case) since I had nothing to even begin to base an explanation on, but it's conceivable that there's something else in there.

    Quote Originally Posted by Raelia
    If you try to make the RAE values not piecewise you just screw up the slope over half of each range.
    Only if you assume that the RAE must be a constant value.

    Quote Originally Posted by Raelia
    I think part of your problem with those particular graphs is your parse sizes:
    Depending on the limits being considered, that's a viable concern. Difficult to judge the extent of the errors. I'm inclined to think that 2500 samples per mob-level (for either crit or non-crit) should be sufficient for all but the most extreme of low probabilities. That would give a better than 90% chance of hitting a value that has a 0.1% probability of happening. [Alt: Assuming the reversal suggestion works, 5000 samples would give better than 90% chance of hitting a value that has a 0.01% probability of happening.]

    Quote Originally Posted by Raelia
    Notice the shorter parse at 1.688 causing an apparent 'dip' in maximum, and the shorter parse at 1.762 as well. Reconsidering these values presents to me two distinct sets above and below 1.75
    I think you posted just the thumbnail image, rather than set it up as a link to the original image. Can fix?

    Quote Originally Posted by Raelia
    Reverse the roles! Find a particular mob that doesn't use any attack boosting or debuff abilities, work out it's attack and base damage, and then vary the player's defense to produce useful data.
    That.. is a very interesting idea. Assuming mobs' equations are the same as players', aside from the fact that their pDif can go a lot higher than ours. However isn't there also a hard-coded minimum pDif for mobs? Like 0.5 or 1.0 or something? It being one of the reasons that pld defense gets very useless so quickly..

    Still, it should be fine for the 1.0 to 2.0 range, at the very least, and far easier to get large samples that way.

    Would suggest finding exact base damage for 2 or 3 EM mobs that could be used (eg: crabs or fish in Aby-Grauberg, etc). I -think- we can get (mostly) exact attack based on mob family, etc, but we may need to pin it down as an estimate based on when min damage goes above 1.0 pDif. Estimate it would take about 3 hours to get a 2500-hit sample, or 6 hours for a 5000-hit sample.

  17. #37
    xXNyteFyreXx420Sharingan
    Join Date
    May 2009
    Posts
    3,710
    BG Level
    7
    FFXI Server
    Fenrir

    edit: nvm, wasn't thinking through all the extra reductions involved. Will look into potential mob pDIFmin tomorrow.

  18. #38
    BG Content
    Join Date
    Jul 2007
    Posts
    21,105
    BG Level
    10
    FFXI Server
    Lakshmi
    Blog Entries
    1

    The "Comparison with adjusted 1H data:" is Masamune's data. He had one fewer fSTR against level 65 Colibri, so it looks bumpy unless you take that out. The second time I posted it I also included his corrected 2H samples. I divided out the randomizer (all max values/1.05) in all the graphs I've posted so far, because people don't seem to debate it as much anymore.

    Also, I wasn't proposing my model as the correct coefficients, I was just showing how the shape we were looking for could be fit with a pretty simple format. I picked the coefficients because they were close and used in the ranged pDIF equation.

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

    Quote Originally Posted by Motenten View Post
    That.. is a very interesting idea. Assuming mobs' equations are the same as players', aside from the fact that their pDif can go a lot higher than ours. However isn't there also a hard-coded minimum pDif for mobs? Like 0.5 or 1.0 or something? It being one of the reasons that pld defense gets very useless so quickly..

    Still, it should be fine for the 1.0 to 2.0 range, at the very least, and far easier to get large samples that way.

    Would suggest finding exact base damage for 2 or 3 EM mobs that could be used (eg: crabs or fish in Aby-Grauberg, etc). I -think- we can get (mostly) exact attack based on mob family, etc, but we may need to pin it down as an estimate based on when min damage goes above 1.0 pDif. Estimate it would take about 3 hours to get a 2500-hit sample, or 6 hours for a 5000-hit sample.
    Or maybe they have the same function as players giving them a spike at 1.0, which was interpreted as a 'min pDif', and if they do have that same spike it's a crazy easy method to determine their base damage then.

    Anyway. I might have uh... made RAE not piecewise. Like beautifully. This came about when trying to match where the 1.0 floor and ceiling start and end, as well as trying to 'catch up' to the average pDif I got at 2.25 suggesting a RAE greater than 0.4. I'm doing a grand rollup of my thread right now. The problem is I haven't actually seen any of this data that suggests the ceiling, I'm just working from Byr's graph and guessing a bit XD. If I had hard numbers I could produce hard numbers...

  20. #40
    CoP Dynamis
    Join Date
    Jul 2007
    Posts
    281
    BG Level
    4

    I ran the numbers in this post against my previously proposed theory, and it predicts the values for which there are averages within 1 point of damage. Would still need to check properly against distribution, but I won't have the tools or parses available for a while, unfortunately. Still, it seems to be fairly close to 'good enough' if you want an average.