Игра дважды побеждала в премии рунета, в 2009 г. и в 2015 г.

Расчет урона в бою. Атака, защита, перки.

03.04.2010 20:00 / комментариев: 68 / просмотров: 34924 / хомяки: 0

Добрый день, многоуважаемые читатели. Сегодня я бы хотел помочь вам в познании глубокого смысла расчета урона в бою. Многие из вас слышали про "+1 атаки дает 5% урона" и исходя из этого утверждения уже делают неправильные выводы. А как работают перки, удача и крафт - для многих вообще "тёмный лес". Я и сам, до недавнего времени, почти не разбирался в данном вопросе. Позвольте мне вместе с вами рассмотреть сей вопрос на примерах.


Пример 0:

Для начала рассмотрим элементарные вещи, для простоты расчетов - забудем про перки.

Стек с уроном в 10 и атакой в 50 атакует стек с защитой 10. Многие считают, что если добавить +10 атаки, то будет +50% урона. Что в корне не верно.

Давайте рассчитаем итоговый урон для 50 и 60 атаки:


1. стек с 50 атаки

dmg = 10

att_mod = 1+(50-10)*0.05 = 3

total = 10 * 3 = 30


2. стек с 60 атаки

dmg = 10

att_mod = 1+(60-10)*0.05 = 3.5

total = 10 * 3.5 = 35


Итоговый урон увеличился всего на 16%. Одна из главных допущенных ошибок в первоначальной гипотезе (про +50% урона) происходит из-за неправильного понимания принципа расчета процентов и незнания точной формулы для расчета.


Формула выглядит так:

Итоговый урон = Физический урон + Элементальный урон.


В свою очередь:

Физический урон = Существ в стеке * Базовый урон * Модификатор урона от атаки * Модификаторы физического урона.

Элементальный урон = Доп урон 1 + Доп урон 2....


Итоговый урон - Сколько повреждений нанесет атакующий стек (total)


Урон делится на физический и элементальный

Физический урон - основной, в расчете применяются параметры атаки, защиты, перки и другие модификаторы (phys)

Элементальный урон - дополнительный урон, который считается от физического. Это могут быть перки (Холодная сталь, Огненная ярость, ), крафт на оружие. Часть урона поглощается магическим сопротивлением. (elem)

Существ в стеке - все понятно. (count)

Базовый урон - "урон" у существа. (dmg)

Модификатор урона от атаки - то, что слышали многие "+1 атаки дает 5% урона", но формула чуть сложнее: (att_mod)


Если "атака" атакующего >= "защиты" атакуемого, то:

att_mod = 1+("атака"-"защита")*0,05.

Если "атака" атакующего < "защиты" атакуемого, то:

att_mod = 1/(1+("защита"-"атака")*0,05).


Модификаторы физического урона - почти все эффекты от перков, удача, параметры артефактов. В большинстве случаев домножают итоговый урон на величину, указанную в свойствах: (phys_mod)

- кинжал вора добавляет модификатор 1,1.

- удача добавляет модификатор 2.

- холодная сталь ничего не добавляет, это элементальный модификатор.


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


Для примеров 1 - 6 мы будем использовать реальные статы с реального группового боя (для большей наглядности у сэрВОР перк стойкость заменен на уклонение). Для основы расчетов возьмем двух игроков 15 уровня с 10 умелкой: сэрВОР (некромант) и vezdeprolezu (СЭ). Сами примеры - выдуманные. Из боя взяли только параметры юнитов и наборы перков. Ниже будут смоделированы несколько ситуаций, используя статы наших героев.


Пример 1:

38 Мастеров лука (51 атаки, 15% стрелкового урона, перк - ББ)

стреляют по

скелетам лучникам (42 защиты, 5% защиты от стрелков, перк - уклонение).


У мастеров с ББ средний урон 7,5.


Так как атака больше защиты, то используем первую формулу.

att_mod = 1 + (51-42)*0,05 = 1,45


phys_mod:

1,15 - от 15% стрелкового урона

0,95 - от 5% защиты от стрелков

0,80 - от перка уклонение


phys = 7,5 * 38 * 1,45 * 1,15 * 0,95 * 0,8 = 361 урона нанесет стек мастеров каждым выстрелом.


Пример 2:

Предположим, эльф вместо перка ББ взял бы перк стрельба:


У мастеров средний урон 6,5.


att_mod = 1 + (51-42)*0,05 = 1,45


phys_mod:

1,15 - от 15% стрелкового урона

1,20 - от перка стрельба

0,95 - от 5% защиты от стрелков

0,80 - от перка уклонение


phys = 6,5 * 38 * 1,45 * 1,15 * 1,2 * 0,95 * 0,8 = 375 урона нанесет стек мастеров каждым выстрелом.


Пример 3:

Предположим, эльф вместо перка ББ взял бы перк Холодная Сталь:


У мастеров средний урон 6,5.


att_mod = 1 + (51-42)*0,05 = 1,45


phys_mod:

1,15 - от 15% стрелкового урона

0,95 - от 5% защиты от стрелков

0,80 - от перка уклонение


phys = 6,5 * 38 * 1,45 * 1,15 * 0,95 * 0,8 = 313 урона нанесет стек мастеров каждым выстрелом, но кроме физического повреждения наносится 10% дополнительного урона холодом.


elem_mod:

0,1 - 10% от ХС

0,86 - 14% защиты от магии

elem: 313 * 0,1 * 0,86 = 26


total = 339 урона


Из 3 приведенных примеров для Лучников наилучшим вариантом оказалась бы стрельба. Худшим - ХС. Но в армии кроме Лучников есть и другие, не менее важные стеки, которые не получают бонуса от стрельбы. Если вы делаете ставку на Единороги + Танцоры - то стоит задуматься о целесообразности перка стрельба.


Пример 4:

15 Боевых Единорогов (63 атаки, 7% урона в ближнем бою, перк - нападение, нападение, ББ)

бьют по

костяным драконам (68 защиты, 5% защиты в ближнем бою, перк - защита, защита).


Средний урон единорога с ББ - 16.


Так как атака меньше защиты, то используем вторую формулу:

att_mod = 1/(1+(68-63)*0,05) = 0,8


phys_mod:

1,07 - от 7% урона в ближнем бою

0,95 - от 5% защиты в ближнем бою

1,20 - от развитого нападения

0,80 - от развитой защиты


phys = 16 * 15 * 0,8 * 1,07 * 0,95 * 1,20 * 0,8 = 16 * 11,71 = 187 повреждений нанесет стек единорогов.


Пример 5:

15 Боевых Единорогов (63 атаки, 7% урона в ближнем бою, перк - нападение, нападение, ХС)

бьют по

костяным драконам (68 защиты, 5% защиты в ближнем бою, перк - защита, защита).


Средний урон единорога - 15.


Так как атака меньше защиты, то используем вторую формулу:

att_mod = 1/(1+(68-63)*0,05) = 0,8


phys_mod:

1,07 - от 7% урона в ближнем бою

0,95 - от 5% защиты в ближнем бою

1,20 - от развитого нападения

0,80 - от развитой защиты


phys = 15 * 15 * 0,8 * 1,07 * 0,95 * 1,20 * 0,8 = 175 повреждений нанесет стек единорогов, но кроме физического повреждения наносится 10% дополнительного урона холодом.


elem_mod:

0,1 - 10% от ХС

0,86 - 14% защиты от магии


elem: 175 * 0,1 * 0,86 = 15


total = 175+15 = 190 урона

Для единорога ХС оказалась бы чуточку полезней.


Пример 6:

На единорога архимаги положили карающий удар (+9 атаки)


И теперь атака единорога больше защиты дракона, а значит используем формулу 1:

att_mod = 1 + (72-68)*0,05 = 1,2


phys_mod:

1,07 - от 7% урона в ближнем бою

0,95 - от 5% защиты в ближнем бою

1,20 - от развитого нападения

0,80 - от развитой защиты


phys = 16 * 15 * 1,2 * 1,07 * 0,95 * 1,20 * 0,8 = 16 * 17,56 = 281 повреждений нанесет стек единорогов.


Если сравнивать 4 и 5 пример, то карающий удар на +9 увеличил итоговый урон на 50%


Пример 7 "ХС или ББ":

Для существ, у которых средний урон ниже 10 - выгодней брать ББ.


Нам нужно сравнить итоговый урон.

Если мы посмотрим на формулу итогового урона:


Итоговый урон = Существ в стеке * Базовый урон * Модификатор урона от атаки * Модификаторы физического урона + Доп урон


то заметим, что Существ в стеке, Модификатор урона от атаки, Модификаторы физического урона - не измены.

В зависимости от выбранного перка ХС или ББ меняется базовый урон и дополнительный урон.


Обозначим:

Существ в стеке * Модификатор урона от атаки * Модификаторы физического урона - через X

Средний урон существа - через Y


Тогда итоговый урон стека без перков ББ или ХС будет равен X*Y


ХС считается от итогового урона, в лучшем случае - итоговый урон * 1,1. С учетом артов и перков на маг защиту - это число может быть меньше. Но для наших расчетов возьмем 1,1.


Итак, итоговый урон с ХС будет равен 1,1*X*Y


ББ прибавляет 1 к среднему урону, то есть вместо Y мы в формулу подставляем Y+1, или итоговый урон с ББ будет равен X*(Y+1)


Когда лучше ББ, чем ХС? Что бы это узнать - нужно просто сравнить:


1,1*X*Y < X*(Y+1) - разделим обе части на Х

1,1*Y < Y+1

0,1*Y < 1

или

Y < 10 - для существ, у которых средний урон ниже 10 - выгодней брать ББ.


Пример 8 "3 перка в атаку против 3 перков в защиту":

Перки на защиту дают больший эффект, чем перки на атаку.


Так как перки на атаку и защиту относятся к Модификаторам физического урона, то при расчетах они выступают в роли множителей:

Полученный урон в расчетах домножается на 1,3 (за эксперт атаки) и на 0,7 (за эксперт защиты), итого - 0,91

То есть при эквивалентных перках - урон упадет на 9%


Если сравнить 3 перка в атаку против 2 перка в защиту, то получится 1,3*0,8 = 1,04 - то есть 3 атаки практически компенсируются 2 перками на защиту.


Пример 9 "Стрельба против уклонения":

Перк уклонение даёт больший эффект, чем перк стрельба.

Так как перки на атаку и защиту относятся к Модификаторам физического урона, то при расчетах они выступают в роли множителей:

Полученный урон в расчетах домножается на 1,2 (за стрельбу) и на 0,8 (за уклонение), итого - 0,96

То есть при эквивалентных перках - урон упадет на 4%


Пример 10 "Кожа и уклон":

Уклон защищает от стрел в несколько раз лучше каменной кожи.


Житейский пример со стены:

У башни 100 атаки.

У гаргули 40 защиты.

Что лучше, уклон на 40% или кожа на +12?


Посмотрим на формулы. Так как атака башни больше защиты гаргули:

att_mod = 1 + (att-def)*0,05


в первом случае:

att_mod = 1 + (100-40)*0,05 = 4


во втором случае:

att_mod = 1 + (100-52)*0,05 = 3,4


Итоговый урон по гарге от башни сократился всего на 15% вместо 40% от уклона.


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


Пример 11 "Перки в атаку и статы в атаку":

Перки в атаку дают бОльший эффект, чем статы в атаку (от образования).


ТЭ и ЛЭ любят добавлять в свой билд перки с ветки образования. Начальное образование дает 3 свободных стата (для 12-15 уровней), которые обычно кидают в атаку. Но что лучше, еще один перк в атаку (если их взяли всего 2), ХС, ББ или полученные статы от образования?


Рассмотрим ТЭ 15 уровня. без перков.

10 фур (55 атаки, 6средний урон) бьют на охоте танцующих со смертью (3 защиты).


Так как перков нет, то итоговый урон равен:

att_mod = 1 + (55-3)*0,05 = 3,6

phys = 10 * 6 * 3,6 = 216


Возьмем следующие перки: 3 атаки (модификатор 1,3), ББ (средний урон фур вырастает до 7), ХС (итог домножаем на 1,1)


phys = 10 * 7 * 3,6 * 1,3 * 1,1 = 360,36


Если возьмем перки: 2 атаки (модификатор 1,2), ББ (средний урон фур вырастает до 7), ХС (домножаем на 1,1 итог) и образование (+3 в атаку)


att_mod = 1 + (58-3)*0,05 = 3,75

phys = 10 * 7 * 3,75 * 1,2 * 1,1 = 346,5

Как мы видим, 3 стата с образования дают меньше урона.


Перки из образования для ЛЭ в стрелком билде могут быть оправданными, ибо перки в атаку не добавляют урона друидам и мастерам в стрелковой атаке.


Пример 12 "На сколько увеличивается урон, от 3 перков в атаку, ББ и ХС":

Если мы посмотрим на Пример 11, то можем увидеть увеличение урона от связки атака+ББ+ХС с 216 до 360 урона или на 66%.


Эффективность усиления зависит от базового урона юнита. Чем меньше база - тем больше бонус.


Так ББ для обсидиановых гаргуль увеличивает базу с 1,5 до 2,5 или на 66% больше урона только от ББ.

Если можно было бы взять связку 3 атаки+ББ+ХС гаргулям, то их урон увеличился бы на 138%


Да, да, вы не ослышались... гаргули и ББ... Мечтать не вредно... Гаргули взяты для примера. В реальных условиях получить +1 к минимальному и максимальному повреждению гаргулий возможно только с помощью сета наемника или охотничьих артов.


Если же взять сумеречных драконов, то ББ увеличивает базу с 57,5 до 58,5 или на 1,7%. А итоговый урон всего на 45%


Бонус от ББ для существ 6-7уровня ничтожен, из-за их высокого базового урона.


Пример 13 "ХС или еще одна атака":

ХС дает бОльший эффект, чем еще одна атака


Предположим у вас есть возможность взять еще один перк из ветки атака, и вы в раздумьях - взять еще одну атаку или ХС.


Рассмотрим возможные случаи:

1. взята 1 атака:

Взяв дополнительную атаку мы заменим множитель 1,1 на 1,2 или увеличим итоговый урон всего на 9,09%


2. взято 2 атаки:

Взяв дополнительную атаку мы заменим множитель 1,2 на 1,3 или увеличим итоговый урон всего на 8,33%


10% бонуса от ХС смотрятся выгодней.


Пример 14 "Крафт с игнором, если у врага больше 20 защиты":


Многие из вас слышали эту фразу. Она получается из-за того, что если у юнита 20 защиты - мы снимаем крафтом на I10 - минимум 2 защиты и увеличиваем урон на 10%


Предположим стек в 54 фурки (55 атаки, перки - 3 атаки, ББ, ХС) бьет на охоте Принцесс Ракшас (20 защиты)


att_mod = 1 + (55-20)*0,05 = 2,75


total = 54 * 7 * 2,75 * 1,3 = 1351,35 * 1,1 = 1486,485

1351,35 - физический урон, к которому добавляется +10% ХС.


Оденем 10% дополнительного урона огнем:


phys = 54 * 7 * 2,75 * 1,3 = 1351,35

доп урон от ХС = 1351,35 * 0,1 = 135,135

доп урон от F10 = 1351,35 * 0,1 = 135,135

Итоговый дополнительный магический урон = 270,27


Итоговый урон = 1351,35 + 270,27 = 1621,62

Увеличение урона произошло не на 10%, а всего на 9,09%. Это связано с механикой расчета дополнительного магического урона. Если бы мы убрали ХС в обоих случаях - мы бы получили свои 10% увеличения урона.


Снимем 10% дополнительного урона огнем и оденем 10% игнора:


При расчетах у Ракшас будет 18 брони.


att_mod = 1 + (55-18)*0,05 = 2,85


total = 54 * 7 * 2,85 * 1,3 = 1400,49 * 1,1 = 1540,53

1400,49 - физический урон, к которому добавляется +10% ХС.


Как мы видим, обычный стихийный крафт оказался полезнее, чем аналог с игнором. Это связано с большим разрывом между атакой атакующих и защитой обороны. Усиление от игнора получилось всего 2,85/2,75 = 3,66%


Если бы атака и защита были бы близки, либо же защита была больше 20 - то и соотношение получилось бы более выгодным.


Найдем идеал для наших фурок:


Базовая атака по любому юниту с защитой Y:

att_mod = 1 + (55-Y)*0,05 или если мы раскроем скобки:

att_mod = 3,75 - 0,05*Y


phys = 54 * 7 * att_mod * 1,3 = 54 * 7 * 1,3 * (3,75 - 0,05*Y)

elem = phys * 1,1


Вариант с F10 изменит только elem:

phys = 54 * 7 * att_mod * 1,3 = 54 * 7 * 1,3 * (3,75 - 0,05*Y)

elem = phys * 1,2


Вариант с I10 изменит только phys:

phys = 54 * 7 * att_mod * 1,3 = 54 * 7 * 1,3 * (3,75 - 0,05*0,9*Y)

elem = phys * 1,1


Если мы будем сравнивать F10 и I10 - то заметим общие части, которые можно упростить, получим:

1,2 * (3,75 - 0,05*Y) = 1,1 * (3,75 - 0,05*0,9*Y)

4,5 - 0,06 * Y = 4,125 - 0,05 * Y

0,375 = 0,01 * Y

Y = 37,5


При защите более 37 выгодно брать I крафт для случая, когда атака вашего ударного стека равна 55. Аналогично можно расчитать и для другого показателя атаки.


Итог: в лесу почти всегда выгодней стихийный урон.


P.S. Einwill предложил формулу:


"Выгодно брать игнор, когда Защита > 10+ половина Атаки"


P.P.S. Существует мнение что ХС полностью или частично игнорит резисты с артов и перков. Точного ответа я не нашел. В данной статье при расчетах дополнительного урона от холодной стали принималась во внимаение защита от магии.

метки:
Механика игрыПрочее
Комментарии
1 / 01.04.2010 12:23 / Maximum_Damange [15] ?
Если у вас есть интересные вопросы - пишите. Сделаем вторую часть.

Ответ редакции:

Maximum_Damange: планируется:
1. Сравнение Меча Власти 40% и рубина 50%
2. Сравнение Меча Власти 4х7% и Власти 4х10%
в том числе и с учетом цены боя
3. Сравнение 5x10% на мече атакера против 3xD10 на броне дефера
4. Сравнение фуллкрафт госа.
Maximum_Damange: 5. про защиту - стойкость + уклон или сопративление магии+ сопративление(+4 к защите)
Maximum_Damange: 6. Оценить сбор и атакерские перки
7. Пример с воздаянием через БД и кольцами воина
Maximum_Damange: 8. когда лучше статы, и когда лучше перки в атаку, в зависимости от атаки и защиты
Maximum_Damange: 9. Что лучше - благословение или кара? Бафы и дебафы.
Maximum_Damange: 10. 120% зверобой копьё или меч
11. МО и зверобой на охоте. На сколько новый сет дает больше урона.
2 / 03.04.2010 22:48 / KPbICC [14] ?
Цитата: Maximum_Damange
total = 10 * 3 = 35
Ошибочка (начало текста).
Очень много букв. Надо будет почитать на досуге.

Ответ редакции:

Maximum_Damange: fixed
3 / 03.04.2010 22:57 / LoneFenix [6] ?
4й.

Информативно Т_Т
4 / 03.04.2010 23:59 / Темный_Серёга [13] ?
норм
5 / 04.04.2010 00:01 / Rymanion [11] ?
Хотелось бы прочитать и про защитные перки побольше, что лучше использовать: стойкость + уклон или сопративление магии+ сопративление(+4 к защите)
Статья понравилась, спасибо автору!

Ответ редакции:

Maximum_Damange: Добавил Ваш пример в список второй части.
6 / 04.04.2010 00:07 / Medium_MG [13] ?
в примерах 1, 2, 3 у скелов скорее всего имелся ввиду перк уклонение, а не стойкость, когда писалось
Цитата: Maximum_Damange
0,80 - от перка стойкость

а так пока читаю, нравится...

Ответ редакции:

Maximum_Damange: В бою была стойкость. Считал как уклон. Добавил комментарий. С уклоном считается интересней.
7 / 04.04.2010 00:19 / человек5 [11] ?
Ух, Ё.Пожалели б читателей, после интегрального кода на устройство:)

Ответ редакции:

Maximum_Damange: В половине примеров расчеты и выводы на уровне 6 класса.
8 / 04.04.2010 00:29 / человек5 [11] ?
Maximum_Damange, дык, если бы стиль был соответствующий)
З.Ы.Вы меня не забаните, если я скажу *многациффер ?
9 / 04.04.2010 00:31 / _mk-ua_Ermac [14] ?
Мне вот интересно откуда брался коэффициент  phys_mod, откуда взяты цифры(как можно узнать их)...
Спс за статью!

Ответ редакции:

Maximum_Damange: phys_mod берется с описания перка. Если там сказано - \"увеличение атаки в ближнем бою на 10%\", то и модификатор будет 1,1
10 / 04.04.2010 01:23 / GlebHp [12] ?
многое и так знал, но теперь будет какую ссылку кидать в ответ на подобные вопросы. Спасибо огромное.
11 / 04.04.2010 02:06 / FosteR-TszuY [13] ?
спс за матчасть, но то про что я не знал написали в "ЗЗЫ" (
12 / 04.04.2010 05:34 / Mikka [12] ?
Про перк "Воздаяние". Информация о том, что он даёт именно элементальный, а не физический урон проверена? Из описания перка такого не следует, а значение для боя этот факт иметь может.

Ответ редакции:

Maximum_Damange: В ХоММ 5 урон был физический.
13 / 04.04.2010 08:32 / Бог [11] ?
А не проще сделать програмку, для подобных сравнений?  
14 / 04.04.2010 09:11 / Azaze1 [11] ?
циферки... циферки...
а так нихрена и не понял...
куча формул...
хочу чтобы всё было попроще!
15 / 04.04.2010 09:28 / KrogZZ [15] ?
Интересно  
Имхо, "3. Сравнение 5x10% на мече атакера против 3xD10 на броне дефера" лучше будет рассматривать против 4xD10, т.к. дефер будет брать щит, скорее всего.
16 / 04.04.2010 09:43 / Raptor [12] ?
круто. однозначно в десятку лучших работ дейли. это вам не ОИФ описывать. в некроуголке довольно часто подымается тема "что лучше - навык уклон или 3 стата от образования в защите" и прочие такого типа. Сходу не осилил, завтра дочитаю. Макс Дамадж твердая 5ть!

Ответ редакции:

System_S: Попробуй ОИФ описать, коли кажется таким простым делом.
17 / 04.04.2010 10:00 / Death_Kate [13] ?
Цитата: Maximum_Damange
Существует мнение что ХС полностью или частично игнорит резисты с артов и перков. Точного ответа я не нашел.

Проверяла на единорогах, ХС работает как оружейный крафт - т.е. резистится только 3% урона от нее.
18 / 04.04.2010 10:24 / Mr_MYSTIC [11] ?
реально тёмный лес...
19 / 04.04.2010 10:55 / REWesker [12] ?
Цитата: Maximum_Damange
1. стек с 50 атаки

dmg = 10

att_mod = 1+(50-10)*0.05 = 3

total = 10 * 3 = 30

2. стек с 60 атаки

dmg = 10

att_mod = 1+(60-10)*0.05 = 3.5

total = 10 * 3.5 = 35

Итоговый урон увеличился всего на 16%. Одна из главных допущенных ошибок в первоначальной гипотезе (про +50% урона) происходит из-за неправильного понимания принципа расчета процентов и незнания точной формулы для расчета.

эм... увеличение урона в процентах считается от базового урона, когда атака=защите. То есть, урон увеличился на 50% как и должно быть.
20 / 04.04.2010 10:58 / GalMk [7] ?
Много вато букоф.Но прочитал, не всё правда понял но стало понятней)

Возможность комментировать доступна после регистрации