Копипаста про ДПС оружия  
Автор Сообщение

5
Сообщение Копипаста про ДПС оружия

Вступление
Как правило, в начале игры мы не очень задумываемся о том, как все устроено и откуда берется. Нам достаточно видеть крупные цифры урона на оружии и считать, что чем они больше, тем лучше. А также смотреть, как растет значение Damage в статистике нашего персонажа при экипировке новых вещей и радоваться тому, что жизнь удалась.
Но рано или поздно каждый задается вопросами - "А что же в итоге даст больший профит - прибавка к скорости атаки или увеличение шанса нанести критический урон? А может увеличение самого критического урона?", "А что лучше - медленный двуручный арбалет или два быстрых одноручных арбалета в каждой руке?", "И о каком уроне в конце концов говорится в описании умения Fire a magically imbued arrow that seeks out targets for 115% weapon damage - о том, который крупными цифрами написан на оружии или о том, который отображается в статистике персонажа?" Это тема предназначена, чтобы дать ответы на эти и многие другие вопросы, и рассказать всю правду о механике урона в Diablo 3.

Расчет урона и DPS для оружия

Для начала давайте рассмотрим те цифры, которые мы видим на оружии и разберемся откуда они берутся и на что влияют. Вот для примера лук и арбалет.

#987

Как формируется предмет в игре? Берется болванка и к ней применяются так называемые префиксы и суффиксы (общее название аффиксы). Давайте рассмотрим как получился лук, который мы видим на картинке.
Болванкой послужил Revenant Bow - это видно из названия. Примечание - для редких (желтых) вещей из названия этого не видно - с ними надо ориентироваться на изображение и уровень предмета, чтобы определить болванку.

Итак, вот наша болванка - Revenant Bow. В чистом виде она имеет урон (80-82)-(458-462) Damage и скорость атаки - 1.40 Attacks Per Second.
В базе d3db мы можем посмотреть перечень аффиксов, которые могут выпасть на этой болванке. В данном случае нам выпали префикс Savage (+(31-35)% Damage) и суффикс Beyond (+(191-286)-(334-667) Arcane Damage), причем в не самом худшем варианте.

Существуют несколько типов аффиксов - аффиксы первого типа сразу применяются к расчету урона оружия и мы видим итоговые цифры уже с учетом этих аффиксов, аффиксы второго типа используются при дальнейших расчетах и учитываются в уроне, указанном в статистике персонажа. Ну и есть еще аффиксы, которые вообще не влияют на урон - ни здесь, ни потом.
К аффиксам первого типа относятся:
+ X-Y Elemental Damage
+ X Minimum Damage
+ X Maximum Damage
+ X % Damage
Increases Attack Speed by X %
+ X Attacks per Second


Эти аффиксы применяются к базовому урону (MinBaseDamage и MaxBaseDamage) и в следующем порядке. Сначала прибавляются бонусы (DamageBonus) от аффиксов + X Minimum Damage и + X Maximum Damage, а также бонус к урону от рубина (RubyDamageBonus). Потом применяется бонус (%DamageBonus) от аффикса + X % Damage. И последним прибавляется бонус (ElemDamageBonus) от аффикса + X-Y Elemental Damage.

Общая формула для расчета минимального и максимального урона оружия выглядит следующим образом:

MinWeaponDamage=(MinWeaponBaseDamage + MinDamageBonus + RubyDamageBonus)*(1+%DamageBonus/100)+MinElemDamageBonus

MaxWeaponDamage=(MaxWeaponBaseDamage + MaxDamageBonus + RubyDamageBonus)*(1+%DamageBonus/100)+MaxElemDamageBonus


Примечание. До патча 1.0.3 существовал аффикс + X-Y Damage, который рассчитывался непонятным образом - подробнее смотрите вставку "Проблемы с аффиксом + X-Y Damage" под спойлером чуть ниже. В патче 1.0.3 этот аффикс был заменен на аффиксы + X Minimum Damage и + X Maximum Damage

Формула для расчета скорости оружия:

WeaponSpeed=WeaponBaseSpeed*(1+%IncreasesAttackSpeed/100) (требуется уточнение влияния редкого аффикса + X Attacks per Second - будет добавлено позже)

Итак, вернемся к нашему луку. Как же получились цифры 379-1213 Damage?
Нам выпала болванка с уроном 80-460.
Далее этот урон был увеличен на 34%
(80*1.34) - (460*1.34) = 107-616
И потом к урону прибавилось 272-597 Arcane Damage
(107+272) - (616+597) = 379-1213
Получается тот урон, который мы видим в итоге.

Ну а теперь осталось только выяснить как получилась эта крупная цифра - 1114.4 Damage Per Second.
Все очень просто - это средний урон нашего лука умноженный на скорость атаки.
Средний урон = (379+1213)/2 = 796
DPS = Damage Per Second = 796*1.4 = 1114.4
На практике эта цифра означает следующее - если вы будете из этого лука беспрерывно стрелять автоатакой достаточно долгое время, то просуммировав весь урон (иногда вы будете наносить минимальный урон, иногда максимальный, иногда средний - при достаточно большом количестве выстрелов все сведется к среднему урону) и поделив на количество секунд, в течении которых мы вели стрельбу, то в итоге и получим эти пресловутые 1114.4 урона.

Формула для расчета DPS оружия

WeaponDPS = (MinWeaponDamage+MaxWeaponDamage)/2*WeaponSpeed

Если бы оружие имело аффиксы вида Increases Attack Speed by X % или + X Attacks per Second, то эти аффиксы были бы сразу учтены в параметре Attacks Per Second. Например аффикс Increases Attack Speed by 20% оказал бы следующий эффект на скорость атаки 1.4*1.2=1.68 И для расчета Damage Per Second использовалось бы уже значение 1.68, а не 1.4

Проблемы с аффиксом + X-Y Damage

Посмотрите на эти два топора
#987
#987

Болванка

Имеет урон (430-438)–(519-535) Damage

Для топора с Arcane Damage все считается нормально
650-215=435
920-394=526

Для топора с просто Damage

635-204=431
930-498=432 (wtf?)

То есть максимальный базовый урон = минимальный базовый урон + 1
Я перепроверил много пушек с аффиксом + X-Y Damage и у всех урон считается неверно.
Я не знаю в чем тут подвох - то ли это баг, то ли так и надо, то ли я что-то неправильно считаю

Добавлено. В процессе обсуждения было выдвинуто следующее предположение:
Цитата:
Eсли есть + X-Y Damage, то возможно идёт проверка на условие:
if(WeaponBaseDmg.Max-WeaponBaseDmg.Min < BonusDmg.Min) WeaponBaseDmg.Min = WeaponBaseDmg.Max + 1

WeaponBaseDmg - это урон болванки = {431, 520}
BonusDmg - это бонус физ.урона = {204, 498}
Проверяем условие
520 - 431 = 89 < 204 - Выполняется! Т.е. естевственный прирост урона намного меньше чем добавляет к минималке бонус следовательно скидываем макс дамаг
WeaponBaseDmg - это урон болванки = {431, 431+1} = {431, 432}

Такой ход вполне понятен - чтобы не было ОверПаверед пушек. С другой стороны не совсем понятно почему это правило не распространяется на эльментальный бонус урона.


От себя добавлю - действительно из-за особенностей расчета пушки с аффиксом + X-Y Damage получались бы значительно мощнее пушек с элементальным уроном при наличии аффикса +X % Damage.
Damage = (Base + Bonus)*%Bonus
Damage = Base*%Bonus+ElemBonus
Понятно, что в первом случае итоговый урон получиться куда больше, чем во втором. Быть может действительно разработчики решили эту проблему таким радикальным образом и формула для верхнего предела оружия с бонусом + X-Y Damage выглядит так:
MaxWeaponDamage=(MinWeaponBaseDamage + 1 + MaxDamageBonus + RubyDamageBonus)*(1+%DamageBonus/100)+MaxElemDamageBonus

Кроме этого исследования показали, что это предположение верно не для всего оружия. Например для оружия имеющего большой разброс урона (типа Лука 300-1000) применяется какая-то иная формула расчета.

Добавлено. В патче 1.0.3 аффикс + X-Y Damage был заменен на аффиксы + X Minimum Damage и + X Maximum Damage
Последствия этого изучаются...

Теперь давайте быстренько рассмотрим второй пример - арбалет.
Болванка - Hellion Crossbow с уроном 419-509 и скоростью 1.1
После применения аффикса урон стал (419+276)-(509+587)=695-1096
А вот второй аффикс на увеличение критического урон, не является аффиксом первого типа (см. выше), поэтому в цифрах которые мы видим здесь никак не учитывается.
DPS = (695+1096)/2*1.1=985.1
Все просто и понятно.

Ну чтобы закончить разговор про оружие, рассмотрим еще один пример и заодно разберем влияние драгоценных камней на урон.

#987

Оружие без камня
DPS = (94+189)/2*1.3 = 183.95

Вставляем рубин и видим надпись +15-30 Damage. Не верьте глазам своим.
А лучше посмотрите на описание этого камня на официальном сайте - Weapon: +15 Minimum Damage, +15 Maximum Damage. Ага, в игре баг описания, так что будьте внимательны. Смотрим как изменился урон - (94+15)-(189+15) = 109-204 - все верно.
DPS = (109+204)/2*1.3 = 203.45

Добавлено. В патче 1.0.3 отображение бонуса к урону от рубина было исправлено на корректное.

Если на оружии имеется аффикс + X % Damage, то прибавка от камня будет считаться чуть по другому. Подробнее под спойлером.
#987

Болванка 38-210

Без камня
38*1.31+49=98.78
210*1.31+102=377.1

Вставляем камень и видим, что прибавка вместо ожидаемых +14 урона, составила +16 к минимальному и +18 к максимальному урону. Почему? Ответ кроется в аффиксе +31% к урону - потому что сначала к базовому урону прибавляется бонус от камня, а только потом применяются аффиксы.

(38+14)*1.31+49=117.12
(210+14)*1.31+102=395.44

Все правильно.

Теперь вставляем изумруд и видим, что никаких изменений не произошло. Аналогичная ситуация будет и с топазом, и с аметистом. Тут ситуация такая же как и с аффиксами разного типа - только рубины учитываются сразу, изумруды учитываются потом, а остальные и вовсе не влияют напрямую на урон.

Кстати установка камня 9 тира в оружие добавила аж 3 золотых к стоимости :lol:

Факторы влияющие на общий DPS

Теперь давайте поговорим о значении Damage, которое мы видим в статистике персонажа.

#987

Посмотрите на картинку - напротив Damage совершенно голого героя 60 уровня мы видим цифру 7.35
Давайте разберемся откуда она взялась.

Все факторы влияющие на Damage сосредоточенны в разделе OFFENSE. Кроме этого на урон, конечно же, влияет то, что вы держите в руках. Значения параметров в разделе OFFENSE зависят от ваших вещей и пассивных умений - более детально мы рассмотрим каждый из этих параметров позже, а пока займемся уроном.

Средний урон персонажа (Average Weapon Damage) голыми руками составляет 2.5 (этого нигде не видно, так что поверьте мне на слово). Если же мы возьмем в руки оружие, то средний урон будет считаться по следующей формуле Average Weapon Damage = (MinWeaponDamage+MaxWeaponDamage)/2

Этот урон увеличивается от следующих факторов по таким формулам:
Damage Increased by Main Stat = (1+Main Stat/100) = 1 + 187/100 = 2.87 - это бонус от вашего основного стата, для каждого класса он свой.
Damage Increased by Skills = (1+Skill Bonus/100) = 1+0 = 1 - это бонус от всех ваших пассивных умений, в нашем случае пока бонуса нет
Attacks Per Second = (Weapon Speed * (1 + Attack Speed Increased Bonus/100)) = 1 * 1 = 1 - это ваше количество атак в секунду, получается перемножением скорости оружия и всех бонусов к скорости атаки на ваших вещах. Кулаками персонаж атакует со скоростью 1 раз в секунду.
Critical Hit Chance и Critical Hit Damage = (1 + Critical Hit Chance *Critical Hit Damage/10000) = 1 + 5*50/10000 = 1.025 - некоторые ваши удары могут нанести критический (увеличенный) урон. Базовый шанс критического удара - 5%, базовый бонус к урону при критическом ударе - 50%

Кроме этого урон увеличивают следующие аффиксы встречающиеся на вещах:
+ X Minimum Damage
+ X Maximum Damage
+ X-Y Damage

Эти аффиксы прибавляются к базовым минимальному и максимальному урону оружия соответственно.

Общая формула урона имеет следующий вид

Damage = (MinWeaponDamage+MinItemDamageBonus+MaxWeaponDamage+MaxItemDamageBonus)/2 * (1+Main Stat/100) * (1+Skill Bonus/100) * (Weapon Speed * (1 + Attack Speed Increased Bonus/100)) * (1 + Critical Hit Chance *Critical Hit Damage/10000) = 2.5 * 2.87 * 1 * 1 * 1.025 = 7.354

#987 Все честно! Остается теперь только отправиться на уровень сложности Hell
и затащить там ачивку The Hero's New Clothes.
Убил СК Инферно Дъябло? Покажи скилл!
Будь мужиком - напади на Мясника, размахивая ...
фиговым листком.


:D

Использование оружия в двух руках

Для опытов я взял два одноручных арбалета. Специально оба с аффиксом IAS, чтобы сразу оценить их влияние.

#987

Базовая скорость одноручных арбалетов 1.6
Скорость наших арбалетов с учетом IAS на них - 1.6*1.14=1.82 и 1.6*1.15=1.84

#987

Смотрите теперь как меняется ApS:

1. С пустыми руками - 1.31 - Скорость кулаков 1.0 + бонус ASI с вещей 31%
2. Беру в правую руку арбалет со скоростью 1.84 * 1.31 = 2.410
3. Беру в правую руку арбалет со скоростью 1.82 * 1.31 = 2.384
4. Беру в левую руку второй арбалет со скоростью 1.84 - это дает нам бонус ASI в 15%, который прибавляется к бонусу с вещей 1.31+1.15=1.46 и умножается на скорость арбалета в главной руке 1.46 * 1.82 = 2.657
5. Когда у нас оружие в двух руках, то выстрелы/удары им производятся по очереди*. То есть время между выстрелами будет не постоянным, а переменным - в зависимости от того, каким оружием стреляем. Я сделал один выстрел и в значение ApS в статистике изменилось с 2.66 на 2.69 - потому что теперь на очереди стрелять находится арбалет в левой руке со скоростью 1.84 * 1.46 = 2.686

IAS - Increases Attack Speed - работает только на оружии, сразу учитывается в скорости оружия
ASI - Attack Speed Increased - влияет непосредственно на общий ApS
ApS - Attack per Second

Что касается ДПС, то я добавлю расчет чуть позже (хочу уточнить еще раз). Если кратко, то считается ДПС для первого оружия со своей скоростью отдельно, для второго оружия со своей скоростью тоже отдельно, потом эти ДПС складываются и делятся на два, в итоге получается ДПС который мы видим в статистике персонажа.

Примечание.
* - Для некоторых умений оружие используются по очереди, для некоторых - используется только правая рука. Я проверил для ДХ Замедляющий выстрел и Элементальную стрелу - оба умения использовали оружие по очереди. Со временем я проверю все скиллы ДХ и выложу результаты.

Расчет урона при применении умений

Теперь давайте посмотрим как все вышесказанное связано с тем, что мы видим в описании наших умений. Например умение "Бросок кинжала" - Метнуть в цель кинжал и нанести ей 250% урона от оружия. О каком уроне идет речь? От чего берутся 250%?

Давайте обозначим эту новую переменную как SkillDamageBonus и введем ее в нашу формулу.

Средний урон при применении умения
Damage = (MinWeaponDamage+MinItemDamageBonus+MaxWeaponDamage+MaxItemDamageBonus)/2 * (1+Main Stat/100) * (1+Skill Bonus/100) * (Weapon Speed * (1 + Attack Speed Increased Bonus/100)) * (1 + Critical Hit Chance *Critical Hit Damage/10000) * SkillDamageBonus/100

Вроде бы все просто, но на самом деле имеется масса нюансов.

Во-первых, надо понимать, что при использовании умения мы можем нанести урон в диапазоне разброса урона на оружии. Кроме этого удар может быть или не быть критическим. Тогда формулы для минимального и максимального урона с одного применения умения будут выглядеть так:

MinHitDamage = (MinWeaponDamage+MinItemDamageBonus) * (1+Main Stat/100) * (1+Skill Bonus/100) * SkillDamageBonus/100

MaxHitDamage = (MaxWeaponDamage+MaxItemDamageBonus) * (1+Main Stat/100) * (1+Skill Bonus/100) * SkillDamageBonus/100 * (1+Critical Hit Damage/100)

Итоговая цифра урона за один удар будет находиться между этими двумя значениями. Как видим скорость атаки вообще не участвует формулах - она влияет только на то, как часто мы сможем применять умение. Это приводит нас ко второму нюансу.

Во-вторых, умения очень сильно разнятся - одни имеют время восстановления (кулдаун), другие требуют значительных затрат ресурсов, третьи наносят урон частями и так далее. Давайте рассмотрим несколько примеров.

Умение варвара "Яростный рывок" - Варвар устремляется вперед, отбрасывая противников и нанося 195% урона от оружия всем целям на своем пути. Время восстановления: 10 сек.
Абсолютно не важно какая скорость атаки у этого варвара - он просто не сможет применить это умение чаще, чем раз в 10 секунд. Можно сказать, что для этого умения ApS=0.1

Умение охотника "Бросок кинжала" - Затраты: 25 ед. ненависти. Предположим, что у охотника стандартный пул ненависти в 125 единиц. Тогда он сможет применить умение 5 раз со своей текущей ApS, но потом будет вынужден прерваться, чтобы пополнить запасы ненависти. То есть в глобальном смысле урон и ApS при применение этого умения уже не будут соответствовать тем значениям, которые мы видим в статистике персонажа.

Таких примеров можно найти очень много, хотя безусловно есть и такие умения, которые просто скалируются от скорости атаки без всяких дополнительных нюансов.

Ну и в третьих, в реальной игре, как правило, нам редко удается стоять на месте и вливать урон - то приходиться бегать за монстрами, то, наоборот, убегать от них, то выбегать из всяких гадостей под ногами, вообщем стоять на месте не получается. Это тоже накладывает свой отпечаток на общий DPS. И реальные ApS и Damage в итоге отличаются от того, что показывает нам статистика.

Эти выводы нам понадобятся в дальнейшем.



06 июл 2012, 11:05
Профиль Skype



<Prestige Gaming>


Сервер: Ravencrest
2х2: 96
Сообщение Копипаста про ДПС оружия

Про иас написали, что работает отдельно для каждой руки, а крит дамаг и лох?



06 июл 2012, 12:51
Профиль

0
Сообщение Копипаста про ДПС оружия

ДХ не имею, но люди сказали что отдельно



06 июл 2012, 13:30
Профиль Skype



<Prestige Gaming>


Сервер: Ravencrest
2х2: 96
Сообщение Копипаста про ДПС оружия

Ну как бы вары и монки тоже 2 ванхенда носят :D



06 июл 2012, 13:57
Профиль

0
Сообщение Копипаста про ДПС оружия

надо чтобы на ауке добавили возможность примерить шмотку на перса, а то на бумажке считать по этим формулам какой дпс в итоге будет ваще неочен



06 июл 2012, 14:00
Профиль

0
Сообщение Копипаста про ДПС оружия

Я за визарда играю, поэтому какого это играть в две одноручки мне не ведомо  :D

 

 

xALEKSx писал(а):

надо чтобы на ауке добавили возможность примерить шмотку на перса, а то на бумажке считать по этим формулам какой дпс в итоге будет ваще неочен

 

Согласен, сейчас единственная возможность для меня расчитать сколько даст та или иная вещь, это запомнить сколько 100 ед статы дает дамаги  :D



06 июл 2012, 14:08
Профиль Skype



<Prestige Gaming>


Сервер: Ravencrest
2х2: 96
Сообщение Копипаста про ДПС оружия

xALEKSx писал(а):

надо чтобы на ауке добавили возможность примерить шмотку на перса, а то на бумажке считать по этим формулам какой дпс в итоге будет ваще неочен

Надо, но есть куча калькуляторов показывающих сколько дпс даст тебе любая шмотка.



06 июл 2012, 14:12
Профиль

0
Сообщение Копипаста про ДПС оружия

Да, вот один из них :)



06 июл 2012, 14:15
Профиль Skype

0
Сообщение Копипаста про ДПС оружия

Надо еще афиксов добавить в поиск а то не ок вобще когда жирноту выципаешь...



06 июл 2012, 20:48
Профиль

0
Сообщение Копипаста про ДПС оружия

хм, а разве не пофиксили +0,15 апс от второго оружия? вроде бы добавки уже нету



07 июл 2012, 16:57
Профиль

1
Сообщение Копипаста про ДПС оружия

#159

 

 

 

#159



08 июл 2012, 14:07
Профиль
Начать новую тему Ответить на тему


Перейти:  

cron
На сайте использованы материалы, принадлежащие Blizzard Entertainment. Копирование материалов возможно только c разрешения портала. В противном случае это будет называться уже другим словом.
Рейтинг@Mail.ru