 |
01/13/11, 6:21 PM
|
#576
|
|
Suit Up
|
Originally Posted by Whitetooth
|
I'm seeing the new 2167.5*TL-158167.5 formula everywhere but I don't see it's expanded form, anyone know what it is?
Pre-Cata it was:
400 + 85*TL + 4.5*85*(TL-59) = 467.5*TL - 22167.5
and if you just straight extrapolate the values it could now be:
53960.5 + 394.36*TL + 4.5*394.36*(TL-59) = 2167.5*TL - 158167.5
or
45095.5 + 394.36*TL + 4.5*394.36*(TL-64) = 2167.5*TL - 158167.5
or something totally different
|
Come see the Rawr Project for all World of Warcraft Classes and Specs!
- Astrylian: Project Coordinator, Bear & Cat Dev
- Jothay: Project Coordinator & Arms Warrior Dev
|
|
|
01/13/11, 6:59 PM
|
#577
|
|
Piston Honda
|
Well, after doing some reading into the LibStatLogic-1.2.lua file in Rating Buster, I think I found the lines of coding your looking for. This is found in the "GetReductionFromArmor(armor, attackerLevel)" section of the file:
local levelModifier = attackerLevel
if ( levelModifier > 80 ) then
levelModifier = levelModifier + (4.5 * (levelModifier - 59)) + (20 * (levelModifier - 80));
elseif ( levelModifier > 59 ) then
levelModifier = levelModifier + (4.5 * (levelModifier - 59))
end
local temp = armor / (85 * levelModifier + 400)
local armorReduction = temp / (1 + temp)
-- caps at 0.75
if armorReduction > 0.75 then
armorReduction = 0.75
end
|
|
|
|
|
02/28/11, 6:43 PM
|
#578
|
|
Von Kaiser
|
Was working on a spreadsheet to calculate some DR numbers, and noticed a problem.
Using the avoidance formula:
With a value of 9.27% and DK constants:
Solving the equation for  yields (rounded to the 5th decimal):
Which is greater than the original 9.27% I started with.
I don't see it being noted anywhere (in this thread, on wowpedia) that DR is inverted at certain points. Is this an error with my math, or am I just wrong?
|
|
|
|
|
03/01/11, 7:25 AM
|
#579
|
|
Piston Honda
Tauren Paladin
Mal'Ganis (EU)
|
You need to put in 9.27 for x instead of 0.0927, then x' = 8.45
|
|
|
|
|
03/01/11, 3:27 PM
|
#580
|
|
Von Kaiser
|
Originally Posted by Tharia
You need to put in 9.27 for x instead of 0.0927, then x' = 8.45
|
Thanks, that would explain it.
Maybe it would be worth (subtly) clarifying it in the OP? Unless I am mistaken, percentages are usually stated as 1 being 100%, etc.
|
|
|
|
|
03/09/11, 9:13 PM
|
#581
|
|
Glass Joe
Draenei Warrior
Dath'Remar
|
This is probably a really dumb question but in the dodge/agility table, should I assume the first column is base dodge, not base agility?
|
|
|
|
|
03/21/11, 11:15 AM
|
#582
|
|
Glass Joe
|
message deleted by author
Last edited by imunenjuneer : 03/24/11 at 2:26 PM.
|
|
|
|
|
04/12/11, 12:36 AM
|
#583
|
|
Glass Joe
|
Hi, does anyone know where I can get the attack speed/unmitigated melee damage for Cataclysm raid bosses? I have looked on these boards as well as elsewhere and have not been able to find this information, despite the fact that it has a substantial effect on appropriate stat weights. I am using Tangedyn's spreadsheet (posted in the bear thread) but I have no idea how accurate its default values are.
|
|
|
|
|
04/12/11, 6:01 AM
|
#584
|
|
banned
Night Elf Rogue
Wrathbringer (EU)
|
You can get the current attack speed of your target with the following macro:
/run local sp=UnitAttackSpeed("target"); SendChatMessage(GetUnitName("target").."'s current attack speed: "..(("%%.%df"):format(2)):format(sp), "SAY");
Generally it is 2.0 for any boss that doesn't dual wield and without haste/enrage buffs.
You could also simply look through various World of Log fights and use the Expression system to filter only for boss hits. That's probably the only way to get the damage range as well, though you have to consider armor and debuffs then.
|
|
|
|
04/13/11, 9:18 PM
|
#585
|
|
Glass Joe
|
Originally Posted by sp00n
You can get the current attack speed of your target with the following macro:
/run local sp=UnitAttackSpeed("target"); SendChatMessage(GetUnitName("target").."'s current attack speed: "..(("%%.%df"):format(2)):format(sp), "SAY");
Generally it is 2.0 for any boss that doesn't dual wield and without haste/enrage buffs.
You could also simply look through various World of Log fights and use the Expression system to filter only for boss hits. That's probably the only way to get the damage range as well, though you have to consider armor and debuffs then.
|
Thanks for the macro. I have tried it and gotten 1.8 attack speed though not 2.0.
|
|
|
|
|
04/14/11, 4:23 AM
|
#586
|
|
banned
Night Elf Rogue
Wrathbringer (EU)
|
Originally Posted by Cards
Thanks for the macro. I have tried it and gotten 1.8 attack speed though not 2.0.
|
Ok, that may have changed then. Last time I actually used it was back in ICC.
|
|
|
|
04/22/11, 3:26 PM
|
#587
|
|
Piston Honda
|
4.1 Resilience Diminishing Returns(DR) Machanics
|
Originally Posted by 4.1 Patch Notes
Resilience scaling has been modified for linear returns, as opposed to increasing returns. Under the new formula, going from 30 resilience to 40 resilience gives players the same increase to survivability as going from 0 to 10. Resilience now scales in the same way armor and magic resistances do. A player with 32.5% damage reduction from resilience in 4.0.6 should see their damage reduction unchanged in 4.1. Those with less than 32.5% will gain slightly. Those with more will lose some damage reduction, increasingly so as their resilience climbs.
|
I've edited the first post with the final results, this post is about how I arrived at those results. So when I saw those patch notes, I thought well, this sounds like something I could do.
- Loaded up a PTR client and started digging through the game files, and if I were lucky I could find the formula written in the lua files. Sadly, as with the avoidance diminishing returns formula, it too is implemented in a C code API.
- Continue digging through the DBC files, I found that the Resilience conversion values for all levels has scaled down by a constant(this is before the new DR kicks in), meaning more damage reduction per Resilience point when in 4.0.6:
| Rating | Level 60 | Level 70 | Level 80 | Level 81 | Level 82 | Level 83 | Level 84 | Level 85 |
|---|
| Resilience(Player Damage Taken) (4.0.6) | 9.58333 | 15.11218 | 31.42374 | 39.22359 | 48.95947 | 61.11195 | 76.28086 | 95.21492 | | Resilience(Player Damage Taken) (4.1.0) | 7.96418 | 12.5589 | 26.11453 | 32.59655 | 40.68751 | 50.78676 | 63.3928 | 79.12785 | Divide any 4.0.6 value with the 4.1.0 value results in a constant, using level 85 for example:

This value is actually pretty strange, because in the past when they want to change the numbers a bit they would pick a "pretty" number like 1.25 or 1.2. So why 1.203304778? I will answer this by deriving the number at the end of this post.
- Before I can start to derive the Resilience DR formula, I will need a decent amount of data to work with. Blizzard gave us 2 APIs: GetCombatRating(16) returns your current resilience rating, and GetCombatRatingBonus(16) returns the damage reduction percentage of your current resilience rating after DR. After updating my lua library LibStatLogic with the new values I found in step 2, I can use StatLogic:GetEffectFromRating(resilience, 16) to get the damage reduction percentage of a given resilience rating before DR.
So I wrote a little addon to help me collect data while I equip and unequip my pvp gear trying to generate as many resilience values I can. Here's the addon code:
function SaveData()
local res = GetCombatRating(16)
local bonusDr = GetCombatRatingBonus(16)
local bonusOri = StatLogic:GetEffectFromRating(res, 16)
if not GetResilienceDataDB[res] then
GetResilienceDataDB[res] = res..","..bonusOri..","..bonusDr
print("Resilience: "..res..", "..bonusOri..", "..bonusDr)
end
end
local f = CreateFrame("Frame")
f:RegisterEvent("PLAYER_ENTERING_WORLD")
f:RegisterEvent("COMBAT_RATING_UPDATE")
local function OnEvent(self, event, ...)
if event == "PLAYER_ENTERING_WORLD" then
if not GetResilienceDataDB then
GetResilienceDataDB = {}
end
else
SaveData()
end
end
f:SetScript("OnEvent", OnEvent)
Here's the raw data I gathered from the current PTR build 4.1.0.13914:
| Resilience | Damage Reduction before DR | Damage Reduction after DR |
|---|
| 0 | 0 | 0 | | 20 | 0.252755525 | 0.253705169 | | 40 | 0.50551105 | 0.506766674 | | 60 | 0.758266575 | 0.75918615 | | 72 | 0.909919891 | 0.910330315 | | 80 | 1.011022101 | 1.010965224 | | 100 | 1.263777626 | 1.262105522 | | 120 | 1.516533151 | 1.512608664 | | 140 | 1.769288676 | 1.762476266 | | 160 | 2.022044201 | 2.011709942 | | 179 | 2.26216195 | 2.247896264 | | 180 | 2.274799726 | 2.260311181 | | 191 | 2.413815265 | 2.396773118 | | 200 | 2.527555251 | 2.508281941 | | 220 | 2.780310777 | 2.755623352 | | 240 | 3.033066302 | 3.002337478 | | 326 | 4.11991506 | 4.056095155 | | 361 | 4.562237229 | 4.481665514 | | 460 | 5.813377078 | 5.675227718 | | 626 | 7.911247937 | 7.643178884 | | 880 | 11.12124311 | 10.57519803 | | 952 | 12.031163 | 11.38925986 | | 1005 | 12.70096514 | 11.9837598 | | 1007 | 12.72624069 | 12.00611523 | | 1079 | 13.63616058 | 12.80715097 | | 1104 | 13.95210499 | 13.08357858 | | 1215 | 15.35489815 | 14.30037521 | | 1238 | 15.64556701 | 14.55036532 | | 1287 | 16.26481804 | 15.08052477 | | 1306 | 16.50493579 | 15.28521084 | | 1406 | 17.76871342 | 16.35440017 | | 1440 | 18.19839781 | 16.71484162 | | 1463 | 18.48906666 | 16.9577902 | | 1560 | 19.71493096 | 17.97462151 | | 1599 | 20.20780424 | 18.37993174 | | 1707 | 21.57268407 | 19.49190962 | | 1718 | 21.71169961 | 19.6043128 | | 1766 | 22.31831287 | 20.09296689 | | 1815 | 22.93756391 | 20.5887381 | | 1826 | 23.07657945 | 20.69961144 | | 1942 | 24.54256149 | 21.85942518 | | 1945 | 24.58047482 | 21.88919504 | | 2014 | 25.45248138 | 22.57076243 | | 2042 | 25.80633912 | 22.84564252 | | 2070 | 26.16019685 | 23.11954529 | | 2193 | 27.71464333 | 24.31129227 | | 2204 | 27.85365887 | 24.41696677 | | 2261 | 28.57401212 | 24.96219626 | | 2343 | 29.61030977 | 25.73966833 | | 2369 | 29.93889195 | 25.9844985 | | 2462 | 31.11420515 | 26.85364613 | | 2505 | 31.65762952 | 27.2520529 | | 2562 | 32.37798277 | 27.77683108 | | 2581 | 32.61810052 | 27.95091317 | | 2670 | 33.74286261 | 28.76078721 | | 2700 | 34.1219959 | 29.03172013 | | 2741 | 34.64014472 | 29.40033249 | | 2827 | 35.72699348 | 30.16730947 | | 2860 | 36.1440401 | 30.45939674 | | 2878 | 36.37152007 | 30.6182035 | | 2899 | 36.63691337 | 30.80301754 | | 2985 | 37.72376213 | 31.5547561 | | 2997 | 37.87541544 | 31.65899849 | | 3104 | 39.2276575 | 32.58150188 | | 3116 | 39.37931082 | 32.68418053 | | 3200 | 40.44088402 | 33.39856574 | | 3258 | 41.17387505 | 33.88740181 | | 3357 | 42.4250149 | 34.71352131 | | 3392 | 42.86733707 | 35.00310677 | | 3408 | 43.06954149 | 35.13506147 | | 3417 | 43.18328147 | 35.20916713 | | 3465 | 43.78989473 | 35.60297315 | | 3474 | 43.90363472 | 35.67654425 | | 3510 | 44.35859466 | 35.96999153 | | 3539 | 44.72509018 | 36.20540678 | | 3542 | 44.7630035 | 36.22971113 | | 3584 | 45.29379011 | 36.56899171 | | 3591 | 45.38225454 | 36.62536433 | | 3599 | 45.48335675 | 36.68972642 | | 3621 | 45.76138783 | 36.86638714 | | 3646 | 46.07733223 | 37.06654032 | | 3718 | 46.98725213 | 37.63944261 | A plot of the data:

- Now here's the fun part, figuring out how to arrive at B with A. I was first mislead by the patch notes into believing that the new formula would be similar to the armor and resistance forumlas, and that the results would be linear in terms of TTL, this was not the case. Then I tried the avoidance DR formula but that didn't work either. What we're looking for is something new. We notice that for values smaller then 1, the output is greater then the input, so for input of 1 the output is likely to also be 1. And after a few cups of coffee, I came up with:

where
is the damage reduction after DR.
is the damage reduction before DR.
When compared to the results from the in game API, its correct to the 4th decimal place.
- Now the patch notes mentioned that a damage reduction of 32.5% in 4.0.6 should stay the same when in 4.1.0. So how much damage reduction before DR should we have for a 32.5% damage reduction after DR?
Solve: 


=\log(0.0675))
}{\log(0.99)}=39.10740833)
Now when we divide 39.10740833 with 32.5 we get:

Which is why the resilience conversion value was divided by 1.203304 from 4.0.6 to 4.1.0!
Even after applying the new scaling formula, resilience still gives increasing returns in terms of survivability.
| | Before DR | After DR |
|---|
| Resilience | Damage Reduction | Survivability | Survivability Increase | Damage Reduction | Survivability | Survivability Increase | | 20 | 0.252755525 | 1.00253396 | 0.000127342 | 0.253705169 | 1.002543505 | 0.000127499 | | 40 | 0.50551105 | 1.005080794 | | 0.506766674 | 1.005093479 | | | 100 | 1.263777626 | 1.012799534 | 0.000129966 | 1.262105522 | 1.012782382 | 0.000128801 | | 120 | 1.516533151 | 1.01539886 | | 1.512608664 | 1.015358399 | | | 220 | 2.780310777 | 1.028598227 | 0.000134058 | 2.755623352 | 1.028337097 | 0.000130779 | | 240 | 3.033066302 | 1.031279388 | | 3.002337478 | 1.030952679 | | | 3646 | 46.07733223 | 1.854507652 | 0.000442098 | 37.06654032 | 1.588979861 | 0.000202748 | | 3718 | 46.98725213 | 1.886338739 | | 37.63944261 | 1.603577713 | |
Example:
The Survivability for 20 Resilience after DR is calculated as: 1/(1-0.253705169/100)=1.002543505
The Survivability increase of resilience from 20 to 40 after DR is calculated as: (1.005093479-1.002543505)/(40-20)
Last edited by Whitetooth : 04/22/11 at 6:53 PM.
|
|
|
|
09/03/11, 6:32 PM
|
#588
|
|
Myrmidon Champion
Worgen Warrior
Alterac Mountains
|
Cataclysm Strength to Parry:
This is now 27% instead of 25% after agility to dodge was removed.
However, not all strength is allowed to be ocnverted. The Strength pool that is allowed to be converted is non-naked strength. For example a level 85 naked Worgen has 192 strength which is the amount that cannot be converted by the 27%. Any bonus from equipment, plate spec, buffs, etc. can be converted.
|
|
|
|
01/07/12, 4:59 AM
|
#589
|
|
Glass Joe
Dwarf Priest
Die Silberne Hand (EU)
|
New to tanking and trying to understand how exactly DR on Parry/Dodge works. Let's assume a Paladin (85) has 20% Parry and 10% Dodge. According to \frac{1}{x'} = \frac{1}{c}+\frac{k}{x}} this would result in a DR value of 15.8% Parry. So let's say such Paladin parries the first attack. My understanding is, that his chance to parry the second attack will be 15.8% and to dodge the second attack would be still 10%. Is this correct so far? So now two scenarios:
1) The second attack again is parried. Parry then drops to 13,2% for the third attack, while dodge remains at 10%.
2) The second attack is dodged. Dodge drops to 9.02% - and parry? Does it go back to 20% or does it remain at 15.8% until an attack actually hits?
Now, let's say two in a row are parried and the third attack actually hits - is the parry chance for the fourth attack then back up to 20%?
|
|
|
|
|
01/07/12, 4:26 PM
|
#590
|
|
Rawr
Night Elf Druid
Stormrage
|
No; DR is constant, there's nothing progressive about it.
|
Rawr!
|
|
|
01/07/12, 7:02 PM
|
#591
|
|
Glass Joe
Dwarf Priest
Die Silberne Hand (EU)
|
Originally Posted by Astrylian
No; DR is constant, there's nothing progressive about it.
|
Meaning what? Perhaps you could provide some more detail and use an example in your answer.
|
|
|
|
|
01/07/12, 9:09 PM
|
#592
|
|
Von Kaiser
Blood Elf Mage
Chamber of Aspects (EU)
|
Originally Posted by Bharlin
Meaning what? Perhaps you could provide some more detail and use an example in your answer.
|
The diminishing returns on dodge and parry are not about how many times you are hit but about how many stats are required to get the same effect. A random number example would be that with 0 DR 100stat + 100stat will always mean you dodge/parry 1%, but with DR 100stat + 100stat would mean you dodge/parry 1.5% as the more you have of each the less gain you receive.
Last edited by AceRider : 01/08/12 at 6:40 AM.
|
I used to be an Arcane Mage, then I took a Fireball to the knee.
|
|
|
01/08/12, 8:48 AM
|
#593
|
|
banned
Night Elf Rogue
Wrathbringer (EU)
|
Random events in WoW don't have a memory, such things as the combat mechanic or boss loot aren't influenced by previous random events.
So you won't get punished for a lucky streak of swings (say crits, or dodges), but neither does the chance increase of that one item dropping for which you've been farming for the last three weeks. The chance to drop is just the same, only your probability of actually seeing it increases the more kills you invest (although sometimes it really does feel like the game just wants to mess with you).
The same is true for hits, crits and avoidance. You don't magically avoid less because the last 6 hits of that bad boss were all dodged by you lucky bastard.
|
|
|
|
|