Headrock's Assorted Modifications (H.A.M)
Продолжение описания нововведений Н.А.М. Представленные здесь изменения способны кардинальным образом изменить геймплей и дают абсолютно новую жизнь любимой игре.
Новая Система Управляемого Огня на Подавление
Ограничение использование автоматического огня на подавление в JA2 было предметом дискуссий последние пару лет. Важность автоматического оружия в JA2 была ограниченна, что позволяло многим говорить о нехватке реалистичности. В игре действительно преобладали меткие одиночные выстрелы, а не плотный автоматический огонь.
JA2 должна включать систему огня на подавление. Одна из главных причин, по которым система не работала в игре, было то, что она КРИВАЯ. Фактически любой персонаж мог подвергнуться действию подавляющего огня ОДИН или ДВА раза за ВСЮ игру, и в дальнейшем огонь на подавление не оказывал на него никакого влияния!
Для исправления этого сделан фикс, который позволял накапливать эффекты от подавления. В дополнение, переработана система подавления, добавлено множество новых элементов, и вынесены настройки для ее контроля в HAM's INI файл. С этими настройками вы можете сделать игру более напряженной и интересной. Даже AI сможет использовать автоматическое оружие чаще, чем раньше.
Краткий обзор - как работает подавление?
Я не хочу углубляться в детали, поэтому только базовые тезисы.
* Когда пуля пролетает мимо персонажа, она добавляет "Очки подавления" этому персонажу. Каждая пуля может принести до 3 очков подавления, в зависимости от того, насколько далеко от цели она пролетела. Если цель лежит или сидит, шанс добавления очков подавления уменьшен. Стоящая цель чаще всего получает максимальное количество.
* Персонаж также имеет некоторое значение "Выдержки", которое определяет, насколько сильно действует на него подавление. Оно базируется на опытности и морали персонажа.
* Когда атака произведена, программа сравнивает "Очки Подавления" персонажа с его "Выдержкой". Результат - количество ОД которые персонаж потеряет от Подавления (это основной эффект от подавления в JA2).
* За каждые потеряные 2 ОД, персонаж также теряет 1 очко морали.
* Персонажи высокого уровня иногда могут использовать эти теряемые ОД для смены положения. После смены положения, в персонажа труднее попасть, и сам он начинает лучше стрелять (потому что вы получаете бонусы к Шансу Попадания за стрельбу полежащему и даже сидящему). Неопытный персонаж обычно останется стоять, продолжая оставаться отличной целью для атаки.
В случае с обычным подавлением, финальная цель - уменьшить ОД цели, насколько это возможно. Если ОД цели упали меньше 5, она начинает терять ОД от своего следующего хода. Если персонаж получил -20 ОД, он может потерять весь свой следующий ход!
К несчастью, в обычной JA2 1.13, это не работало - цель могла потерять только 8 ОД за всю жизнь от подавления, что делало систему нерабочей.
Исправление системы подавления
Во-первых - Исправлено то, что персонаж не мог попасть под воздействие подавления больше одного раза в жизни. Для этого введены команды, которые обнуляют Флаг Подавления, значение, отображающее, как много ОД персонаж потерял от подавления, и также обнуляют Очки Подавления. В HAM, вы можете настроить действие этих очисток на каждый ход, или даже каждую атаку. В целом, результаты для двух этих методов примерно одинаковы, хотя некоторые различия все-таки есть.
Контроль силы воздействия Подавления
С HAM Beta 2.1, INI файл содержит настройки, определяющие мощность подавляющего огня. Более конкретно - они в процентах определяют, как много ОД может потерять персонаж под действием подавления.
Если это значение ставится выше 100, каждая атака вызывает большую потерю ОД, чем обычно. Конечным результатом всех атак может стать потеря ОД, морали, и получение Шока от Подавления (если включено - см. ниже), и может даже вызвать эффекты подавления у персонажей, которые раньше не были им подвержены благодаря своему высокому уровню.
Уменьшение этих значений меньше 100 снижает эффективность подавления (возможно вам будет необходимо сначала опробовать и другие значения, для определения подходящих настроек).
Максимум ОД теряющихся от Подавления, за ход, атаку или вообще
Есть 3 настройки в INI файле, которые определяют, как сильно может воздействовать Подавление на персонажа. Поскольку подавление доступно, теперь вы можете стреляя всей командой по одному противнику, привести к потере им большого количества ОД. Поэтому данные настройки определяю максимальное количество ОД, которое может быть потеряно от подавления.
* Maximum AP loss per attack
Определяет максимальное количество ОД, которое может быть потеряно от Подавления за 1 атаку.
* Maximum AP loss per turn
Определяет максимальное количество ОД, которое может быть потеряно от Подавления за 1 ход. Работает только если включен параметр очистки Подавления каждый ход (см. выше).
* Minimum threshold
Этот парметр контролирует минимальное значение, до которого может упасть количество ОД под действием Подавления. Используйте его, чтобы быть уверенным, что персонаж не будет пропускать несколько ходов подряд, находясь под массированным огнем.
Вы можете использовать значение "0" для первых двух параметров, что отменяет эти ограничения.
Вы не можете отключить параметр Minimum threshold, но при желании можете выставить ему минимальнео значение (например -100).
Шок от Подавления (Suppression Shock)
Это новая концепция, добавленная в формулу Подавления. Шок от Подавления отражает другие аспекты снижения эффективности действий под Подавляющим огнем. Основываясь на количестве ОД потерянных от Подавления, персонаж также подвергается шоку, который уменьшает его Шансы Попадания. Это делает персонажа менее метким и добавляет реалистичности в воздействие Подавляющего огня.
Персонаж подвергается Шоку от Подавления в зависимости от количества потерянных им ОД, и смягчения за счет Выдержки персонажа(смотри выше). Есть настройки INI которые устанавливают пропорции между потерей ОД и Шоком от Подавления. Вы можете также установить "абсолютный максимум" - ограничение максимального Шока, которому может быть подвержен персонаж.
Цель Шока от Подавления - отражение неспособности цели вести ответный огонь. В "стандартной" JA2 1.13, в результате Подавления, персонаж обычно ложится на землю, что делает его только более защищенным, и, в тоже время, дает ему бонусы к Шансу Попадания! Таким образом, главная задача Шока от Подавления - снижение меткости подвергшегося подавлению. Каждое очко Шока снижает Шанс Попадания на 5. Конечно высокоуровневые персонажи все еще остаются опасными, даже под действием Подавления.
Накопленные очки Шока от Подавления уменьшаются вдвое в начале хода персонажа. Таким образом, если персонаж уйдет из под огня на несколько шагов, действие Шока закончится.
Помните, что шок также накапливается от ран. Он работает таким же образом, снижая Меткость персонажа.
Наконец, ключевым элементом Шока от Подавления является "укрывание", еще одно добавление к Системе Подавления.
Сжаться от Страха
Укрывание, это еще одна новая концепция в системе подавления. Обычно, когда кто-то находится под действием подавления , он пытается "стать колобком", или прижаться к земле так, чтобы в него было труднее попасть.
Эффект этого проявляется в том, что Шанс Попадания любого, кто стреляет в такого персонажа уменьшается на основе очков "укрытия" шокированой цели. Чем сильнее шокирован персонаж, тем труднее в него попасть (до определенного предела, конечно).
В то же время, шок от подавления (если включен) делает укрывшегося персонажа еще менее метким.
Когда персонаж достигает предела своей Выдержки, он падает на землю и выдается сообщение "Персонаж укрылся в страхе!" . Это показывает, что персонаж подвергся концентрированному подавлению огнем.
Также есть настройки INI которые делают сжатие еще более важным. Когда эти настройки используются, любой персонаж, находящийся в статусе "укрывшегося" будет подвергаться большему или меньшему влиянию от огня на подавление с данного направления. Таким образом при появлении сообщения, вы знаете, что концентрированный огонь в данном направлении еще быстрее нейтрализует цель.
Помните, что формула "укрывания" в значительной мере НЕЗАВИСИМА от Шока от Подавления: потому что она учитывает и шок от ран. Однако раны дают гораздо меньше Шока по сравлению с огнем на подавление, так что такая комбинация является оптимальной.
Новые вынесенные настройки для "Укрывания"
В HAM 2.8, мы имеем новые настройки, определяющие, как работает в игре "укрывание".
Во-первых мы можем установить действие "укрывания",в зависимости от положения тела и частей тела. Идея заключается в том, что в лежачем положении действительно будет труднее попасть в цель, чем если она будет сидеть. Так что в сидячем положении, "укрывание" будет давать различные штрафы при попытке стрельбы по "укрывшемуся" в разные части тела. Это отражает стремление защитить например голову, в ущерб другим частям тела. Конечно вы можете просто не использовать эти настройки!
Далее, сделаны важные настройки, определяющие эффект "укрывания" в зависимости от того, насколько далеко находится цель от стрелка. По умолчанию, при дальности 10 и больше тайлов, стрелок получает полный штраф, если "укрывшаяся" цель находится ближе - штраф пропорционально уменьшается. На дальности в 1 тайл, вы просто не почувствуете штрафа. В HAM, вы можете установить минимальную дистанцию, делающую "укрывшегося персонажа" более неуязвимым. Если вы установите этот лимит низким (например 5 и ниже), вы должны будете подбираться к "укрывшемуся" персонажу вплотную, чтобы убить, получая в результате интенсивные бои на короткой дистанции, увеличивая эту дистанцию, вы будете приближаться к оригинальному геймплею JA2, где рулили дальние выстрелы! По умолчанию в HAM стоит 10, и это кажется оптимальным.
AI чаще использует огонь на подавление (Suppression Fire)
Настройки в INI-файле также позволяют контролировать как часто AI будет использовать автоматический огонь на подавление. Это важно, потому что Подавляющий огонь от AI более мощный и они могут выпустить гораздо больше пуль.
Настройки в INI-файле:
CLEAR_SUPPRESSION_COUNTER
Значения: 0/1/2
0 = JA2 1.13 default. Персонаж подвержен подавлению 1 раз за игру.
1 = Сбрасывает Подавление каждый ход.
2 = Сбрасывает подавление после каждой атаки.
разница между #1 и #2 весьма невелика.
SUPPRESSION_EFFECTIVENESS
Значения: 0 to 65535
0 = Подавление отключено. Никто не подвержен Подавлению.
100 = Подавление имеет "нормальную" эффективность.
200 = Подавление вдвое эффективно. Это значит, что оно ОЧЕНЬ эффективно, используйте вместе с ограничениями (ниже).
MAX_SUPPRESSION_АР_LOSS_PER_TURN
Значения: 0 до 255
8 = JA2 Default. Персонаж может потерять только 8 ОД в ход. Увеличивайте это значение для увеличения эффективности Подавления и уменьшайте - для еще большего снижения..
0 = Неограниченно.
MAX_SUPPRESSION_АР_LOSS_PER_ATTACK
Значение: 0 to 255
8 = JA2 Default. Персонаж может потерять только 8 ОД за атаку. Увеличивайте это значение для увеличения эффективности Подавления и уменьшайте - для еще большего снижения.
0 = Неограниченно.
MIN_LIMIT_SUPPRESSION_АР_LOSS
Значения: +127 to -128
0 = Подавление не может сделать ОД персонажа отрицательными. Максимум, что может сделать подавление - съесть все доступные ОД персонажа. Если ОД = 0, персонаж начнет следующий ход с ОД уменьшенными на 5. Это для тех, кто хотел бы приблизиться к старой формуле Подавления.
-5 = Позволяет подавлению доводить персонажа до -5 ОД (если огоноь был достаточно плотный). В этом случае персонаж теряет 10 ОД в начале своего следующего хода.
-20 = Установив лимит в -20, вы позволите Подавлению отнимать у персонажа достаточно ОД, чтобы он пропустил свой следующий ход. Конечно это будет происходить не очень часто, поскольку требует чень плотного и массированого огня на подавление. Рекомендуем такую настройку тем, кто хочет сделать Подавление сильной тактической составляющей игры.
Помните, что значения выше 0 устанавливать не рекомендуется. Более важно, что значения больше 5 делают Подавление бесполезным (без учета Шока от Подавления и "Укрывания").
SUPPRESSION_SHOCK
Значения: TRUE/FALSE
TRUE = Программа расчитывает шок для каждого персонажа под Подавлением. Очки шока ухудшают меткость персонажа, а также его способности к выполнению других действий (взлом дверей, установка бомб, и т.п.). Шок уменьшается вдвое в начале хода персонажа, и проходит, если ему удалось уйти из под огня на достаточное время.
FALSE = Шок от Подавления не действует. Также ограничивает действие "Укрывания"
SUPPRESSION_SHOCK_EFFECTIVENESS
Значения: 0 to 65535
100 = Обычное значение.
200 = Персонаж получает удвоенный эффект шока. Это может помочь получить воздействие шока на пресонажей, которые раньше были защищены высоким уровнем.
50 = Персонаж получает только половину эффекта шока.Это может сделать высокоуровневых персонажей полностью иммунными к шоку.
0 = Отключает Шок от Подавления (так же как выставление SUPPRESSION_SHOCK в FALSE)
MAXIMUM_SUPPRESSION_SHOCK
Значения: 0 to 255
30 = Персонаж может получить до 30 очков шока. Помните, что только низкоуровневые персонажи смогут реально достичь этого лимита.
0 = Отключает Шок.
Помните, что низкий лимит, автоматически снижает эффективность шока (как SUPPRESSION_SHOCK_EFFECTIVENESS). Это может сделать некоторых персонажей имунными к Шоку от Подавления.
AIM_PENALTY_PER_TARGET_SHOCK
Значения: 0 to 255
0 = Отключить "укрывание".
2 = Стрелок получает -2 к Шансу Попадания за каждую единицу шока у цели в лежачем положении. Если цель сидит, стрелок получит только -0.6 к Шансу Попадания за каждое очко шока. (рекомендованные настройки!)
3 = Стрелок получает -3 к Шансу Попадания за каждую единицу шока у цели в лежачем положении или -1, если цель пригнулась.
Помните, что раны тоже добавляют шок, и действуют независимо от Шока от Подавления. Однако с выключенной системой шока, вы врядли сможете достигнуть эффекта "укрывания".
COWER_EFFECT_ON_SUPPRESSION
Значения: 0 to 65535
100 = Укрывание не дает особых эффектов в зависимости от силы Подавления.
0 = Так же как и 100.
150 = Рекомендуемые настройки. После того, как цель укрылась, огонь на подавление оказывает на нее на 50% больше эффекта (Потеря ОД, потеря Морали, и т.п.) чем стрельба по не укрывающейся цели.
CTH_PENALTY_FOR_COWERING_PRONE_TARGET_DIVISOR
CTH_PENALTY_FOR_COWERING_CROUCHED_TARGET_HEAD_DIVISOR
CTH_PENALTY_FOR_COWERING_CROUCHED_TARGET_TORSO_DIVISOR
CTH_PENALTY_FOR_COWERING_CROUCHED_TARGET_LEGS_DIVISOR
Значения: 1 to 255
Эти параметры определяют, какие штрафы (AIM_PENALTY_PER_TARGET_SHOCK...) получает стрелок при стрельбе по укрывшейся цели в различных положениях или стрельбе вразличные части тела. Штраф делится на цифру, установленную в параметре. Если вы выставите все цифры одинаковыми, то штраф всегда будет одинаковым.
1 во всех полях = Положение тела или прицеливание в части тела не оказывают никакого воздействия на Штраф к Шансу Попадания.
1, 3, 4, 5 = HAM Default. Стрельба по лежащему укрывшемуся противнику дает вам полный штраф. Стрельба в голову сидящего укрывшегося противника дает 1/3 штрафа. Стрельба в тело сидящего укрывшегося противника дает 1/4 штрафа, а в ноги - 1/5. Это дает возможность дифференцировать шансы на попадание в укрывшуюся цель.
MIN_RANGE_FOR_FULL_COWERING_TARGET_PENALTY
Значения: 10 to 65535 в МЕТРАХ (не тайлах!)
100 = HAM Default. На дальности 10 тайлов и дальше, стрельба по укрывшемуся противнику получает полные штрафы (после учета параметров описанных выше).
260 = На дальности равной радиусу обзора и дальше, стрелок всегда будет получать полные штрафы за стрельбу по укрывшейся цели. Это делает прицельные выстрелы более действенными, и игра будет более напоминать "родную" JA2.
30 = Укрывшийся противник будет давать штраф на Попадание даже на дальности в 3 тайла. Вы должны подобраться очень близко, чтобы нейтрализовать этот штраф. Увеличьте значение параметра AIM_PENALTY_PER_TARGET_SHOCK для получения игры, в которой будут преобладать жесткие перестрелки на коротких дистанциях.
MAX_SHOOTER_COWERING_PENALTY
Значения: 0 to 65535
30 = Укрывшись, персонаж не может получить более 30 очков штрафа к Шансу Попадания при стрельбе, независимо от очков Шока, которые он получил.
0 = HAM Default. Ограничения на Штраф к Шансу Попадания отсутствуют. Помните, что они опосредовано могут быть ограниченны параметрами, отвечающими за количество получаемых целью очков Штрафа от Подавления Огнем.
MAX_TARGET_COWERING_PENALTY
Значения: 0 to 65535
30 = При стрельбе по укрывшейся цели, персонаж не может получить более 30 очков штрафа к Шансу Попадания при стрельбе.
0 = HAM Default. Ограничения на Штраф к Шансу Попадания отсутствуют. Помните, что они опосредовано могут быть ограниченны параметрами, отвечающими за количесвто получаемых целью очков Штрафа от Подавления Огнем.
АР_LOST_PER_MORALE_DROP
Значения: 0 to 255
0 = Подавление НЕ уменьшаем Мораль никогда.
2 = JA2 default. За каждые 2 ОД потеряные от Подавления Огнем, персонаж теряет 1 очко Морали.
3 = Новое рекомендуемое значение. За каждые 3 ОД потеряные от Подавления Огнем, персонаж теряет 1 очко Морали.
Помните: Увеличивая этот параметр, вы уменьшаете вероятность бегства противника из боя. Если вам кажется, что враги делают это часто - увеличьте его. Если же вы хотите видеть массовые отсупления - уменьшайте его.
INCREASE_AI_WILLINGNESS_TO_SUPPRESS
Значения: TRUE/FALSE
TRUE = Контролируемые компьютером персонажи (Противник и ополчение) будут чаще использовать автоматический огонь, смогут более удачно применять Подавляющий Огонь из-за радиуса обзора, и будут менее склонны к бегству из-за Подавления Огнем. Я надеюсь.
FALSE = Все будут действовать как в стандартной JA2 1.13