Шанс_попасть Шанс попасть = Навык_оружия - Штраф_за_расстояние + Бонус_за_восприятие - Штраф_за_силу - Штраф_за_преграды - Штраф_за_укрытия - Штраф_за_прицельный_выстрел - Штраф_за_выбитый_глаз + Перки_оружия .
Штраф за расстояние
Расстояние_в_гексах_до_цели * Модификатор_расстояния
Модификатор расстояния
обычно равен 4, но при травме глаза он равен 12
Бонус за восприятие
Восприятие * Модификатор_точности_оружия
Модификатор точности оружия
обычно равен 8. Для оружия с перком Дальнобойность он равен 16, для оружия с перком Снайперское он равен 20
Штраф за силу
равен 20 за каждую недостающую единицу силы: см. Штраф за силу
Штраф за преграды
int blockers = map.GetCrittersPath( hx, hy, tx, ty, 0.0f, dist, FIND_LIFE, null ); if( !target.IsKnockout() ) blockers--; toHit -= 10 * blockers;
Штраф за укрытия
Добавлены "укрытия". Шанс попадания по цели находщейся за препятствием уменьшается на Х. Где х может равнятся 120 ( если цель прямо за укрытием ), 80 ( если цель на расстоянии одного гекса от укрытия ) и 50 ( два гекса от укрытия ). Работает в тестовом режиме.
Штраф за прицельный выстрел
Часть тела | Штраф (%) |
---|---|
Торс | 0 |
Голова | 40 |
Глаза | 60 |
Рука | 30 |
Нога | 20 |
Пах | 30 |
Часть тела | Штраф (%) |
---|---|
Торс | 0 |
Голова | 20 |
Глаза | 30 |
Рука | 15 |
Нога | 10 |
Пах | 15 |
Штраф за выбитый глаз
равен 25. Также статус оказывает влияние на модификатор расстояния.