Рекомендуемый порядок действий:
На каждом этапе не лишним будет как минимум запустить миссию и немного последить за происходящим - есть ли скриптовые ошибоки, может объекты декораций взрываются или разлетаются в стороны, или зоны DynAI просто не активируются. Чем раньше ошибка будет найдена, тем проще ее понять и исправить!
Ставьте только те объекты, которые действительно нужны. Большое количество объектов снижают производительность. Используйте опцию Simple Object для объектов декораций.
Старайтесь избегать установки отдельных юнитов или машин с юнитами прямо через редактор. Такие юниты не настраиваются через параметры миссии, могут сломаться при очередном обновлении модов и сломать всю миссию. К тому же они будут стоять там куда их поставили при каждом запуске миссии, что не способствует разнообразию.
Для создания юнитов используйте dzn_dynai - подвижные группы через поведение Patrol, статичные случайные позиции в домах через Indoors и статичные специфические позиции через Entrecnhed.
Для техники/турелей - в полях - через dzn_dynai + Vehicle Points + поведение Hold, в городе или на линии обороны - расстоновкой вручную пустой техники и применение модуля Editor Vehicle Crew.
Не забывайте разметить карту - указать известные позиции противника, заграждения, точки интереса.
Обязательно выделите области нахождения задач, даже если это вся деревушка целиком - обведите ее границы и поставьте маркер с именем OBJ Что-нибудь.
Используйте dzn_gear для выдачи снаряжения союзным и вражеским силам. См. подробную инструкцию.
Создайте необходимый минимум наборов снаряжения для:
В рюкзак и технику нужно класть гранатомет без приписки "_Loaded" в имени класса. Тогда при поднятии игроком он будет заряжен автоматически. Например:
// Набор для юнита -- здесь "CUP_launch_RPG18_Loaded", т.к. в игре CBA уже заменил и зарядил все.
...
["<LAUNCHER WEAPON >> ","CUP_launch_RPG18_Loaded","CUP_RPG18_M",["","","",""]],
...
cargo_kit_1 = [
[["CUP_launch_RPG18",4]], /* класс гранатомета без _Loaded! */
[["30Rnd_545x39_Mag_F",15]], /* магазины */
[["ACE_elasticBandage",50]], /* разные предметы */
[["B_Kitbag_rgr",5]] /* рюкзаки */
];
Это сделано потому, что по умолчанию в CUP гранатометы многоразовые, а одноразовость это фича CBA и она вот так работает.
По умолчанию dzn_gear экспортирует наборы снаряжения с стандартными предметами в униформе (набор бинтов, морфин, эпинефрин, 2 турникета, 2 пластиковые стяжки, фонарик для карты, беруши) и назначенными предметами (часы, карта, компас, рация, ночью - ПНВ).
Для лидерских ролей переключите dzn_gear клавишами PgUp и PgDown для выдачи расширенного набора (добавляются инструменты карты и бинокль).
Если вы хотите выдать специальный набор, то убедитесь, что у игроков как минимум будет набор медицинских бинтов и хотя бы 1 жгут!
["<UNIFORM ITEMS >> ",[["ACE_fieldDressing",5],["ACE_packingBandage",5],["ACE_elasticBandage",5],["ACE_tourniquet",2],["ACE_morphine",2],["ACE_epinephrine",2],["ACE_quikclot",5]]],
Командирам взвода и отделений необходимо выдать:
Также не будет лишним выдать по 1-2 дымовых гранаты (разного цвета) всем командирам и лидерам команд.
Указано минимально допустимое количество боеприпасов в расчете на 30 зарядные магазины и 100 зарядные ленты. Если в миссии предпологается большой объем огневых задач - смело увеличивайте количество патронов до 10-12 магазинов. Для штурмовых действий добавьте еще по 1-2 осколочные гранаты.
Squad Leader, Platoon Leader, Командир отделения, Командир взвода
FTL, Старший стрелок
Grenadier, Стрелок (ГП)
Automatic Rifleman, Пулеметчик
Rifleman, Стрелок, Стрелок помощник гранатометчика, Гранатометчик
Снаряжение выдается согласно роли (слота). Для настройки используйте файл dzn_gear/GearAssignmentTable.sqf (или GAT).
// Формат:
// A "Имя_роли" TO "Имя_набора" KIT
, A "1'1 Squad Leader" TO "kit_sec_sl" KIT
, A "RED - FTL" TO "kit_sec_ftl" KIT
, A "RED - Rifleman" TO "kit_sec_r" KIT
Все стандартные имена ролей (как у юнитов поставленных через tSF 3DEN Tool - Add Playable Squad/Platoon) уже есть в таблице и вам достаточно указать ваши названия наборов снаяржения. Если же вы переименовали именя ролей, то добавьте их в GAT, по аналогии с другими ролями.
Неиспользуемые роли можно удалить или оставить, это ни на что не повлияет.
Чтобы быстро получить список имен ролей - воспользуйтесь кнопкой главного меню tSF 3DEN Tool - Generate GAT.
В инвентаре техники должны быть (минимум):
Для БТР/БМП и других машин поддержки кол-во припасов должно быть увеличено в 2-4 раза, а также добавлены ПТ средства (если доступны по сюжету).
Для ящиков со снаряжением кол-во припасов должно быть в 3-5 раз больше минимального (в отдельных ящиках могут быть несколько ПТ средств или спецсредств).
Kit type = Cargo kit
и укажите имя набора снаряжения в поле Kit name
Для расстановки зонс ипользуйте tSF 3DEN Tool - [Dynai] Add Dynai Zone.
Чтобы быстро получить все названия зон - воспользуйтесь кнопкой главного меню tSF 3DEN Tool: Copy Dynai zones.
Типы поведения:
Patrol - отряды создаются в случайном месте зоны и перемещаются по 3-5 случайным контрольным точкам. Если в зоне есть Keypoints, то маршрут строится выбирая их.
Indoors - создаются только внутри зданий (типа House и имеющие позиции внутри себя). Юниты распределяются по позициям в зданиях случайным образом. Во время игры остаются на своих позициях до тех пор, пока не обнаружат врага рядом. В этом случае могут попытаться выдвинутся и атаковать противника снаружи.
Entrenched - создаются только на позициях CBA AI Building Position (Позции строительства, в объекты - без стороны - VR - Helpers/Помощники). Во время игры остаются на своих позициях до тех пор, пока не обнаружат врага вплотную. Тогда могут попробовать покинуть позицию и атаковать противника в маневре.
In vehicle - опеределят юнита как экипаж техники. В качестве Vehicle Id
укажите номер машины (число X в Vehicle #X
) и выберите роль.
Приданная техника задает поведение группы, поэтому такая группа в идеале должна иметь только 1 технику. Либо вся техника должна иметь одинаковое поведение.
Если группа имеет и пехоту, и транспорт, то при путеществиях на дальнюю дистацнию пехота будет садиться в него.
Типы поведения:
Patrol - отряды и техника создаются в случайном месте зоны и перемещаются по 3-5 случайным контрльным точкам. Если в зоне есть Keypoints, то маршрут строится выбирая их. Если в зоне есть Vehicle Points, то техника будет создаваться на них (пока есть свободные).
Hold - создается в случайном месте, остается на месте и стелок/командир крутят башней на 360. Если в зоне есть Vehicle Points, то техника будет создаваться на них (пока есть свободные). Если замечают противника - действуют на свое усмотрение и могут уехать с позиции. Если хотим создать ПВО - то не добавляем водителя.
Hold (Front) - аналогично Hold, но осматривается только 180 сектор перед машиной.
Advance - отряды и техника создаются в случайном месте зоны (или на Vehicle Points, если есть у зоны). После создания двигаются до ближайшей контрольной точки, где пехота выгружается. Добравшись до последней точки - тахника остается и переходит в Hold, а пехота начинает патрулировать зону вокруг последней точки в поисках противника. Если в зоне есть Keypoints, то маршрут строится выбирая их. Если в миссии нужно подкрепление, то создайте отдельную небольшую зону в отдалении, создайте для нее несколько Keypoints. Установите их в удобном и безопасном для выгрузки месте. Теперь настройте зону и сделайте ее неактивной на старте, а в качестве условия активации укажите подходящее условие (например, больше 2 игроков сунулись в триггер в центре города - [CityCenter, "", ">2"] call dzn_fnc_ccPlayers
).
Road Patrol - отряды и техника создаются на случайном сегменте дороги и перемещаются по 3-5 случайным контрольным точкам на дорогах в зоне.
Road Hold - аналогично Hold, но позиция создания выбирается на случайном сегменте дороги внутри зоны.
Road Hold (Front) - аналогично Hold (Front), но позиция создания выбирается на случайном сегменте дороги внутри зоны.
Для расстановки игровых персонажей используйте tSF 3DEN Tool - Add Playable Squad/Platoon:
Callsign
= опционально, позывной группы. Если не указать, то сгенерируется порядковый номер (типа 1'1, 1'2 и т.д.).Side
= сторона за которую играем.Doctrine
= одна из стандартных игровых доктрин.Внимание: Порядок создания отрядов задает и порядок их отображения на экране слоттинга! Поэтому рекомендуется ставить игровые юниты только под конец, когда уже будет понятно сколько сил понадобится игрокам для выполнения задачи.
Чтобы быстро получить все позывные отрядов и список имен ролей - воспользуйтесь кнопками главного меню tSF 3DEN Tool: Copy callsigns и Generate GAT.
Установите достаточое количество машин (или другой техники) если они могут понадобится игрокам для достижения зоны операции. Обязательно ставьте технику сразу БЕЗ экипажа.
Добавьте в транспорт необходимое снаряжение (например, боеприпасы, медикаменты и т.п.)
В отличие от автотранспорта, для каждого доступного игрокам БТР и БМП должны быть также доступны и слоты экипажей (Командир экипажа + Водитель-механик для невооруженной; Командир экипажа + Стрелок-наводчик + Водитель-механик для вооруженной техники).
Чтобы быстро посчитать кол-во мест в технике - выберите машину и воспользуйтесь кнопкой главного меню tSF 3DEN Tool: Cargo seats.
Если выдать игрокам вертолет или танк вражеской стороны (например, играем за OPFOR, а техника BLIFOR), то с большой вероятностью радиостанция на технике не будет работать с наплечными ДВ игроков.
Для того, чтобы гарантировать совместимость раций - задайте конфигуркцию радио для техники:
Если это не противоречит сценарию миссии, то обеспечьте игроков возможностью:
Определите формальные цели, которые должны достичь игроки - уничтожить объект, эвакуировать персонажа в определенное место и т.п. Оформите эти цели в виде MissionCondition и проверьте их на непротиворечивость. Укажите цели в брифинге, убедитесь, что из брифинга понятно, что именно следует сделать для успеха.
В tSF 3DEN Tool - [tSF] Configure Scenario:
Title
= имя сценария (см. требования к миссии)
Summary
= краткое описание миссии (будет видно при выборе миссии и экране загрузки)
Author
= имя автора (ваше). Если не указано, то будет использовано Tactical Shift.
Picture
= имя картинки-обложки. Если не указано, то будет использовано overview.jpg. Не заполняйте это поле!
Max Players
= кол-во слотов для игроков в миссии. Видно при выборе миссии, но особого влияния не оказывает. Важно, чтобы правильное кол-во слотов было указано в имени миссии!
После выполнения - будут также созданы 5 объектов:
модуль Cover Map - настройте его размеры и положение так, чтобы задавать разрешенную для игроков зону операции. Точка старта может находится вне этой зоны, например, когда игроки должны будут десантироваться с самолетов.
маркер Rename me to 'respawn_west' - вручную переименуйте маркер в respawn_west
/respawn_east
(в зависимости от стороны за которую играем) и установите где-то на точке старта. При возрождении игроки будут попадать именно на этот маркер, поэтому поставьте его в безопасное место на открытой площадке. Видимый текст и иконка могут быть любыми, например, "FOB Alpha".
модуль Зевса - обеспечивает GSO доступом к Зевсу. Не трогаем.
модуль Headless Client - обеспечивает слот для headless client. Не трогаем.
объект игровой логики tSF_Scenario_Logic - хранит информацию для создания отчета AAR после игры. Не трогаем.
В файле dzn_tSFramework\Settings.yaml находятся общие настройки tSFramework.
Для включения или отключения модулей отредактируйте соответствующие строки, поставив напротив желаемого модуля значение true
(включить) или false
(отключить).
Например, чтобы отключить модуль CCP, следует указать CCP: false
.
Откройте файл Helper.html в любом браузере и заполните все поля информацией о миссии.
Нажмите 'Get file', чтобы экспортировать брифинг в виде файла tSF_briefing.sqf.
Переместите файл в папку \dzn_tSFramework\Modules\Briefing (с заменой уже существующего)
Не забудьте выбрать теги, характеризующие вашу миссию. В последующем описание миссии появится на tS Mission List и ее будет легко найти по выбранным тегам!
Бывет, что в миссии критически важно занять определенные слоты. Например, когда по сюжету мы спасаем нескольких игроков, то кто-то обязательно должен стать человеком попавшим в беду, иначе смысл сценария теряется!
Чтобы донести эту информацию до игроков, в файле description.ext раскомментируйте строки 21-25 (удалите /*
и */
), а затем внесите вашу информацию:
OVERVIEW(0, "Обзор:");
OVERVIEW(1, "Описываем о чем миссия...");
OVERVIEW(2, "Описание ролей:");
OVERVIEW(3, "Поясняем важные роли...");
// Если нужно еще строчку, то добавляеям увеличивая счетчик
OVERVIEW(4, "Важно! Вся взрывчатка у отряда саперов!");
Старайтесь писать в одной строке не более 120 символов, т.к. в зависимости от размера интерфейса игроки могут не видеть часть символов в конце.
Сам текст будет отображен в разделе Параметры (Parameters) на экране слоттинга.
Обязательно задайте титры на старте миссии. Так вы кратко дадите понять игрокам место и время действия вашего сценария!
Через 3DEN Tool добавьте CCP в удобное место на карте. Помните, что CCP должен нахожиться вне зоны видимости противника, но одновременно с этим - быть достаточно близко к зоне активных действий.
Если вы планируете разрешить игрокам выбрать местоположение CCP - то оставьте триггер связанный с созданным GameLogic - во время брифинга игроки смогут выбрать любую позицию внутри этого триггера для размещения. Вы можете задать форму, размеры и положение триггера. Вы также можете привязать к GameLogic несколько тригеров, например, чтобы разрешить размещать CCP в разных концах карты.
Если игроки не выберут позицию для CCP вручную (либо если вы удалите связанные триггеры), то он будет размещен непосредственно на месте объекта GameLogic.
Если в вашей миссии будет использована техника и игроки не действуют в тылу противника, то через 3DEN Tool добавьте FARP в удобное место на карте.
В плане настроек FARP полностью аналогичен CCP.
Каждая миссия должна чем-то оканчиваться. Как минимум должен быть один позитивый и один негативный конец.
В файле Settings.yaml есть примеры функций для проверки условий и подсчета кол-ва юнитов. Если возникнут трудности - не стесняйтесь спросить в нашем Дискорде!
Вызов артиллерии или воздушного транспорта ограничен ролью игрока (кроме админа, ему всегда все можно). Чтобы определить кому положено, а кому нет - проверьте модуль Authorization.
Слева в таблице указаны имена ролей, а справа - полномочия. Имя роли проверяется по частичному совпадению - т.е. значение Squad Leader
соответствует и 1'1 Squad Leader
и 1'2 Squad Leader
.
Выберите подходящую позицию и выполните tSF 3DEN Tool - [Support] Add Artillery Composition.
Рекомендуется использовать виртуальную батарею (Virtual Battery). Можно выбрать уже готовый конфиг или указать свой.
После создания виртуальной батареи можете удалить объекты декораций, оставив только объект Игровой Логики.
По умолчанию для 82мм миномета доступно 2 запроса на удар осколочно-фугасыми, и по 9 на дымовые и осветительные миссии (в миссии от 1 до 10 выстрелов). Если необходимо - измените конфиг в файле ArtillerySupport/Settings.sqf, начиная со строки 54.
Замечание: Краткий обзор о том как пользоваться модулем
Поставьте пустой вертлет, выделите его и выполните tSF 3DEN Tool - [Support] Add Vehicle As Support. Задайте Callsign
(позывной, отображаемый в меню).
Теперь добавим базовую точку для вертолета - откуда он будет улетать на вызов и куда возвращаться. Выполните tSF 3DEN Tool - [Support] Add Return Point и выберите тип вертолетной площадки. Теперь разместите площадку в подходящее место, и поставьте вертолет на нее
Замечание: после старта миссии вертолет поддержки будет автоматически перемещен на ближайшую позицию Return Point; однако чтобы это не бросалось в глаза игрокам - желательно установить оба объекта максимально рядом.
Замечание 2: Краткий обзор о том как пользоваться модулем
Выберите пустую турель/технику и выполните tSF 3DEN Tools - [Vehicle] Add Vehicle Crew:
Crew Config Name
= стандартный конфиг. В настройках модуля можно указать сторону по умолчанию - например west, если играем за east.
Custom Config Name
= имя собственного конфига указанного в файле Settings.yaml
модуля.