Item Search
     
BG-Wiki Search
+ Reply to Thread
Page 9 of 9 FirstFirst ... 7 8 9
Results 161 to 172 of 172

Thread: pDif and damage     submit to reddit submit to twitter

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

    Yes, you got the right constants (though I've played around with +/-1 for the 152 and 755 values). Everything in your table is correct, though I usually express it in calculation limits rather than input limits.

    No, I haven't made more progress on this. pchan had some interesting ideas in his posts in the official forum, but they were incomplete, insufficient for a full model. I'll see if I can get some time tonight to poke at the numbers again.

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

    Fraction of 'spike' hits compared to total remaining hits (rounded to two significant digits). 'Spike' hits excludes average non-trailing count on the supposition that those hits would have occurred normally anyway.


    Format:
    AttWeaponLvlColibri (ie: 254DG65 == 254 att, Daea Gratia, lvl 65 lesser colibri) (wRatio)

    254DG65 (1.0539): 900 normal, 400 spike (30.77%)
    254DG64 (1.0809): 650 normal, 350 spike (35.00%)
    254DG63 (1.0996): 640 normal, 320 spike (33.33%)
    284DG65 (1.1784): 720 normal, 360 spike (33.33%)
    284DG64 (1.2085): 570 normal, 330 spike (36.67%)
    284DG63 (1.2294): 450 normal, 220 spike (32.84%)
    301DG65 (1.2490): 570 normal, 250 spike (30.49%)
    301DG64 (1.2809): 1220 normal, 460 spike (27.38%)
    301DG63 (1.3030): 1120 normal, 320 spike (22.22%)
    322DG65 (1.3361): 1220 normal, 300 spike (19.74%)
    322DG64 (1.3702): 1120 normal, 210 spike (15.79%)
    322DG63 (1.3939): 1080 normal, 150 spike (12.20%)



    Note that the wRatios of the above data are gradually increasing, down the list, to where min damage is right on 1.0 at the end. 301DG65 is the last one that has a min below 1.0, and it's only barely below (3 counts).

    It appears that when min/max are above and below 1.0, the spike comprises approximately 1/3 (33.33%) of all hits. As wRatio increases, and min gets capped, the potency of the spike decreases until it fades entirely once min pDif rises above 1.0.

    Graph of the ratio of spike hits vs wRatio:


    Pink line is for the downtrending portion of the graph; it's clearly linear. The trendline intercepts the X axis at a wRatio of about 1.49.


    Working out a formula for it...

    Want to know how far away from 1.0 wRatio is. We know that min pDif is 1.0 at 1.5 wRatio, and max pDif is 1.0 at 0.5 wRatio, so we can consider it a mirror effect.
    Abs(wRatio - 1)

    The maximum value this can reach is 2.0 (wRatio of 3.0). We see something pretty close to that in the trendline formula in the graph, where it hits 1.9. So, will use 2.0

    2.0 - Abs(wRatio - 1)

    The trendline slope is -1.28, or 1.28 if inverted with the Abs() formula. Looking over valid slope ranges, 1.3 seems to be a reasonably solid choice.

    1.3 * (2.0 - Abs(wRatio - 1))

    An offset can then be subtracted to yield a fractional value that pretty much matches up with the observed values. 1.96 appears to be the best choice (alternatively, anywhere from 500/256 to 502/256).

    1.3 * (2.0 - Abs(wRatio - 1)) - 1.96

    And then this is capped between 0 and 33% (0.333). This becomes our U variable.

    U = Max(0, Min(0.333, 1.3 * (2.0 - Abs(wRatio - 1)) - 1.96))


    Code:
    If Rand() < U then
      pDif = 1.0
    Else
      pDif = Gen(min, max)

    Put together a spreadsheet to run these numbers, and figure out net average pDif. (See: https://docs.google.com/open?id=0B0A...0drSHpZM3RLSFE)

    Compared with observed averages from the test data (weapon damage of 43 with fStr):

    Code:
    wRatio   Obs. Avg   Calc Avg.       Diff
    1.0539     44.978    45.8338     -0.8558
    1.0809     47.036    46.6861      0.3499
    1.0996     47.902    47.2763      0.6257
    1.1784     49.064    49.7877     -0.7237
    1.2085     51.263    50.8484      0.4146
    1.2294     52.445    51.5849      0.8601
    1.249      51.973    52.3833     -0.4103
    1.2809     54.019    53.5727      0.4463
    1.303      55.097    54.4075      0.6895
    1.3361     55.182    55.7232     -0.5412
    1.3702     57.261    57.1609      0.1001
    1.3939     58.546    58.2091      0.3369
                            
                       Avg Diff:      0.1077
    As you can see, on average it comes very close to observed results.

    Overall, it looks like a pretty reasonable rough model.

  3. #163

    Quote Originally Posted by Motenten View Post
    Yes, you got the right constants (though I've played around with +/-1 for the 152 and 755 values). Everything in your table is correct, though I usually express it in calculation limits rather than input limits.

    No, I haven't made more progress on this. pchan had some interesting ideas in his posts in the official forum, but they were incomplete, insufficient for a full model. I'll see if I can get some time tonight to poke at the numbers again.
    My model is complete and modelize everything accurately.... I'll refer you to the wiki page on pdif.
    I'll summerize it here.

    given a cratio r, the game computes a and b, the min and max pdif (not the ingame ones). It rolls a uniform variable on [a,b]. There is a bernouilli variable whose parmeter is only dependent on r that makes your damage equal to either the uniform variable or 1 (which rolls your weapons damage, hence the spike), then everything is multiplied by the "randomizer" and the usual stuff (damage..). In other words the game returns

    ( 1*U+(1-U)*V)*W where

    V=uniform on [a,b], U=bernouilli of parameter p=5/6-(b-a), W=uniform on [1,1.05]

    More precisely

    a(r)=1+(10/9)x(p(max(r,0.5)-1.5)-n(max(r,0.5)-1.25))
    b(r)=1+(10/9)x(p(r-0.75)-n(r-0.5))

    are the formulas defining max and min pdif with p(x)=max(x,0) and n(x)=max(-x,0) which gives
    for b
    Code:
    Ratio Range 'r' 	Function Value 	Observed maximum
    0 ≤ r < 0.5 	b= 1+(10/9)x(r-0.5) 	0.467+1.167xr
    0.5 ≤ r ≤ 3/4 	b= 1 	1.05
    3/4 < r ≤ 2 	b = 1 +(10/9)x(r-3/4) 	b=0.175+1.167xr
    for a
    Code:
    Ratio Range 	Function Value
    r ≤ 0.5 	a = 1/6
    0.5 ≤ r < 1.25 	a= 1 + (10/9)x(r-1.25)
    1.25 ≤ r ≤ 1.5 	a = 1
    1.5 < r ≤ 2 	a= 1 + (10/9)x(r-1.5)
    a is always the the observed value while b must be multiplied by 1.05.

    Given those values of a and b, you can define the value of the paramater p of the bernouilli variable
    p=5/6 - (b'-a')
    generally b'=b and a'=a except for r<0.5 where is set to 0.

    From a programing point of view, this is easily done ;
    Code:
    if rand[0..1] < p then return rand[1,1.05]
                          else  return rand[a,b]*rand(1,1.05)
    end if;
    This model gives accurate average values
    Code:
    r ≤ 0.5 	m = .2182870370+.3796296294*r+.7592592591*r^2
    0.5 ≤ r < 0.75 	m=-.0822530866+1.676697531*r-.6327160494*r^2
    0.75 ≤ r ≤ 1.25 	m = .2024691355+.8225308644*r
    1.25 < r ≤ 1.5 	m=1.309722223-.8541666666*r+.6327160494*r^2
    1.5 < r ≤ 2 	m=-.2562500002+1.138888889*r
    ( 1 handed weapons only)


    PS : even though I did not test it, for crits it's probably the same except a is replaced by a+1 and b by b+1, in which case a crit has no spike at pdif=1 and ends up being

    min(1+V,3)*W with the above notations (V uniform on [a,b], W uniform on [1,1.05]).

    In a program it simply reads
    Code:
    min(1+rand[a,b],3)*rand(1,1.05)

  4. #164

    Quote Originally Posted by Motenten View Post
    U = Max(0, Min(0.333, 1.3 * (2.0 - Abs(wRatio - 1)) - 1.96))
    Code:
    If Rand() < U then
      pDif = 1.0
    Else
      pDif = Gen(min, max)
    Well that basically the same as my model except your function U is what I call p, it's the parameter of the Bernouilli. What's weird with your model is that the lines break at 1.492 and 0.507 (probably makes sense in 1024 system ? Otherwise it's 0.5 and 1.5..). The huge difference is that I don't cap it at 0.33 (for you it breaks at r=1.236 and 0.763). I cap it at 5/18=0.2777... This because I want your "U" to be directly a function of the difference max pdif / min pdif. In other words max pdif and min pdif have the same slopes when they both increase ( before the modifier). Based on this I found out that fractions of 9 and 18 were matching for max,min and your "U".

    Also your 0.33 come kinda out of nowhere. The spike frequency (your definition) is not exactly p.

  5. #165

    Quote Originally Posted by Motenten View Post
    Compared with observed averages from the test data (weapon damage of 43 with fStr):

    Code:
    wRatio   Obs. Avg   Calc Avg.       Diff
    1.0539     44.978    45.8338     -0.8558
    1.0809     47.036    46.6861      0.3499
    1.0996     47.902    47.2763      0.6257
    1.1784     49.064    49.7877     -0.7237
    1.2085     51.263    50.8484      0.4146
    1.2294     52.445    51.5849      0.8601
    1.249      51.973    52.3833     -0.4103
    1.2809     54.019    53.5727      0.4463
    1.303      55.097    54.4075      0.6895
    1.3361     55.182    55.7232     -0.5412
    1.3702     57.261    57.1609      0.1001
    1.3939     58.546    58.2091      0.3369
                            
                       Avg Diff:      0.1077

    As you can see, on average it comes very close to observed results.

    With our model, the expectation is easily calculable (the full model, aka the one with 1.05 randomizer) : with your notations
    E(model)=1.025*(U+(1-U)*(min+max)/2)=1.025*(1+(1-u)*( (min+max)/2 -1 ) )
    Using a regression on your observed data I find
    36.9709943398719360*wratio+6.51618448985013199
    For r between 0.75 and 1.25, my model gives me that the common slopes of min & max is 10/9 therefore

    1.025*(10/9)*(1-u)*43=36.9709943398719360
    ==> u=0.245

    not 0.333

    (It could be due to you taking another slope value)

  6. #166

    I went back to the crit pdif formula, and my model gives that b=2 for r=1.65 so the choice of fraction of ??/9 seems good and consalidate its validity. Anyway assuming crit are generated through

    min(rand[a+1..b+1],3)*rand[1..1.05] with a and b being what I said in post 163 I am getting the following formulas for crit pdif average
    Code:
    r ≤ 0.5 	mc = 1.338194445+.5694444444*r
    0.5 ≤ r < 0.75 	mc=1.338194444+.5694444444*r
    0.75 ≤ r ≤ 1.25 	mc = .9111111111+1.138888889*r
    1.25 < r ≤ 1.5 	mc=1.622916667+.5694444444*r
    1.5 < r ≤ 1.65 	mc=.7687499999+1.138888889*r
    1.65 < r ≤ 2 	mc=-1.298333333+3.644444444*r-.7592592593*r^2
    (averages to 2.95 @ capped ratio or 46% more damage than a non crit)

    PS : again, note that the model for crit has not been tested.

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

    Rise from the grave!

    Back to pDif stuff. One of the things I never really finished was looking at the damage distribution with the spikes (I only looked at about a third of the 1H data sets). So today I spent some time working through Masamune's old data and working out distribution patterns. Went through the following steps:

    1) Figure out the average hit frequency for non-spike, non-tail (hits at either end of the damage spectrum that get smeared by the 1.05 multiplier) hits. This average will be subtracted from every damage value in the spike range in order to separate out 'normal' hits in that range with spike hits.

    2) Get the damage value corresponding to the cRatio of each test. Use this to distinguish between 'lower' and 'upper' damage ranges. The distinction is necessarily approximated, but should be close enough to get some patterns out of it.

    3) Get the percentage of all hits that fall under one of: below cRatio; at or above cRatio; or spike hits.

    Note that I refined the method a small bit from the original to fix a couple potential errors.


    Here's the test data percentages (36 test sets rather than the 12 I used in the post above):

    Spoiler: show

    Code:
              cRatio   perc. Lower  perc. Upper    perc. Spike    avg pDif
    218BJ73   0.7730        39.45%       35.12%         25.43%      0.8132  
    218BJ72   0.7870        35.94%       30.29%         33.77%      0.8459  
    218BJ71   0.8015        34.94%       29.75%         35.31%      0.8553  
    218BJ65   0.9046        33.15%       31.93%         34.92%      0.9373  
    218BJ64   0.9277        31.79%       33.32%         34.89%      0.9583  
    218BJ63   0.9437        30.99%       32.98%         36.03%      0.9709  
    254DG65   1.0539        32.13%       37.18%         30.69%      1.0460  
    254DG64   1.0809        30.87%       34.27%         34.86%      1.0690  
    254DG63   1.0996        27.71%       39.09%         33.20%      1.0887  
    284DG65   1.1784        31.05%       34.96%         33.99%      1.1410  
    284DG64   1.2085        25.25%       38.18%         36.57%      1.1651  
    284DG63   1.2294        28.59%       39.16%         32.25%      1.1919  
    301DG65   1.2490        29.55%       39.39%         31.06%      1.2087  
    301DG64   1.2809        34.72%       38.04%         27.24%      1.2277  
    301DG63   1.3030        35.06%       42.50%         22.44%      1.2522  
    322DG65   1.3361        36.62%       43.59%         19.79%      1.2833  
    322DG64   1.3702        42.88%       41.05%         16.07%      1.3014  
    322DG63   1.3939        45.70%       42.03%         12.27%      1.3306  
    343TK65   1.4232        51.20%       37.76%         11.05%      1.3320  
    343TK64   1.4596        50.97%       42.25%          6.78%      1.3774  
    343TK63   1.4848        58.10%       39.53%          2.37%      1.4119  
    370WA65   1.5353        50.42%       49.58%             0%      1.5085  
    370WA64   1.5745        54.05%       45.95%             0%      1.5287  
    370WA63   1.6017        54.44%       45.56%             0%      1.5594  
    390WA65   1.6183        53.31%       46.69%             0%      1.5852  
    390WA64   1.6596        54.44%       45.56%             0%      1.6282  
    390WA63   1.6883        51.09%       48.91%             0%      1.6740  
    414WA65   1.7178        52.22%       47.78%             0%      1.7010  
    414WA64   1.7617        50.60%       49.40%             0%      1.7491  
    414WA63   1.7922        49.53%       50.47%             0%      1.7857  
    433WA65   1.7967        49.66%       50.34%             0%      1.7899  
    433WA64   1.8426        48.30%       51.70%             0%      1.8448  
    433WA63   1.8745        49.94%       50.06%             0%      1.8748  
    470WA65   1.9502        44.16%       55.84%             0%      1.9715  
    470WA64   2.0000        47.63%       52.37%             0%      2.0086  
    470WA63   2.0346        46.23%       53.77%             0%      2.0363




    Then plot this all out. This it what it looks like:




    Note that the three data points at either end of the graph come from test sets with notably lower sample sizes than the rest. Most are in the 1500-1700 sample range, while the end points are in the 500-800 range. As such, the end points are a small bit less reliable than most the middle points.

    Overall, though, it's pretty easy to see the shape of things, and the variation in distribution between above wRatio and below wRatio helps show how things actually behave.

    Now next, I pull predicted min/max values from my pDif model and compare what sort of expected percent distribution would be above or below the cRatio damage point. Graph this on top of the test data and we get:



    I kept the colors similar; the blue lines are the percent below cRatio, and the red lines are the percent above cRatio. Note that the pattern overall looks very similar. Points to note: crossover of percentages at about 0.95 cRatio, and at about 1.4 cRatio. My model doesn't predict the third crossover at the 1.85 area, but those are higher uncertainty points, and my model is showing that the lines should be converging again, which they do. Also, the relatively wide gaps at around 1.25 and 1.5 regions are predicted.

    Now, this aspect of my model does not account for the spike data, so everything below 1.5 cRatio will be offset relative to the test data.

    The test data shows a linear growth of the spike frequency from 1.5 down to about 1.25, where the overall distribution is about 1/3 for each portion of the data. It's difficult to pin down a proper percentage for the maximum spike distribution because of the fluctuations, but overall it seems to be reasonable to set it at right around the average of the above/below percentages, making it a flat 33%.

    Another thing that this shows is that if we take a flat distribution between the min and max limits (ignoring above/below cRatio), the above/below cRatio balance arises naturally just because of the range that's being used.

    So, we then get the following simple algorithm for determining final pDif:

    1) From wRatio, calculate the odds of a 'spike' hit being generated. A spike is set at 1.0 cRatio.
    2) Otherwise, from wRatio, determine min and max valid pDif. Generate a random value evenly distributed between the calculated min and max.
    3) After that, apply the 1.05 spread multiplier.


    Now, to calculate the spike percent, I'm playing with some results off the trendline that you can see in the above image. I'm also assuming it works in reverse on the lower end of the wRatio curve, since it appears symmetric between 0.5 and 1.5 wRatio, and the spike disappears below 0.5 and above 1.5.

    Checking the trendline and trying a few things, the dropoff looks like it can pretty well be describe as:
    spike% = wRatio * -1.2 + 1.8

    Playing with the math a bit to make it easier overall, I can generate the spike effect for both halves of the graph with the following:

    sRatio = (0.5 - abs(wRatio - 1)) * 1.2
    -- This will be 0.6 at 1.0 wRatio, dropping to 0 at 0.5 or 1.5 wRatio, and going negative as it goes further out.

    if (sRatio < 0) then sRatio = 0
    if (sRatio > 33.3%) then sRatio = 33.3%
    -- Limit it to between 0 and 33.3%. Anything below 0.5 wRatio or above 1.5 wRatio will be negative, capped at 0, and thus not generate any spikes.


    Adding the spike percentage prediction to the graph (purple line), as well as the impact it would have on the above/below percentages, we end up with this graph:



    They match up remarkably well with the observed test values, including the shift at the low end of the graph. The upper end of he graph is still slightly worriesome. However there's actually an additional effect skewing things there.

    Basically, the 1.05 damage spread is going to weight things in favor of the upper percentages, since the top end of the lower percentages will tend to get pushed into the upper zone, but none of the upper zone values are moved to the lower zone.

    A quick estimate on the max wRatio set values, taking out the estimated spread values from the upper frequencies and giving it back to the lower half, puts the relative percentages at 51% lower, 49% upper, rather than 46% lower, 54% upper. That's closer to the predicted distributions of 53% lower, 47% upper.




    From that, we can calcuate average pDif:

    (spike% * 1.0 + (1 - spike%) * (((max - min) / 2) + min)) * 1.025

    This is basically the model that pchan proposed, but with more data to explain how it got there and hopefully a clearer formulation.



    After that, we can also factor in the lower and upper caps of 0 and 3.0.

    lowCap = 0.0 pDif
    highCap = 3.0 pDif

    lowCap% and highCap% are calculated from uncapped min and max values (what portion of the flat distribution goes beyond the cap). capMin and capMax are after the caps are applied.

    avgPDIF = spike% * 1.0 + lowCap% * 0.0 + highCap% * 3.0 + (1 - spike% - lowCap% - highCap%) * (((capMax - capMin) / 2) + capMin)
    avgPDIF = avgPDIF * 1.025


    Along with one other difference I determined needed adjusting (minimum max offset for a portion of the slope), I can then use the predicted model vs the test data's calculated average pDif values, and see how closely it matches:

    Spoiler: show

    Code:
              cRatio   perc. Lower  perc. Upper    perc. Spike    avg pDif        pred. pdif   percent diff    
    218BJ73   0.7730        39.45%       35.12%         25.43%      0.8132            0.8435         -0.28%
    218BJ72   0.7870        35.94%       30.29%         33.77%      0.8459            0.8553          1.11% 
    218BJ71   0.8015        34.94%       29.75%         35.31%      0.8553            0.8659          1.25% 
    218BJ65   0.9046        33.15%       31.93%         34.92%      0.9373            0.9416          0.46% 
    218BJ64   0.9277        31.79%       33.32%         34.89%      0.9583            0.9586          0.03% 
    218BJ63   0.9437        30.99%       32.98%         36.03%      0.9709            0.9703         -0.05%
    254DG65   1.0539        32.13%       37.18%         30.69%      1.0460            1.0559          0.94% 
    254DG64   1.0809        30.87%       34.27%         34.86%      1.0690            1.0779          0.83% 
    254DG63   1.0996        27.71%       39.09%         33.20%      1.0887            1.0932          0.42% 
    284DG65   1.1784        31.05%       34.96%         33.99%      1.1410            1.1579          1.48% 
    284DG64   1.2085        25.25%       38.18%         36.57%      1.1651            1.1825          1.50% 
    284DG63   1.2294        28.59%       39.16%         32.25%      1.1919            1.2019          0.84% 
    301DG65   1.2490        29.55%       39.39%         31.06%      1.2087            1.2248          1.34% 
    301DG64   1.2809        34.72%       38.04%         27.24%      1.2277            1.2520          1.98% 
    301DG63   1.3030        35.06%       42.50%         22.44%      1.2522            1.2711          1.51% 
    322DG65   1.3361        36.62%       43.59%         19.79%      1.2833            1.3009          1.37% 
    322DG64   1.3702        42.88%       41.05%         16.07%      1.3014            1.3334          2.46% 
    322DG63   1.3939        45.70%       42.03%         12.27%      1.3306            1.3571          1.99% 
    343TK65   1.4232        51.20%       37.76%         11.05%      1.3320            1.3875          4.17% 
    343TK64   1.4596        50.97%       42.25%          6.78%      1.3774            1.4270          3.61% 
    343TK63   1.4848        58.10%       39.53%          2.37%      1.4119            1.4558          3.11% 
    370WA65   1.5353        50.42%       49.58%             0%      1.5085            1.5063         -0.15%
    370WA64   1.5745        54.05%       45.95%             0%      1.5287            1.5494          1.35% 
    370WA63   1.6017        54.44%       45.56%             0%      1.5594            1.5794          1.29% 
    390WA65   1.6183        53.31%       46.69%             0%      1.5852            1.5976          0.79% 
    390WA64   1.6596        54.44%       45.56%             0%      1.6282            1.6431          0.92% 
    390WA63   1.6883        51.09%       48.91%             0%      1.6740            1.6748          0.05% 
    414WA65   1.7178        52.22%       47.78%             0%      1.7010            1.7073          0.37% 
    414WA64   1.7617        50.60%       49.40%             0%      1.7491            1.7556          0.37% 
    414WA63   1.7922        49.53%       50.47%             0%      1.7857            1.7892          0.20% 
    433WA65   1.7967        49.66%       50.34%             0%      1.7899            1.7941          0.24% 
    433WA64   1.8426        48.30%       51.70%             0%      1.8448            1.8446         -0.01%
    433WA63   1.8745        49.94%       50.06%             0%      1.8748            1.8797          0.27% 
    470WA65   1.9502        44.16%       55.84%             0%      1.9715            1.9631         -0.43%
    470WA64   2.0000        47.63%       52.37%             0%      2.0086            2.0180          0.47% 
    470WA63   2.0346        46.23%       53.77%             0%      2.0363            2.0561          0.97%


    And it turns out to be extremely close for most of the test data, generally within about 1%. It slightly over-predicts in the 1.35 to 1.45 wRatio range, overestimating by up to 4%, but the data sets it has the most trouble on (and the only ones over 3% off) are the Thief Knife tests, which have a piercing bonus effect, and that might mess with the average pDif value a bit.

    Also, the predicted formulas will tend to slightly overpredict relative to the averaged test data since the test data will be using floored values. As such, the slight bias towards higher predicted values than observed can be considered normal. I may reduce the average spread multiplier slightly to compensate for that effect (down to say 1.02 instead of 1.025) when implemented in the damage spreadsheets.

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

    Test for the mentioned formulation change:

    108 str vs lvl 99 bluffalo (EM) with warp cudgel, 0 fStr, final base damage: 15
    413 att vs 516 def = 0.8004 cRatio

    max pDif if minmum max offset is 0.25 is 1.05, max dmg of 15.75, and spread max of 15
    max pDif if minmum max offset is 0.30 is 1.1, max dmg of 16.5, and spread max of 16

    If 16 dmg is possible, it should show up about 4%-5% of the time. Given that rate, there's about a 99.9% chance (worst case, 3% rate) of seeing a 16 show up within 225 non-crit hits.

    With 298 hits, the maximum damage was 15.

    This implies that the max pDif has to be less than 1.07 (before damage spread), which means that the offset term cannot be 0.3. 0.3 implies the 1.0 max cap occurs starting at 0.7 cRatio. 0.25 would imply the 1.0 cap starts at 0.75, mirroring the forced 1.0 values above 1.0 cRatio (occurring between 1.25 and 1.50). The revised offset will set the max pDif at 1.0 for cRatios between 0.5 and 0.75.

    Data:
    Code:
      Melee
              7:   18
              8:   30
              9:   30
             10:   20
             11:   22
             12:   24
     ^       13:   19
             14:   19
    +        15:  116

  9. #169
    Smells like Onions
    Join Date
    Sep 2013
    Posts
    7
    BG Level
    0

    Has anyone checked whether the high tier mission BCs are giving level correction penalties, or that its simply inherent PDT-?

  10. #170
    Cerberus
    Join Date
    Feb 2010
    Posts
    410
    BG Level
    4
    FFXI Server
    Odin

    How does defense down work?
    For instance, Tojil has 1900 defense right? So angon with gloves (25%), frailty bolstered (26%), dia3 with 1 light shot (20%) would make for 71%.
    Does that make Tojil's total defense 551? or is calculated in another way?
    Could'nt find this info on bg wiki, i thought id ask the math guru's, i apologize if this infois common and widely know =/

  11. #171
    Relic Horn
    Join Date
    Sep 2011
    Posts
    3,304
    BG Level
    7
    FFXI Server
    Leviathan

    Not a math guru, but that's correct. The final defense is then plugged into the game's pDIF functions, which ultimately determine the range of your damage.

    For things like Tojil where level correction doesn't apply(which usually serves to further reduce our damage output), the goal is to "cap" the player_attack/monster_defense ratio at 2.25 for melee weapons and 3.0 for ranged weapons(assuming the Wiki is still accurate). Using your example, if Tojil's initial defense was reduced to 551, a melee player would need ~1240 attack to "cap" their attack


    Also, it's 4am, so I reserve the right to have mistyped something

  12. #172
    Yoshi P
    Join Date
    Aug 2006
    Posts
    5,141
    BG Level
    8
    FFXIV Character
    Dead Gye
    FFXIV Server
    Lamia
    FFXI Server
    Ragnarok

    I saw pDIF so I clicked this thread. Going off of memory that's a couple of years old here so feel free to correct me. Iirc critical hits added like 1.0 to pDIF (or was it cRatio? idk) and had a different cap than normal hits, but the difference in the cap was less than 1.0. So while there is a capped attack, there's a soft cap a bit earlier where increasing your attack past that point will no longer increase the damage of your critical hits, making it a less effective increase.

+ Reply to Thread
Page 9 of 9 FirstFirst ... 7 8 9