| Airborne [8]  (23.12.2017 01:46)+0 (0 / 0)- 
 Исходные данные: 
 Урон (Y) - наше искомое значение
 Базовый урон (B) - мин значение 5, макс значение 9 (урон на 0м лвле при силе 3)
 Уровень (L) - уровень персонажа
 Урон оружия (W) (минимальный урон оружия добавляется к минимальному, максимальный - к максимальному)
 Мастерство владения оружием (U) - усиливает только урон оружия, а не весь урон. +7% к урону оружием за каждое владение
 Мощность урона (M) Мощность урона выбирается в соответствии с профилем атаки (через if/then, думаю)
 Мощность крита (K)Влияние статов (S) - влияние наших статов на профильный урон
 Колющий: S = Сила * 0,60 + Ловкость * 0,40
 Рубящий: S = Сила * 0,70 + Ловкость * 0,20 + Интуиция * 0,20
 Дробящий: S = Сила * 1
 Режущий: S = Сила * 0,60 + Интуиция * 0,40
 
 Формула урона выглядит так:
 Y = (B+L+S+W*(1+0,07*U))*(1+M/100) для обычного удара
 
 Y = (B+L+S+W*(1+0,07*U))*(1+M/100)*2*(1+K/100) - для критического удара (умножаем сначала на 2, потому что крит наносит
 даже без мощи крита в 2 раза больше урона. А потом уже умножаем полученный урон на мощь крита).
 
 Для минимального и максимального урона формулы выглядят следующим образом:
 Y(min) = (B(min)+L+S+W(min)*(1+0,07*U))*(1+M/100)
 Y(max) = (B(max)+L+S+W(max)*(1+0,07*U))*(1+M/100)
 
 Вероятности атак оружия:
 
 Ничтожно редки 1% - 9%
 Редки 10% - 19%
 Малы 20% - 39%
 Временами 40% - 69%
 Регулярны 70% - 89%
 Часты 90% - 99%
 
 Перейдем к броне, защите от урона и пробою брони.
 
 Параметр БРОНЯ является *плавающим*. Для примера возьмем осаду.
 Броня по частям тела:
 Голова 44-192
 Корпус 39-192
 Пояс 40-217
 Ноги 55-232
 Как работает пробой брони? Рассмотрим на примере удара ножом с пробоем в 70% (Pr) в голову осаднику. Расчетный урон (по формуле выше) у нас Y.
 Обязательно необходимо учитывать тот факт, что пробой работает только на *плавающей* части брони. У нас *плавающая* часть являет собой диапазон 44-192. Это значит, что урон меньше 44 не может не поглотиться по определению.
 Для примера возьмем урон Y = 200.
 Для начала *кидается кубик*, то-есть, с помощью генератора случайных чисел в диапазоне от 44 до 192 решается, какая броня *сработает*
 на данный удар. Br=random(44,192). Допустим, выпало число 100. Наш пробой на ноже в 70% означает, что сработает лишь 30% от сыгравшей брони, то есть, броня должна поглотить всего 30 урона. НО!!! Меньше минимального значения брони (у нас он 44) поглотиться не может по определению.
 Поэтому, после *работы* брони наш урон Y1 будет следующим: Y1 = Y - (100 - 100 * 70/100) = Y-30 = Y-44
 Сама формула имеет вид:
 
 Y1 = Y - (Br-BR*Pr/100). (в коде удобно будет скобки (Br-BR*Pr/100) представить отдельной переменной для упрощения проверки на допустимость
 поглощаемого урона)
 
 при условии, что Y=200, имеем:
 Y1 = 156
 
 Обязательно необходимо ввести ограничение, что броня не может уменьшать урон Y более, чем в 3 раза (во избежание ударов на 0).
 
 После брони начинает работать Защита от урона.
 
 Точная формула зависимости поглощения урона от параметра *Защита от урона*:
 
 x=(1-0.5^(N/250))*100, где:
 
 х - процент поглощаемого урона
 N - наш параметр *Защита от урона*
 Пример: у нас 400 защиты от урона, имеем:
 
 x=(1-0,5^(400/250))*100 = (1-0,5^1,6)*100 = 67,0123% . То есть, при защите от урона в 400 ед по нам пройдет лишь 33% урона.
 Еще необходимо учесть такой момент, как атака старшего уровня по младшему. В таком случае защита от урона у младшего уровня работает не на 100%. Если атакующий игрок на 1 уровень выше, то показатель защиты от урона (N) предварительно умножаем на 0,83, если 10-ый - на 0,69, если 11-ый - на 0,58.
 
 В нашем примере (оба бойца одного уровня) урон после работы брони (Y1) равен 156. При защите от урона в 400 единиц, итоговый урон будет:
 156*0,33 = 51,48 = 51 (округляем)
 
 При действии приемов на усиление удара (сильный удар, удачный удар, усиленные удары) значение урона этих приемов можно как добавлять к
 полученному с помощью расчетов урону, так и добавлять в саму формулу начального урона (Y = (B+L+S+W*(1+0,07*U))*(1+M/100)) к параметрам B,L,S и W.
 В разное время по-разному пробовали. От этого зависел, к примеру, сумасшедший руль уворотов в свое время.
 
 Завтра постараюсь выложить расчет урона на примере реальных комплектов и боев.
 
 Эти формулы, разумеется, придуманы не мной, а честно собранные и позаимствованные со скролов знающих людей в старом БК. За что им большое заочное спасибо. Формулы проверены временем и большим количеством игроков.
 
 Расчетные примеры и предположения относительно работы кубика и т.д. - мои, тут могу ошибаться. так что, если кто заметит неточность - поправляйте. Спасибо.
 jk-fleks [8] (18.09.11 05:59)
 Позновательно и непонятно )))
 Kennedy [8] (18.09.11 07:53)
 Базовый урон (B) : 5-9
 Уровень (L) : 8
 Урон оружия (W) : Меч темного пламен+5 : 16-35
 Мастерство владения оружием (U) : в данном комплекте 12
 Мощность урона (M) : Мф. мощности удара: 5%
 Мощность крита (K) : Мф. мощности критического удара: 120%
 Влияние статов (S) : Сила 30
 Ловкость 15
 Интуиция 66+4 (Сова)
 Профильный урон рубящий (72,73%). Подставляем эти статы в формулу расчета рубящего урона:
 Рубящий: S = Сила * 0,5 + Ловкость * 0,25 + Интуиция * 0,25 = 30*0,5 + 15*0,25 + 70*0,25 = 15+3,75+17,5=36,25.
 S=36,25
 Теперь расчитаем минимальный урон для меча :
 Y(min) = (B(min)+L+S+W(min)*(1+0,07*U))*(1+M/100)
 а это равно:
 (5+8+36,25+16*(1+0,07*12))*(1+5/100) = 78,69*1,05 = 82,6245 . Округляем до ближайшего целого значения, имеем
 минимальный урон МТП+5 = 83
 Расчитаем максимальный урон :
 (9+8+36,25+35*(1+0,07*12))*(1+5/100) = 117,65*1,05 = 123,5325 = 124.
 Критовый урон:
 Минимальный: 83*2*(1+K/100) = 83*2*(1+120/100) = 83*2*2,2=365,2=365
 Максимальный: 124*2*2,2=545,6=546
 Дикая удача ,к слову, наносит именно этот самый максимальный крит :)
 
 Это урон без учета брони противника и без учета различных усилений (Сильный удар и т.д.)
 
 Теперь рассмотрим этот урон на фоне самого стандартного осадника с 50 выносливости.
 Имеем брони:
 Голова 44-192
 Корпус 40-195
 Пояс 40-217
 Ноги 55-232
 Защита от урона (нас интересует защита от рубящего урона на голове) : 395 (комплект+выносливость+каст защита от урона (100) + элик (100) )
 Рассмотрим на примере удара в голову
 Сначала выведем минимальный удар (а это значит, что броня сработала по максимуму). Пробоя брони на мече нет, а это значит:
 83-192 = -109. Имеем минусовый результат. Это значило бы, что удар пройдет на 0. Именно поэтому я и говорил, что броня не должна минусовать урон более, чем в 3 раза. 83/3=27,6666=28. - урон после работы брони.
 Теперь защита от урона. её у нас 395. по формуле x=(1-0.5^(N/250))*100 высчитываем, сколько % урона от 28 у нас отнимется защитой от урона:
 х=(1-0,5^(395/250))*100=66,55% . Теперь эти 66,55% вычитаем из 28. имеем: 28-18,634=9.
 минимальный урон меча по упитому осаднику будет равен 9
 та же процедура с максимальным уроном меча и минимально срабатываемой защитой дает нам результат :
 (124-44)-(124-44)*0,6655 = 80-80*0,6655=26,76=27. Это максимальный удар без усилений по осаднику в голову (обычный удар)
 Теперь рассмотрим крит (прямое попадание, не в блок):
 Минимальный = (365-144)*(1-0,6655) = 73,9245 = 74
 Максимальный = (546-144)*0,3345 = 134,469=134.
 |