Перейти к содержимому

6. Подразделения в миссии

К оглавлению руководства

В предыдущей главе мы создали и проверили префаб группы. Теперь разместим подразделения в мире миссии, настроим игровые слоты и позывные, добавим технику и стартовые зоны.

Остановите игру и вернитесь в World Editor. Чтобы подразделения присутствовали в миссии с самого начала, разместим их в мире через редактор.

На примере группы «Альфа» разберём размещение и настройку слотов. На следующих скриншотах также показаны управление роты (Company HQ) и группа «Браво» (Split Team Bravo) из готовой миссии. Если хотите повторить весь состав, подготовьте эти группы по аналогии с «Альфой», указав для каждой свои название и состав.

В примере участвуют стороны США (US) и СССР (USSR). Для своей миссии соберите группы нужных сторон из игровых префабов персонажей. Для последующей проверки триггеров, сравнивающих численность, понадобятся игровые подразделения обеих сторон.

Откройте префаб персонажа в своём аддоне. Если префабы бойцов наследуют настройки от общей основы, откройте её: в нашем примере это TSS_Character_US_GB_BaseLoadout.et. В панели Object Properties найдите компонент LL_PlayableComponent, добавленный Lite Lobby, и включите Is Playable. Эту настройку получат все наследники префаба.

Если используете исходных персонажей игры, сначала создайте их наследников в своём аддоне и укажите их в составе группы. Так настройки игровых слотов будут относиться к вашим персонажам.

В базовом префабе персонажа у LL_PlayableComponent включён Is Playable.
Персонаж будет доступен как слот в лобби.Открыть оригинал изображения

У персонажей, которыми должен управлять только ИИ, отключайте Is Playable. Сохраните префаб и вернитесь к редактированию мира миссии.

Создайте слой US и сделайте его активным. В своём аддоне откройте папку Prefabs/Groups/BLUFOR/Green Berets, найдите префаб группы «Альфа» и перетащите его на стартовую позицию группы. Если вы также подготовили управление роты и «Браво», разместите их тем же способом.

Выберите размещённую группу и задайте ей имя вверху панели Object Properties. Затем выберите компонент LL_GroupCallsign. Если его нет, нажмите Add Component и добавьте его. Настройте каждую размещённую группу. Для «Альфы» используйте её строку из таблицы; остальные строки показывают настройки полного состава из примера:

ГруппаИмя объектаCompanyPlatoonSquad
Управление ротыAB_PL1000
«Альфа»AB_S1010
«Браво»AB_S2011

Числа в полях Company, Platoon и Squad указывают на элементы списков позывных фракции. Нумерация начинается с нуля. Со значениями из таблицы управление роты получит позывной Atlas Red 1, «Альфа» — Atlas White 1, а «Браво» — Atlas White 2.

Поле Platoon относится к системе позывных игры. В нашей ОШС взводов нет: эти номера мы используем для отрядов ODA, а Squad — для их половин, «Альфы» и «Браво».

Управление роты AB_PL1: Company 0, Platoon 0, Squad 0.
Позывной управления роты.Открыть оригинал изображения
Группа «Альфа» AB_S1: Company 0, Platoon 1, Squad 0.
Позывной группы «Альфа».Открыть оригинал изображения
Группа «Браво» AB_S2: Company 0, Platoon 1, Squad 1.
Позывной группы «Браво».Открыть оригинал изображения

Задавайте эти значения у размещённых групп. Это позволит назначить разные позывные нескольким группам, созданным из одного префаба. Имя AB_S1 используется для ссылок на объект в редакторе, а позывной Atlas White 1 отображается для игроков.

Чтобы добавить ещё одну ODA, снова разместите группы «Альфа» и «Браво». Задайте им новые имена объектов и другие сочетания чисел для позывных. Например, для следующей пары укажите Platoon 2, а в поле Squad0/1 для «Альфы» и «Браво» соответственно.

Разместите подготовленные группы советской стороны тем же способом в отдельном слое USSR. У персонажей, предназначенных для игроков, также должен быть включён Is Playable. Если готова только группа «Альфа», пока проверьте её слоты.

Нажмите зелёную кнопку запуска в World Editor. Если лобби не открылось, нажмите U. Проверьте, что группы отображаются на нужных сторонах, позывные назначены верно, а у персонажей указаны нужные роли и снаряжение.

Лобби показывает Atlas Red 1, Atlas White 1 и Atlas White 2 с должностями и предпросмотром персонажа.
Группы и игровые слоты в лобби. На скриншоте состав уже расширен.Открыть оригинал изображения

Если группы нет в списке, проверьте, включён ли Is Playable у её персонажей, и откройте список Unit Prefab Slots в префабе группы. Убедитесь, что нужные персонажи входят в состав группы и принадлежат фракции.

Технику можно закрепить за группой, размещённой в мире. Тогда игроки будут видеть машины своего подразделения в лобби. Для настройки потребуется имя объекта группы из панели Hierarchy.

Если вы ещё проверяете миссию в игре, остановите её и вернитесь в редактор. В панели Resource Browser найдите нужную машину и перетащите её на карту рядом с группой. На скриншоте используется S105_darkred.et из проекта ArmaReforger.

Выберите машину, а затем её компонент LL_VehicleSquadLinkComponent в панели Object Properties. Если компонента нет, добавьте его через Add Component. В поле Group Name введите имя размещённой группы: AB_S1 для «Альфы» или AB_S2 для «Браво», если вы её подготовили и разместили. После этого машина появится в лобби среди техники этой группы.

У машины в LL_VehicleSquadLinkComponent указана группа AB_S9, существующая в расширенном составе миссии.
Закрепление машины за группой. На скриншоте указана AB_S9 из расширенного состава; используйте имя своей размещённой группы.Открыть оригинал изображения

Выберите компонент SCR_VehicleFactionAffiliationComponent и укажите US в поле Faction affiliation. Для техники советской стороны используйте значение USSR.

У SCR_VehicleFactionAffiliationComponent машины установлена Faction affiliation US.
Принадлежность машины американской стороне.Открыть оригинал изображения

Настройте остальные машины тем же способом. В поле Group Name указывайте имя объекта группы из панели Hierarchy. Позывной группы или имя файла её префаба для этого поля не подходят.

Когда группы и техника размещены, обозначим стартовые зоны и зададим время на подготовку игроков.

После перехода от брифинга к игре начинается фризтайм — время, отведённое игрокам на подготовку. Пока он не закончится, игроки должны оставаться в стартовой зоне.

В ArmaReforger → PrefabsEditable → RestrictionZone найдите E_EditorRestrictionZoneLarge.et и перетащите его на стартовую позицию. Расположите зону так, чтобы бойцы и техника находились внутри внутреннего круга. Если у подразделений разные стартовые позиции, добавьте отдельную зону для другой позиции.

E_EditorRestrictionZoneLarge.et окружает стартовую позицию бойцов и техники.
Стартовая зона с границами предупреждения и выхода.Открыть оригинал изображения

Жёлтая граница показывает, где игрок получит предупреждение о выходе из зоны. Выход за красную границу опасен для персонажа. Когда фризтайм закончится, Lite Lobby удалит эти зоны, и игроки смогут покинуть стартовые позиции.

В панели Hierarchy выберите игровой режим LL_GameMode_Lobby1, а в Object Properties — компонент LL_GameModeCoop. Параметр Freeze Time задаёт длительность фризтайма в миллисекундах: значение 120000 соответствует двум минутам.

Параметр Hard Freeze Time задаёт начальную паузу, во время которой управление заблокировано, чтобы мир успел загрузиться. Эта пауза входит в общее время фризтайма.

Сохраните мир нажатием Ctrl+S.

В следующей главе добавим обозначения на карту, настроим триггеры и подготовим брифинг.