Time = Level x 4 Time - текущее значение времени на возрождение Level - текущее значение уровня героя
Gold = Level x 30 Gold - текущее значение потерянного золота из-за смерти
TotalCost = ∑(Cost<i>) TotalCost - текущее значение стоимости всех предметов в инвентаре i - количество предметов в инвентаре ∑ - сумма i множителей Cost<i> - значение стоимости предмета под номером i в инвентаре
Str = Str_base + Str_inc Str - текущее значение силы Str_base - базовое значение силы Str_inc - значение дополнительной силы от способностей и предметов
Agi = Agi_base + Agi_inc Agi - текущее значение ловкости Agi_base - базовое значение ловкости героя Agi_inc - значение дополнительной ловкости от способностей и предметов
Int = Int_base + Int_inc Int - текущее значение интеллекта Int_base - базовое значение интеллекта героя Int_inc - значение дополнительного интеллекта от способностей и предметов
HP = HP_base + Str x 19 + HP_inc HP - текущее значение здоровья HP_base - базовое значение здоровья (на данный момент, у всех героев: BacHP = 150) HP_inc - значение дополнительного здоровья от способностей и предметов
MP = Int x 13 + MP_inc MP - текущее значение маны MP_inc - значение дополнительной маны от способностей и предметов
RHP = RHP_base + Str x 0.03 + RHP_inc + RHP_dec x (1 – MR) RHP - текущее значение регенерации здоровья RHP_base - базовое значение регенерации здоровья RHP_inc - значение дополнительной регенерации здоровья от способностей и предметов RHP_dec - значение отрицательной регенерации здоровья от способностей и предметов (например: способность Rot героя Pudge наносит ему урон, который гасится защитой от магии)
RMP = RMP_base + (Int x 0.04) x (1 + RMP_inc% / 100) + RMP_inc RMP - текущее значение регенерации маны RMP_base - базовое значение регенерации маны RMP_inc - значение дополнительной регенерации маны от способностей и предметов RMP_inc% - значение дополнительной процентной регенерации маны от способностей и предметов
Armor = Armor_base + Armor_inc + Agi / 7 Armor - текущее значение защиты Armor_base - базовое значение защиты Armor_inc - значение дополнительной защиты от способностей и предметов
DR = (Armor x 0.06) / (1 + Armor x 0.06) DR - текущее значение понижения урона
Dodge = 1 - (1 - Eva) x (1 - TrigEva) x (1 - Miss) Dodge - текущее значение шанса избежать физический урон Eva - значение максимального шанса на уворот среди способностей и предметов TrigEva - значение максимального шанса на тригеррный уворот среди способностей и предметов Miss - значение максимального шанса на промах среди способностей и предметов
PEHP = HP x (1 + 0.06 x Armor) / (1 - Dodge) + PEHP_inc PEHP - текущее значение живучести против физического урона PEHP_inc - значение дополнительного PEHP от способностей и предметов
MR = [1 - (1 - MR_base) x (1 - MR_skill) x (1 - MR_item)] x 100 MR - текущее значение магической защиты MR_base - базовое значение магической защиты (на данный момент, у всех героев: MR_base = 0.25) MR_skill - значение максимальной среди способностей магической защиты MR_item - значение максимальной среди предметов магической защиты
MEHP = HP / (1 - MR) + MEHP_inc MEHP - текущее значение живучести против магического урона MEHP_inc - значение дополнительного MEHP от способностей и предметов
MS = (MS_base + MS_item + MS_skill) x (1 + MS_item1% / 100) x (1 + MS_item2% / 100) x (1 + MS_skill% / 100) MS - текущее значение скорости передвижения MS_base - базовое значение скорости передвижения MS_item - значение максимальной скорости передвижения среди предметов MS_skill - значение скорости передвижения от способностей MS_item1% - значение процентной скорости передвижения от предмета Yasha MS_item2% - значение процентной скорости передвижения от предмета Sange and Yasha MS_skill% - значение процентной скорости передвижения от способности
Attack = (Attack_base + Attribute) + (Attack_base + Attribute) x Attack_inc% + Attack_inc Attack - текущее значение атаки Attack_base - базовое значение усредненной атаки (Например: 10-20, Attack_base = 15) Attribute - текущее значение основного параметра героя (сила, ловкость, интеллект) Attack_inc% - значение процентного увеличения атаки от способностей и предметов Attack_inc - значение дополнительной численной атаки от способностей и предметов
AC = AC_base / (1 + (IAS + Agi) / 100) AC - текущее значение задержки между атаками AC_base - базовое значение задержки между атаками IAS - прирост скорости атаки
Range = Range_base + Range_inc Range - текущее значение дальности атаки Range_base - базовое значение дальности атаки Range_inc - значение дополнительной дальности атаки
Bash = 1 - ∏(1 - B<i>) Bash - текущее значение шанса на баш i - количество шансов на баш ∏ - произведение i множителей B<i> - шанс на баш под номером i
CS = 1 - ∏(1 - СS<i>) CS - текущее значение шанса на критический удар i - количество шансов на критический удар ∏ - произведение i множителей CS<i> - шанс на критический удар под номером i
LS = LS_skill + LS_item + LS_inc LS - текущее значение Life Steal LS_skill - значение максимального Life Steal среди способностей LS_item - значение максимального Life Steal среди предметов LS_inc - значение дополнительного Life Steal
Расчет критических ударов в DPS CritDPS одинаков для героев и с ближним и с дальним типом атаки: - при совпадении нескольких критов на удар всегда работает последний из билда
- при совпадении крити и баша на один удар крит работает всегда
Алгоритм: - Сортируем по порядку закупа/прокачки в билде.
- Начинаем цикл с самого позднего предмета/способности.
- Считаем по методу гашения процентов общий шанс его и предыдущих критов по начальным шансам.
- Вычитаем из этого шанса полученные шансы предыдущих критов и получаем шанс для этого крита (полученный шанс отличается от начального).
- Суммируем произведения урона критов, шанса критов, урона героя и делим сумму на AC.
Расчет башей в DPS BashersDPS для героев с ближним типом атаки. Алгоритм: - Суммируем произведения урона башей на шанс башей и делим сумму на AC.
BashersDPS для героев с дальним типом атаки. Алгоритм: - Сортируем баши и криты по порядку закупа/прокачки в билде.
- Делаем шаги 2-4 для критов, чтобы иметь полученные шансы для критов.
- Начинаем цикл с самого позднего предмета/способности.
- Считаем по методу гашения процентов общий шанс баша и предыдущих критов и башей по начальным шансам.
- Вычитаем из этого шанса полученные шансы предыдущих критов и башей и получаем шанс для этого баша.
- Суммируем произведения урона башей на шанс башей и делим сумму на AC.
PDPS_melee = Attack / AC + CriticalsDPS + PDPS_inc PDPS_range = Attack / AC + CriticalsDPS + BashersDPS + PDPS_inc PDPS_melee - текущее значение физического урона в секунду для героя с атакой ближнего боя PDPS_range - текущее значение физического урона в секунду для героя с атакой ближнего боя PDPS_inc - значение дополнительного физического урона в секунду от предметов и способностей
MDPS_melee = Attack_mag / AC + BashersDPS + MDPS_inc MDPS_range = Attack_mag / AC + MDPS_inc MDPS_melee - текущее значение магического урона в секунду для героя с атакой ближнего боя MDPS_range - текущее значение магического урона в секунду для героя с атакой ближнего боя Attack_mag - значение дополнительного магического урона за удар от предметов и способностей MDPS_inc - значение дополнительного магического урона в секунду от предметов и способностей
|