2 страница
Редактируем параметры здоровья
и брони юнита
За здоровье отвечает важная ветка health_ext у
юнита, где полезны следующие параметры:
can_be_repaired
— может ли юнит быть отремонтирован. Как правило, технику ремонтируют, а пехоту
— нет.
hitpoints — тут понятно,
чем больше, тем жирнее юнит.
regeneration_rate
— скорость регенерации. Пехота обычно регенерирует, техника — нет.
За броню отвечает ветка type_ext.
Параметры:
type_armour
— первичный тип брони юнита.
type_armour_2
— тип брони, используемый при апгрейде всей брони (у Тау, например).
Всего есть следующие типы брони:
tp_infantry_med, tp_infantry_high,
tp_infantry_heavy_med, tp_infantry_heavy_high — пехота;
tp_vehicle_low, tp_vehicle_med,
tp_vehicle_high — техника;
tp_monster_med, tp_monster_high —
демоны;
tp_commander — командирская;
tp_building_low, tp_building_med,
tp_building_high — здания.
Броня — исключительно важный параметр. Боевая система
устроена так, что у каждого типа оружия своя пробивная способность против
каждого типа брони.
Можно ставить тысячи хитпоинтов для
tp_infantry_med,
но они все равно будут дохнуть как мухи.
Именно так реализована различная эффективность оружия
против разных юнитов.
Редактируем зрение юнита
За зрение отвечает ветка sight_ext.
Параметры:
sight_radius
— дальность обзора юнита.
keen_sight_radius
— дальность обнаружения невидимых юнитов.
Редактируем массу юнита
Влияет на подверженность разного рода раскидывающим
спецатакам и взрывам.
За массу отвечает ветка special_attack_physics_ext.
Параметры:
mass — масса юнита. Чем тяжелее, тем лучше. Никак не
влияет на скорость.
get_up_time — время, за которое юнит поднимается
после падения.
Боевая система и
вооружение
— Обожаю запах напалма по утрам. Это запах победы!
Настало время поговорить об оружии, коим DoW богат как
никто другой. Мало где встретишь такое количество спецэффектов, такого
разнообразия красок и световых приемов. Даже сейчас движок смотрится вполне
достойно!
Как обогатить игру высококачественными модельками и
текстурами — в следующих выпусках.
По уже сообщавшейся ранее информации, все оружие
располагается в редакторе в attrib\weapon.
А рассмотрим мы space_marine_bolt_pistol_scout.rgd,
которым вооружены наши скауты.
Одни из важнейших параметров:
accuracy — точность.
Варьируется в диапазоне от 0 до 1. При единице всегда попадает.
accuracy_reduction_when_moving
— понижение точности при движении. От 0 до 1. При нуле точность в движении не
снижается, при единице перестает стрелять, так как точность снизилась полностью
до нуля.
max_range
— максимальная дальность действия.
min_range
— минимальная дальность действия. Используется для оружия, действующего по
площадям, у всяких XV-88 и так далее.
melee_weapon — является ли оружием ближнего боя.
reload_time — время на перезарядку в секундах.
reload_show_progress — показывать ли прогрессбар при
стрельбе. Используется для различных снайперов, артиллерии, словом, для всех, у
кого большой reload_time.
setup_time
— время на подготовку оружия к стрельбе в секундах. Пример — хэвиболтеры у ТСМ.
Все параметры со словом traverse предназначены для
регулировки скорости и углов вращения рук с оружием, спонсонов и башенок с злыми
пулеметами.
Ветка miss_events описывает следы от оружия на
различных видах поверхностей.
Ветка fire_cost — стоимость выстрела в ресурсах.
Обычно бесплатно :)
Ветка cost — время на вооружение юнита данным
оружием при апгрейде и его стоимость.
Самая важная ветка — area_effect. О ней разговор
особый, ибо именно она отвечает за то, как действует оружие на окружающие
объекты.
Подветка area_effect_information имеет важнее
параметры:
radius — определяет площадь поражения.
filter_type — определяет тип фильтра для оружия.
Бывают следующие типы фильтров:
tp_area_filter_enemy —
действует только на врагов.
tp_area_filter_all — действует
на всех (врагов и своих).
tp_area_filter_own — только на
своих (пригодится для абилок).
Подветка throw_data определяет силу, углы и
направление разлета супостатов. Сильно зависит от массы.
Подветка weapon_damage определяет базовые
повреждения от оружия.
Важнейшие параметры:
min_damage — базовые
минимальные повреждения.
max_damage — базовые максимальные повреждения.
min_damage_value
— повреждение, которое будет нанесено в любом случае.
morale_damage
— урон по боевому духу.
Стоит напомнить о том, что я говорил о разных типах брони.
Подветка armour_piercing_types как раз отвечает за воздействие на разные
типы брони. Обрати внимание на скриншот:
armour_piercing_value (или AP) по броне
tp_infantry_heavy_high
(терминаторская) составляет 25.
Это означает, что игра возьмет случайное число в диапазоне
от min_damage до max_damage и умножит на
armour_piercing_value, деленное на 100.
Таким образом, AP — это
процент, который возьмется от базовых повреждений.
Пример:
ap = 25, min_damage
= 40, max_damage = 60, игра
взяла случайное число в диапазоне min и max, равное 50.
Истинное повреждение D = 50*25/100 = 0.25*50 = 12.5.
Итого 12.5 HP за выстрел по данному типу брони.
Если же AP = 0 для данной брони или тип брони вообще не
описан в armour_piercing_types, то за выстрел наносится повреждение,
равное min_damage_value.
У болт-пистолета скаутов AP = 0 против брони
tp_monster_high, а min_damage_value = 1.
Это значит, что по всяким высшим демонам и кнарлокам
пукалка скаута наносит повреждений 1 HP за выстрел.
Возникает законный вопрос: орудие убийства создано, а как
его дать в пользование юниту?
Elementary, my dear Watson!
Залезаем к в файл юнита в ветку combat_ext\hardpoints,
где сидят аж 16 хардпоинтов с номерами.
Каждый hardpoint — возможное место под оружие. Это может
быть рука, спонсон или другой оруженосный девайс :)
Вот возьмем hardpoint_01, в котором в ветке
weapon_table есть подветки weapon_01, weapon_02 и так далее.
Под первым нумером всегда идет дефолтовое оружие (по умолчанию). А вот следующие
— возможные апгрейды, доступные посредством прямого выбора, выполнения
какого-либо research'а.
У скаута это огнемет, плазма или снайперка. Тактикалы
вооружаются ХБ, мислами, огнеметами и плазмой. Посесседы (одержимые) хаоса таким
образом получают демонические огнеметы.
Любое вооружение отряда происходит через hardpoint'ы.
Следующий — hardpoint_02. Он отвечает за следующее
оружие юнита. У скаута это тесак для ближнего боя.
Теоретически юниту можно дать любое количество вооружений.
Также необходимо отметить, что вооружить другой пушкой
сквад-лидера можно только проведением исследования (research'a), что должно быть
прописано в requirements у оружия.
ВНИМАНИЕ!
Очень важная тема — requirements (необходимые
условия). Они организованы абсолютно одинаково во всех возможных сферах
применения. Начиная от доступности оружия для апгрейда и техники для постройки
до возможности проводить research'и (исследования).
В ветке requirements объекта (любой может быть) есть
несколько пронумерованных подветок: required_1, required_2 и так далее.
В каждую из них можно прописать специфическое условие.
В данном примере для доступности снайперок для скаутов
необходимо провести исследование (в поле research_name).
Описывать их все большого смысла не имеет. Лучше смотреть и
делать по аналогии.
Важно вот что: для того, чтобы избавиться от условий мало
удалить все лишние пункты (кроме is_display_requirement),
нужно также в самой ветке requirements с каждой подветви required_1, 2, 3
и так далее исправить Reference с исходного
условия на required_none.lua
Конкретно здесь нужно required_research
исправить на required_none.
Сквады
Теперь подробнее поговорим про сквады. Что это такое мы
вкратце обсудили. Теперь о мелочах.
Параметры
squad_cap_ext — отвечает за занимаемый лимит
пехоты/техники.
squad_capture_strategic_point_ext — позволяет
захватывать стратегические позиции (капить точки).
able_to_capture
— может ли капить точки.
able_to_uncapture —
может ли снимать (декапить) точки.
capture_rate —
коэффициент, влияющий на скорость капа.
squad_infiltration_ext — возможность быть невидимым
(там определяются условия).
squad_loadout_ext — количественный/качественный
состав сквада.
squad_leader_ext — определяет сквад-лидеров (до 4
видов), их количество.
leader_x — ветка типа
сквад-лидера, где параметр cost_time определяет его стоимость, а параметр
leader устанавливает юнит сквад-лидера. А вот параметр
add_while_moving позволяет делать лидера во время движения отряда или нет.
multi_with_reinforce —
добавляется ли сквад-лидер независимо от реинфорса базовых юнитов.
max_leaders —
максимально количество сквад-лидеров.
squad_morale_ext — определяет параметры боевого
духа.
squad_reinforce_ext — определяет реинфорс юнитов и
грейды оружия.
max_upgrades —
количество выдаваемых пушек на сквад (обычно меньше, чем число юнитов в скваде).
Тактикалы имеют не более 4 тяжелых видов вооружения на 8 рыл.
squad_requirement_ext — условия на производство
данного сквада.
squad_jump_ext — возможность телепорта/прыжка на
определенное расстояние.
setup_time — время на
подготовку к прыжку.
breakdown_time — время
на прерывание режима прыжка (приход в себя :)).
go_up_time — время на взлет.
go_down_time
— время на приземление.
jump_distance_max —
максимальное расстояние.
charge_max —
максимальный заряд ранца.
charge_jump_cost_max —
максимальная стоимость прыжка.
charge_jump_cost_min —
минимальная стоимость прыжка.
charge_regeneration —
восстановление заряда ранца в секунду.
charge_starting_fraction — стартовый заряд
ранца.
combat_enabled
— можно ли использовать в ближнем бою или под огнем.
teleport
— является ли телепортом.
squad_transportable_ext
— перевозимость в транспорте.
nr_spots
— количество занимаемых слотов.
transport_type — тип
перевозимых юнитов.
Полный список возможных типов
доступен в attrib\ type_transportable.
Специальные параметры
squad_can_attach_ext — можно ли прикреплять к другим
сквадам как командира.
squad_attach_receive_ext — можно ли к скваду
прикрепить командира.
Юниты и здания (ветка
EBPS)
После краткого курса полезно познакомиться со всеми
возможными параметрами юнитов, дабы не ограничивать себя в функционале.
ability_ext — ветка специальных способностей юнита.
В подветке abilities есть
десять строк под абилки: ability_01, ability_02 и так далее.
Все абилки находятся в ветке
attrib\abilities.
building_engineer_ext — дает возможность строить все
здания текущей расы.
combat_ext — ветка боевого оснащения.
Один из важнейших параметров
ветки complex_upgrades имеет значение true/false.
В положении true все
апгрейды на оружие даются только одному юниту, причем это должен быть
единственный юнит в скваде. Пример — Тау Коммандер.
В положении false апгрейд
дается одному из юнитов в скваде, следующий апгрейд дается другому юниту. Пример
— тактикалы Космодесанта.
Максимальное количество
апгрейдов на оружие устанавливается у сквада в sbps
параметром squad_reinforce_ext\max_upgrades.
Далее следует ветка
hardpoints, в которой описаны пронумерованные ветки-слоты под оружие:
hardpoint_01, hardpoint_02 и так далее.
Все параметры ветки
hardpoint_x с названием motion отвечают за анимацию движения стрельбы
из оружия. То есть если прописана анимация правой руки с оружием, для стрельбы
юнит повернет именно правую, а не левую.
Подветка weapon_table
содержит список доступных видов оружия на один слот.
Дефолтовое оружие (по умолчанию)
записывается в weapon_01, в возможные апгрейды — в остальные ветки.
Рассмотрим ветку weapon_01
у юнита.
Ветка muzzle содержит
x, y, z координаты вспышки от выстрела.
Параметр
name_for_this_weapon_choice
содержит ссылку на анимацию выстрела данного оружия у модельки.
Параметр weapon отвечает
за оружие.
Полный список вооружений
находится в ветке attrib\weapon.
Ветка in_combat_modifiers
позволяет включить специфические модификаторы, когда юнит находится в ближнем
или дистанционном бою.
Можно уменьшить регенерацию
здоровья или морали, уменьшить подвижность или увеличить защиту от стрелковой
атаки.
cost_ext — ветка стоимости юнита.
Параметр time_cost\
time_seconds хранит время на строительство в секундах.
Параметры
time_cost\cost\ power (population, requisition) —
стоимость в ресурсах.
power
— энергия, requisition —влияние, population
— ресурс орков (waaaagh).
cover_ext
— ветка влияния укрытий на свойства юнита.
cover_blocking, cover_heavy, cover_light, cover_stealth
— укрытия, дающие положительные модификаторы.
cover_negative
— укрытие, понижающее боевые качества юнита. Например, юнит по колено в воде
(кровище, грязище, говнище :)
death_explosion_ext — интереснейшая ветка,
позволяющая сделать взрыв после уничтожения юнита. Эдакий привет с того света :)
Параметр
chance определяет вероятность самого
взрыва, указывается в процентах.
Если параметр
chance равен 100, взрыв будет всегда (подходит для
техники вроде Hellhound'а).
Ветка death_explosions
описывает возможные варианты взрыва, если он таки произойдет. Состоит их
нескольких подветок death_explosion_x, в каждой
их которых есть свой параметр chance, определяющий
вероятность именно данного типа взрыва из всех возможных, и подветка
area_effect, аналогичная оружейной.
В ней описываются повреждения,
наносимые всему воруг.
1 - 2 - 3 страница |