LuxelSetManager

Просмотры: 56
  • ŔØ₲ŲĒᏃ᙭Ċ 🌌™ 🅳🆅🆁🅺 Разработчик

Как устроены пресеты

Через пресеты настраиваются:

  • точки спавна;

  • экипировка;

  • оружие.

Сначала администратор настраивает .json файлы пресетов, а затем эти пресеты можно использовать на сервере: сделать доступными всем игрокам, выдать конкретному игроку, выдать на время или выдать навсегда.


Типы пресетов

В LuxelSetManager пресеты разделены на две основные категории: дефолтные и предустановленные.

Дефолтные пресеты

Дефолтные пресеты доступны всем игрокам по умолчанию.

Они должны быть расположены по пути:

profiles\RZXC\LuxelSetManager\Defaults

Например:

profiles\RZXC\LuxelSetManager\Defaults\SpawnPoints
profiles\RZXC\LuxelSetManager\Defaults\Equipments
profiles\RZXC\LuxelSetManager\Defaults\Weapons

Предустановленные пресеты

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

Они должны быть расположены по пути:

profiles\RZXC\LuxelSetManager\Predefined

Например:

profiles\RZXC\LuxelSetManager\Predefined\SpawnPoints
profiles\RZXC\LuxelSetManager\Predefined\Equipments
profiles\RZXC\LuxelSetManager\Predefined\Weapons

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


Срок действия пресетов

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

Мод имеет собственную систему проверки сроков, истечения и доступности пресетов, поэтому не нужно дополнительно управлять этим извне.

Достаточно выдать пресет игроку, а LuxelSetManager сам проконтролирует:

  • доступен ли пресет игроку;

  • не истёк ли срок владения;

  • можно ли выбрать этот пресет в меню;

  • можно ли использовать этот пресет при спавне.


Вложенные папки

Пресеты собираются рекурсивно из всех отдельных .json файлов, которые лежат в нужных папках и подпапках.

Это значит, что можно свободно создавать вложенные категории для удобной организации.

Например:

profiles\RZXC\LuxelSetManager\Predefined\Weapons\Main\AssaultRifles\AKM_Silenced.json
profiles\RZXC\LuxelSetManager\Predefined\Equipments\Military\MilitaryUSMCWoodland.json
profiles\RZXC\LuxelSetManager\Defaults\SpawnPoints\Coast\Chernogorsk.json

ID пресета

Каждому пресету автоматически присваивается ID по названию файла без .json.

Например файл:

MyWeaponPreset_1.json

получит ID:

MyWeaponPreset_1

Этот ID используется в настройках пользователя, API, логах и внутренней логике мода.


Как мод использует пресеты

После загрузки LuxelSetManager собирает все пресеты из папок Defaults и Predefined, проверяет их и отправляет нужные данные клиенту.

Игрок видит в меню только те варианты, которые ему доступны:

  • все дефолтные пресеты;

  • предустановленные пресеты, которые были выданы игроку;

  • предустановленные пресеты, доступные через специальные правила владения.

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


Структура папок

Общая структура пресетов может выглядеть так:

profiles\RZXC\LuxelSetManager
├── Defaults
│   ├── SpawnPoints
│   ├── Equipments
│   └── Weapons
│       ├── Main
│       ├── Secondary
│       ├── Pistol
│       └── Knife
└── Predefined
    ├── SpawnPoints
    ├── Equipments
    └── Weapons
        ├── Main
        ├── Secondary
        ├── Pistol
        └── Knife