# Thread: Understanding diminishing returns - A closer look ( HOW DOES IT WORK)

1. It can give you a ballpark.

If Y = 0.75x, then x=Y/0.75

So to get 1% parry after DR, you need slightly over 1.33% parry (before DR).

Multiply that by the conversion rating and you get 1.33333*176.7189 = 235.6 or about 236 rating. It will probably be slightly higher than that given that the 75% is an instantaneous point.

I think I had a "delta" rating equation at one point, I'll see if I can dig that up in my notes.

2. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
I looked at a delta-formula, but there is no clear cut way to define dx/dx' from the original formula without using advanced math stuff.

However, if you prefer the rating-way, here's my shot at it:
1/x' = 1/C + k/x with x = rating / A (A = 176.7189 for all plate tanks)
You are looking to know what the rating required is (defined as dr, with rating you have as r) at x' + 1%, so:
[MATH]
1/x' = 1/C + Ak/r => x' = (rC) / (r + AkC)
1/(x' + 1%) = 1/C + Ak/(r+dr)
x' + 1% = [C*(r+dr)] / [(r+dr) + AkC]
adding in the earlier found x'
(rC) / (r + AkC) + 1 = [C*(r+dr)] / [(r+dr) + AkC]
(rC)*[(r+dr) + AkC] + [(r+dr) + AkC]*(r + AkC) = [C*(r+dr)]*(r + AkC)
rēC + rC*dr + AkrCē + (rē + 2* AkrC + r*dr + AkC * dr + AēkēCē) = rēC + rC*dr + AkrCē + AkCē*dr
worked out everything & putting all dr on one side:
rēC + AkrCē + (rē + 2* AkrC + AēkēCē) - rēC - AkrCē = [rC + AkCē - rC - (r + AkC)*dr
(rē + 2* AkrC + AēkēCē) = [AkCē - (r + AkC)]*dr
dr = (r + AkC)ē / [AkCē - (r + AkC)]
dr = (r + AkC)ē / [AkC(C-1) - r]
dr = (r + 11088)ē / (716633 - r)
[/MATH]
Could use some extra eyes checking the numbers, just in case I made a mistake somewhere
I did, but it's fixed now, thanks Booi & jere!

Just double-checked with Maple, Rating need for 1% avoidance =
Code:
``` (R + 11088)ē
-------------
716633 - R```
with R the rating you currently have. (This includes the DR from rating you have yet to gain).
Also, to find the rating for any n% avoidance gain:
Code:
```       (R + 11088)ē
--------------------------
11088(65.63144/N - 1) - R```
Here are some numbers for the 1% calculation:
Rating -> rating required for next 1%
1000 -> 204.2
1100 -> 207.6
1200 -> 211.1
1300 -> 214.5
1400 -> 218.0
1500 -> 221.6
1600 -> 225.1
1700 -> 228.7
1800 -> 232.4
1900 -> 236.0
2000 -> 239.7
2100 -> 243.4
2200 -> 247.1
2300 -> 250.9
2400 -> 254.7
2500 -> 258.5
2600 -> 262.4
2700 -> 266.3
2800 -> 270.2
2900 -> 274.1
3000 -> 278.1
At 1481 rating, you are at 80% efficiency or you need to add 25% more rating to make up for DR.
At 1889 rating, you are at 75% efficiency or you need 33.33% more rating.
At 2341 rating, you are at 70% efficiency or you need 42.87% more rating.
At 2669 rating, you are at 66.67% efficiency or you need 50% more rating.

Note, however, that while the absolute numbers decrease, the relative damage reduction makes up for most of it.
At the same 2669 rating and completely no other avoidance, the 265 rating required for 1% extra avoidance still grants >0.76% of the damage reduction it would grant non-DR.
With a 4.4% miss chance and ratings equally divided between Dodge and Parry (for a total of 5338 ratings), you get 88.23% of the reduction it would give at 0 ratings... excluding Block.
So the DR formula provides roughly the same damage reduction per rating, regardless of current raiding tier (assuming you divide them among dodge & parry).
Last edited by Airowird; 05-05-2011 at 12:56 PM. Reason: Fixed & Cleaned up math a bit

3. This just makes my head hurt.

4. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
Sorry, was at school and was too busy sleeping through class to actually format it :P

Edit: I'm abusing my newly gained blackboard to find any errors now, will let you know if/when I do

5. Established Registrant
Join Date
Aug 2010
Posts
209
Maybe you can help me out wartotem.

Basically I took d/dr of x'
which gave me avoidance / avoidance rating at a given avoidance rating.
Simply inverting provides me with avoidance rating / avoidance as follows:

1000 -> 200.7906
1100 -> 204.1265
1200 -> 207.4899
1300 -> 210.8807
1400 -> 214.2991
1500 -> 217.7449
1600 -> 221.2182
1700 -> 224.7190
1800 -> 228.2473
1900 -> 231.8030
2000 -> 235.3863
2100 -> 238.9970
2200 -> 242.6352
2300 -> 246.3009
2400 -> 249.9941
2500 -> 253.7147

The issue is my ratings are always low balling yours.
I can tell that mine are incorrect because @0 rating, it suggests that I only need 168.943 rating to get the the first percentage point (not semantically true, but you get the point).

Actually, subbing 1000 as r for you, comes up as: 200.1 not the 204.2 you have listed. Is there something muddled in your loop/spreadsheet?
Yours also behaves oddly on the low end of rating values.

EDIT: actually i can't get your formula to throw out any of the values from your result. Either I'm misunderstanding how you intend for it to be used... hopefully you have a ctrl + v error.

EDIT: The issue seems to stem from the fact that I catch 1.0296% avoidance from the first 176.7189 avoidance rating in my original formula:
x' = r * C / (r + 176.7189 * k * C)

where:
C = 65.631440
k = 0.9560

It's weird that despite diminishing returns, it still yields more avoidance than the avoidance per rating stat - which is defined as: before diminishing returns.
Last edited by Booi; 05-03-2011 at 03:46 PM. Reason: took out some rubbish

6. Established Registrant
Join Date
Aug 2010
Posts
209
Originally Posted by WarTotem
multiply both sides with 100 (to remove 1% issues):
Is this step correct?

The original formula gives avoidance in whole numbers, not as percentages.

7. Booi,

Taking the derivative gives you the instantaneous value. Like I was saying earlier, the derivative is taken over infinitesimally small steps (much smaller than 1%).

Inverting those points assumes that the DR rate at X% parry is the same value of DR rate at (X+1)% parry, which really isn't technically the case. The DR rate at X+1 is worse than at X, though only slightly, so you will see that the actual number will end up being lightly higher than what you calculated. I was trying to allude to this in my previous post.

8. Established Registrant
Join Date
Aug 2010
Posts
209
Originally Posted by jere
Booi,

Taking the derivative gives you the instantaneous value. Like I was saying earlier, the derivative is taken over infinitesimally small steps (much smaller than 1%).

Inverting those points assumes that the DR rate at X% parry is the same value of DR rate at (X+1)% parry, which really isn't technically the case. The DR rate at X+1 is worse than at X, though only slightly, so you will see that the actual number will end up being lightly higher than what you calculated. I was trying to allude to this in my previous post.
Right, and I say this explicitly in my post. I guess what you are saying is that Wartotem's method has no such draw backs?

Actually, it looks like I edited out the reference to instantaneous - still it is alluded to with the bracket rubbish about semantics.

EDIT:
so forget my rubbish, i still can't get wartotem's to work out.
Last edited by Booi; 05-03-2011 at 04:01 PM.

9. Wartotem,

I ran the equations as well using your steps and came up with the same equation. However, as Booi suggested, you don't need to multiply by sides 100%, since multiplying by 1% is the same as multiplying by 1 (DR equation is in terms of percent). What you did was valid, but not really necessary.

I did your steps slightly different. I left X as X rather than making it r/conversion. I did that at the very end when I solved for delta_x. I didn't run all the values you listed, but the ones I tried came up with similar values.

Originally Posted by Booi
The issue is my ratings are always low balling yours.
I can tell that mine are incorrect because @0 rating, it suggests that I only need 168.943 rating to get the the first percentage point (not semantically true, but you get the point).
Just wanted to make a comment on this. Actually, that doesn't suggest you are incorrect. The DR equation at low input values will actually give you more avoidance than you put in, rather than less. In game, they handle this by capping the DR equation output so it can't give more than is put in.. Essentially they use a piecewise function.

If it helps, your numbers do end up the same as mine when I run them using DR efficiency values and inverting them. Those that you listed are correct and should be lower than WarTotems in every case, because his equation uses the exact values at each point and calculates the difference while the other method assumes the same DR efficiency for both points on the line.
Last edited by jere; 05-03-2011 at 04:35 PM.

10. Established Registrant
Join Date
Aug 2010
Posts
209
Bouncing through wartotem's method I find:

Code:
```a = 176.7189
C = 65.631440
k = 0.9560

-(r + akC)^2
d =  ----------------
(r + ak(C-C^2)

or

(r + 11088)^2
d =   ---------------
(716633 - r)```
I could be wrong.
I've been wrong a lot lately.

I might have run my delta backwards, I'll have to check after raid. anyways:
1000 - 204.1822
1100 - 207.6035
1200 - 211.0537
1300 - 214.5327
1400 - 218.0408
1500 - 221.5777
1600 - 225.1437
1700 - 228.7386
1800 - 232.3624
1900 - 236.0153
2000 - 239.6972
2100 - 243.4081
2200 - 247.1481
2300 - 250.9171
2400 - 254.7151
2500 - 258.5422
Last edited by Booi; 05-04-2011 at 07:31 AM.

11. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
I took the rating needed for the next 1%, rather than the derivate (that would be way easier :P).
Also, yes, the DR formula gives you more avoidance than pre-DR numbers at 0 rating (up to 10% extra or so, I believe)
And the 100% thing was because I didn't want to do it in the fraction later on, was easier to do it there in the format I posted it in.

PS: @Booi: It's [r - ak(C - 100Cē)] to be correct, because (r + ak(C-Cē)) would result in a positive value, making d negative.

12. Established Registrant
Join Date
Aug 2010
Posts
209
and this formula is what then?

Code:
``` Rē + 221.76R + 12294
----------------------
7166.33 - R```
I'll go over my signs tomorrow. I'm sure I just mixed something up somewhere along the line.

13. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
gah, made a typo myself, it's [r + ak(C - 100Cē)] ofcourse (It's the 100Cē I was pointing out).
It's because the 1/C term in the DR formula is never in %, so using avoidance in percentiles (0-100 range) rather than it's mathematical 'real' value requires you to use a different C (100 times bigger, so the relative values remain the same).

14. Originally Posted by WarTotem
It's because the 1/C term in the DR formula is never in %, so using avoidance in percentiles (0-100 range) rather than it's mathematical 'real' value requires you to use a different C (100 times bigger, so the relative values remain the same).

That statement confuses me. C is already in percentage form ( 65.something ). It's not in decimal form (of course neither is the input percentage). Either way, you don't need to multiply the equation by 100 at all. Multiplying the DR equation by 1% is exactly the same as multiplying by 1 since the inputs are all in percentage from the start, so the 1% just goes away.
Last edited by jere; 05-04-2011 at 04:12 AM.

15. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
Well some people use 0.65etc and some use 65.something, hence I was making sure Booi was using the right one.
Regardless, it should be 7166.rounding, and not a number 100 times larger, which would result in totally skewed results.

16. Established Registrant
Join Date
Aug 2010
Posts
209
I'm not really sure how it "skews" my result - my results are posted and they look identical to yours?

As for the negative, did you catch the negative in the numerator of my equation? My formula is resulting positive values. I double checked (not triple checked) my algebra, and it looks fine on my end. The presentation was just the result of too much control's theory.

Editing my above post to include:
C = 65.631440
k = 0.9560
a = 176.7189

I can rearrange it if it makes you happier. I guess it looks prettier this way, and it maintains the form of the the substituted version.

Code:
```      (r + akC)^2
d =  ----------------
(ak(C^2 - C) - r)

where:
C = 65.631440
k = 0.9560
a = 176.7189

which again, yields:

(r + 11088)^2
d =   ---------------
(716633 - r)```
EDIT:
Wartotem's post for the General Form
Last edited by Booi; 05-05-2011 at 01:38 PM.

17. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
Hmmm ... found my error: A = 17671.89 if you use the mathematical values (namely ~17672 rating = 100% pre-DR avoidance)
And that would end up with the same values you found. Thanks for the PoV, would've kept spreading mistakes without ya

18. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
There, updated my post here with about all the math/data on it, as well as a formula for n% avoidance
Should provide you with an easy access to finding out your rating needs for unhittability once you come close
Last edited by Airowird; 05-06-2011 at 02:10 AM.

19. Established Registrant
Join Date
Aug 2010
Posts
209
Wartotem, you're actually linking to my thread, not your own. I did edit my last post to link to yours as well, since yours has the generalized version.

And np on the pov, thanks for putting up with my ramblings along the way.

20. Son of Megatron
Join Date
Jun 2009
Location
Belgium
Posts
2,336
Haha, was too fast linking, fixed it now
It was as much rambling as I did I guess, remember that "No problem can be solved within the mindset that created it."