Пакеты

Общие сведения

Все пакеты лежат в папке packages/ в основной папке игры.

Папка с пакетами

Каждый пакет находится в своей папке. Идентификатор пакета записан в файле .info.

Пример содержимого пакета

Ресурсы пакета разделены по принципу использованию на две основные секции.

Название секции
Описание

global

Ресурсы секции 'global' применяются один раз при запуске приложения и при включении/выключении пакетов в настройках игры.

В этой секции находятся ресурсы:

  • файлы интерфейса front-end

  • звуки,

  • музыка,

  • видео,

  • карты

scene

Ресурсы секции 'scene' применяются перед началом загрузки сцены, при создании новой сессии или в процессе подключения к сессии.

Локализация

В пакетах поддерживается локализация. Локализируемые ресурсы размещаются в папках .lang/, где lang - код языка (обычно двухсимвольный).

Папки с локализационными файлами и их содержимое

Настройка свойств пакета

Свойства пакета задаются параметрами в файле .info, который находится в корне папки пакета.

Параметр
Описание

id

Уникальный идентификатор пакета. Если пакет является Steam DLC или Steam Workshop, то идентификатор назначается Steam. При создании пакета через интерфейс раздела "Настройки" уникальный идентификатор назначается автоматически. В других случаях рекомендуется использовать любой подходящий GUID-генератор (например, http://www.guidgen.com/).

legacy_id

Параметр id заменяется на legacy_id в процессе присвоения пакету Steam DlcId или WorkshopId. Значение параметра берется из параметра id. Таким образом, старые ссылки (например, save game) будут идентифицировать пакет

name

Название пакета. Не обязательный параметр. Если не задан, то в качестве названия берется папка, в которой лежит пакет. В случае Steam DLC игнорируется.

author

Автор пакета. Не обязательный параметр. Отображается в свойствах пакета.

order

Порядок в списке пакетов.

Значение параметра может быть как положительным, так и отрицательным. Влияет на порядок в списке, в котором пакеты отображаются в настройках. По умолчанию равен 0 и отображается самым верхним в списке пакетов.

default_disabled

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

hidden

Пакет не отображается в настройках. По умолчанию пакеты отображаются в настройках.

dependency <id пакета>

Зависимость от другого пакета. Блок с параметром dependency может быть использован многократно для создания множественных зависимостей. Пакеты применяются в том порядке, в котором записаны блоки.

incompatible <id пакета>

Указывает на несовместимость с пакетом. Игра будет отключать пакет с указанным id при активации пакета.

min_core_version <count> max_core_version <count>

Минимальная и максимальная версии игры, для которых поддерживается совместимость пакета. Если параметры не указаны, то соответствующая проверка отсутствует.

delete_global

Список виртуально удаляемых ресурсов при активации секции 'global'.

delete_scene

Список виртуально удаляемых ресурсов при активации секции 'scene'.

always_activate_scene

Всегда активировать секцию 'scene' этого пакета если активна секция 'global'. По умолчанию секция 'scene' активируется, если загружается карта, которая находится в секции 'global' этого пакета.

always_activate_global

Означает, что данный пакет изменяет глобальные игровые настройки (т.е. этот пакет будучи включенным всегда отмечается в списке при создании хоста, в сохранении игры и т.п.).

sign

Цифровая подпись.

Только для пакетов, выпущенных компанией Best Way.

Пакеты, имеющие такую подпись не допускают какой-либо модификации.

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

token_count

Количество токенов, которые дает данный пакет.

Токены могут быть присвоены только пакетам, выпускаемым компанией Best Way.

token_sign

Цифровая подпись для токенов. Если подлинность не подтверждается, то токены игнорируются.

hash

Значение параметра hash позволяет предварительно определять, что содержимое пакета одинаковое у разных пользователей и на сервере при игре совместно.

Значение параметра hash автоматически обновляется при публикации в пакета в Workshop

obsolete

Позволяет скрыть ресурсы пакета (объекты и текстуры) в списках доступных ресурсов в редакторе.

client_only

Содержимое пакета доступно только на клиенте, не подгружается на сервер и не влияет на игровой процесс.

Пример содержимого файла .info
{id "cc507d63-2143-4598-99de-237a5ea5e621"}
{name "Пример Пакета"}
{order 1}
{dependency "02f8e8f9-91d9-45e0-8ee6-dc56adae4763"}; main package
{min_core_version 1.030}; требуется версия игры не меньше чем 1.030
{default_disabled}
{author "Created by Best Way, at Mon Apr 15 16:39:49 2024"}

Примеры параметров свойств пакета

Пример блока
Пояснения
Дополнительно

{order -100}

опустить пакет ниже в списке пакетов на 100 пунктов

{order +4000}

поднять пакет выше в списке пакетов на 4000 пунктов

{default_disabled}

состояние по умолчанию "отключен"

то же самое, что и {default_disabled 1}

{hidden 0}

пакет отображается в списке пакетов

{hidden}

пакет не отображается в списке пакетов

то же самое, что и {hidden 1}

{dependency "b86c6020-9b25-4659-bcdf-53b12715a0a1"}

пакет зависит от пакета с id "b86c6020-9b25-4659-bcdf-53b12715a0a1"

{delete_global "/map/single/2-fra" "/video/menu.avi"}

при загрузке секции global игнорировать папку /map/single/2-fra и файл /video/menu.avi

{delete_scene "/entity/service/flag"}

при загрузке секции scene игнорировать объект flag из папки /entity/service/

Last updated