5. Персонажи и группы в Game Master
Зададим названия и роли персонажей, добавим их в каталог Game Master и проверим в игре. Затем соберём из готовых персонажей группу и проверим её состав.
Таблица переводов
Заголовок раздела «Таблица переводов»Таблица переводов хранит варианты текста для разных языков. Создадим одну таблицу для персонажей и групп аддона Triad Shooting Star.
Первой записью в таблице станет название связиста: «Сержант связи» и Communications Sergeant. Игра выберет нужный вариант в зависимости от языка игрока.
Создание таблицы переводов
Заголовок раздела «Создание таблицы переводов»В главном окне Workbench нажмите String Editor в разделе Quick Launch.

Выберите File → New.

В окне сохранения откройте свой аддон. Кнопкой New Folder создайте папку Language и перейдите в неё. В поле File name введите tss_localization и нажмите OK. Здесь tss — префикс нашего аддона; для своей миссии используйте выбранный вами префикс.

В следующем окне выберите CustomStringTableItem.

Название на двух языках
Заголовок раздела «Название на двух языках»Каждой строке таблицы нужен ключ — уникальное обозначение, по которому игра найдёт её переводы. В поле Insert введите TSS-Characters_CommsSergeant без # и нажмите кнопку Insert.
Выберите добавленную строку слева и заполните поля справа:
- Target En Us —
Communications Sergeant. - Translated Texts → Target Ru Ru —
Сержант связи.

Название второго персонажа
Заголовок раздела «Название второго персонажа»Таким же способом добавьте строку для командира с ключом TSS-Characters_DetachmentCommander и заполните переводы:
- Target En Us —
Detachment Commander. - Target Ru Ru —
Командир отряда.

Сборка файлов переводов
Заголовок раздела «Сборка файлов переводов»Нажмите Ctrl+S, чтобы сохранить таблицу. Затем выберите Table → Build Runtime Table (Ctrl+B). Редактор создаст файлы переводов для игры. После каждого изменения текста сохраняйте таблицу и повторяйте сборку.

Подключение таблицы к проекту
Заголовок раздела «Подключение таблицы к проекту»Чтобы игра загрузила переводы, подключим таблицу в настройках аддона. В главном окне Workbench откройте File → Project Settings. В поле Project выберите свой аддон, а в Configuration — PC.
- Раскройте Widget Manager Settings → String Tables и нажмите
+. - Откройте новую запись. У поля String Table Source нажмите
…и выберитеLanguage/tss_localization.stиз своего аддона. - В списке Languages этой записи добавьте английский и русский языки. Для каждого заполните Code и укажите в String Table Runtime соответствующий файл переводов:
| Code | String Table Runtime |
|---|---|
en_us | Language/tss_localization.en_us.conf |
ru_ru | Language/tss_localization.ru_ru.conf |
Если эти записи уже заполнены, добавлять их повторно не нужно. Нажмите OK.

Названия и роли в префабах
Заголовок раздела «Названия и роли в префабах»Название и роль персонажа задаются в разделе SCR_EditableCharacterComponent → Visualization → UI Info:
- Name — название персонажа.
- Authored Labels — метки персонажа, в том числе его роль.
Роль персонажа
Заголовок раздела «Роль персонажа»Откройте TSS_Character_US_GB_CommsSergeant.et через Edit Prefab и выберите персонажа. В поиске компонентов введите edita, выберите SCR_EditableCharacterComponent и раскройте Visualization → UI Info.
В списке Authored Labels замените ROLE_RIFLEMAN на ROLE_RADIOOPERATOR. Эта метка обозначает связиста в игровом редакторе.

Название из таблицы переводов
Заголовок раздела «Название из таблицы переводов»В Name пока указано #AR-Role_Rifleman — ссылка на игровое название «Стрелок». Замените её на #TSS-Characters_CommsSergeant.
В этом поле перед ключом ставится #: так игра отличает ссылку на перевод от обычного текста. Сам ключ после # должен точно совпадать с Id строки в String Editor.

Сохраните префаб нажатием Ctrl+S.
Настройка второго персонажа
Заголовок раздела «Настройка второго персонажа»Откройте TSS_Character_US_GB_DetachmentCommander.et через Edit Prefab, выберите персонажа и раскройте тот же раздел SCR_EditableCharacterComponent → Visualization → UI Info:
- В Name укажите
#TSS-Characters_DetachmentCommander. - В Authored Labels замените
ROLE_RIFLEMANнаROLE_LEADER.

Сохраните префаб нажатием Ctrl+S.
Если вместо названия отображается ключ с #, проверьте, совпадает ли он с Id строки, созданы ли файлы переводов и подключена ли таблица к аддону. Для загрузки новой таблицы может потребоваться перезапуск Workbench.
Добавление персонажей в каталог
Заголовок раздела «Добавление персонажей в каталог»Чтобы находить и размещать бойцов через Game Master, добавим их в каталог фракции США.
Для каждого префаба персонажа нужна отдельная запись каталога. В ней указываются файл префаба и настройки его доступности в игровом редакторе.
Оверрайд каталога
Заголовок раздела «Оверрайд каталога»В Resource Browser выберите проект ArmaReforger и откройте папку Configs/EntityCatalog/US. Щёлкните правой кнопкой мыши по Characters_EntityCatalog_US.conf и выберите Override in → ваш аддон.

Здесь нужен оверрайд: мы дополняем каталог, который игра уже использует. Поэтому имя Characters_EntityCatalog_US.conf сохраняем без префикса TSS_.
Добавление бойцов
Заголовок раздела «Добавление бойцов»Перейдите в папку Configs/EntityCatalog/US своего аддона и двойным щелчком откройте Characters_EntityCatalog_US.conf. В списке Entity Entry List найдите запись Character_US_SF_Sapper_S.et, щёлкните по ней правой кнопкой мыши и выберите Duplicate.

Команда копирует только запись каталога; новый файл префаба при этом не создаётся. В полученной записи укажем уже подготовленного связиста.
Раскройте добавленную запись. В Resource Browser откройте папку Green Berets своего аддона и перетащите TSS_Character_US_GB_CommsSergeant.et в поле Entity Prefab.

Вместе с записью скопированы настройки Entity Data List для игрового редактора. Для наших бойцов подходят те же значения.
Скопируйте полученную запись командой Duplicate. В копии замените значение Entity Prefab на TSS_Character_US_GB_DetachmentCommander.et. Теперь в каталоге есть две отдельные записи: для связиста и для командира.

Остальных бойцов добавляйте так же, по мере готовности их префабов. В BaseLoadout и ODA_Base собраны общие настройки для персонажей разных должностей; сами эти префабы в каталог не добавляем.
Сохраните каталог нажатием Ctrl+S.
Проверка в игре
Заголовок раздела «Проверка в игре»Откройте в World Editor мир своей миссии и нажмите зелёную кнопку запуска на верхней панели.

Поиск персонажей
Заголовок раздела «Поиск персонажей»После запуска миссии нажимайте Play в самом лобби, пока не начнётся игра. Затем нажмите Y, чтобы открыть Game Master.
U открывает и закрывает лобби, а Y — Game Master.
В Game Master нажмите Tab, чтобы открыть Entity Browser — каталог объектов для размещения. В фильтрах справа выберите фракцию US и тип Character.
Найдите обоих бойцов через поле Search, вводя их названия: «Сержант связи» и «Командир отряда». Если игра работает на английском языке, ищите Communications Sergeant и Detachment Commander.

Надпись PLACE HOLDER вместо миниатюры означает, что для префаба ещё не подготовлено изображение. Выбрать такую карточку и разместить бойца можно обычным способом.
Если бойца нет в списке, проверьте его запись в каталоге персонажей. Если вместо названия виден ключ с #, проверьте ссылку на перевод.
Размещение персонажей
Заголовок раздела «Размещение персонажей»Выберите карточку бойца, наведите курсор на землю и щёлкните левой кнопкой мыши, чтобы разместить его в мире. Таким же способом добавьте второго персонажа. Щелчок правой кнопкой мыши отменяет размещение.

Осмотрите обоих персонажей и сверьте их снаряжение с настройками префабов. У связиста должны быть ранцевая радиостанция, кепка и куртка с закатанными рукавами, а у командира — M72A3 и бинокль.
Префаб группы
Заголовок раздела «Префаб группы»Префаб группы объединяет префабы персонажей и позволяет разместить всех бойцов сразу. Создадим группу «Альфа» (Split Team Alpha) — первую половину отряда ODA из миссии Triad Shooting Star.
Создание префаба
Заголовок раздела «Создание префаба»Остановите тестовый запуск игры и вернитесь в World Editor.
В проекте ArmaReforger откройте папку Prefabs/Groups/BLUFOR. Щёлкните правой кнопкой мыши по Group_US_Base.et и выберите Inherit in → ваш аддон.

Введите имя TSS_Group_US_GB_SplitTeamAlpha и нажмите OK.

В своём аддоне откройте папку Prefabs/Groups/BLUFOR. Щёлкните правой кнопкой мыши по свободному месту в Resource Browser, создайте папку Green Berets и перетащите в неё новый префаб.

Название группы
Заголовок раздела «Название группы»Откройте Language/tss_localization.st в String Editor. Добавьте строку с ключом TSS-Groups_SplitTeamAlpha:
- Target En Us —
Split Team Alpha. - Target Ru Ru —
Группа «Альфа».
Сохраните таблицу нажатием Ctrl+S, затем нажмите Ctrl+B, чтобы обновить файлы переводов для игры.

Откройте TSS_Group_US_GB_SplitTeamAlpha.et через Edit Prefab и выберите объект группы. В поиске компонентов введите edita, выберите SCR_EditableGroupComponent и раскройте Visualization → UI Info.
В поле Name укажите #TSS-Groups_SplitTeamAlpha. В списке Authored Labels нажмите + и добавьте метку GROUPSIZE_LARGE, как в примере. Эта метка задаёт категорию размера группы в игровом редакторе.

Условный знак
Заголовок раздела «Условный знак»Ниже включите параметр Use UI Info Name, чтобы для группы использовалось название из поля Name. Затем в разделе Military Symbol задайте параметры условного знака:
- Identity —
BLUFOR. - Dimension —
LAND. - Icons — отметьте
RECON.
С этими настройками группа получит условный знак наземной разведки стороны BLUFOR.

Состав группы
Заголовок раздела «Состав группы»В группе «Альфа» шесть бойцов. В предыдущих главах мы создали префабы командира и связиста. В готовой миссии есть ещё четыре специалиста: сержант по оперативным вопросам, пулемётчик, инженер и медик. Их префабы созданы по аналогии с этими двумя персонажами.
Для полного состава группы «Альфа» подготовьте ещё четыре префаба персонажей с именами из таблицы ниже. Подберите снаряжение для каждой должности, затем добавьте бойцов в группу.
Очистите поле поиска компонентов и выберите сам объект SCR_AIGroup. Раскройте Group Members → Unit Prefab Slots и с помощью кнопки + добавьте шесть строк.
Откройте в своём аддоне папку Prefabs/Characters/Factions/BLUFOR/US_Army/Green Berets и перетащите из неё префабы в строки списка в следующем порядке:
| Строка | Префаб |
|---|---|
0 | TSS_Character_US_GB_DetachmentCommander.et |
1 | TSS_Character_US_GB_OperationsSergeant.et |
2 | TSS_Character_US_GB_WeaponsSergeant_M249.et |
3 | TSS_Character_US_GB_EngineerSergeant.et |
4 | TSS_Character_US_GB_MedicalSergeant.et |
5 | TSS_Character_US_GB_CommsSergeant.et |
Каждая строка соответствует одному бойцу. Если состав вашего подразделения отличается от примера, укажите префабы нужных вам персонажей.

Построение
Заголовок раздела «Построение»В поле поиска компонентов введите format и выберите AIFormationComponent. В поле Default Formation укажите line, как в примере.

Сохраните префаб группы нажатием Ctrl+S.
Проверка группы в Game Master
Заголовок раздела «Проверка группы в Game Master»Чтобы группа появилась в Game Master, добавим её префаб в каталог фракции США.
Добавление группы в каталог
Заголовок раздела «Добавление группы в каталог»В проекте ArmaReforger откройте папку Configs/EntityCatalog/US. Щёлкните правой кнопкой мыши по Groups_EntityCatalog_US.conf и выберите Override in → ваш аддон.

В своём аддоне откройте этот файл двойным щелчком. В списке Entity Entry List найдите запись Group_US_EngineerTeam.et, щёлкните по ней правой кнопкой мыши и выберите Duplicate.

Раскройте созданную копию записи. Откройте в своём аддоне папку Prefabs/Groups/BLUFOR/Green Berets и перетащите из неё TSS_Group_US_GB_SplitTeamAlpha.et в поле Entity Prefab этой записи.

Настройки списка Entity Data List скопированы вместе с записью. Сохраните каталог нажатием Ctrl+S.
Проверка группы
Заголовок раздела «Проверка группы»Запустите миссию и откройте Game Master. Нажмите Tab, чтобы открыть Entity Browser. Выберите фракцию US и тип Group. Если после проверки персонажей остался включён фильтр Character, отключите его.
Найдите группу по её названию в поле Search. Для примера введите Альфа или Alpha — в зависимости от языка игры.

Выберите свою группу и щёлкните левой кнопкой мыши по земле, чтобы разместить её. Должны появиться все бойцы, указанные в списке Unit Prefab Slots; в группе «Альфа» их шесть. Проверьте их состав и снаряжение. Если кого-то не хватает, проверьте список префабов группы.
В следующей главе разместим готовые группы в миссии и настроим игровые слоты.