😎DayZSetManager 2.0.0 +
Мод предназначен для предоставления игрокам возможности выбора снаряжения и точки появления при возрождении.
Сначала прочитайте статью Установка модификации.
Возможности мода
Удобная и гибкая настройка снаряжения игрока.
Игрок может сам собрать свой уникальный набор из доступных предметов.
Игрок может сохранять собранный набор для быстрого выбора. Сохранённые наборы привязываются к серверу.
Возможность настройки персонального снаряжения для игрока по SteamID 64.
Блок "описание" для каждой вещи берется из конфигурации игры, а также информирует игрока о дополнительных предметах/аттачментах внутри или на предмете/оружии и т. д.
Блоке "содержимое" информирует игрока о всех предметах, которые он получит при появлении.
Игрок может выбрать точку появления из набора, настроенного администраторами сервера.
Есть возможность устанавливать к/д на появление в одной точке.
При выборе точке мод проверит наличие появляющихся/находящихся у точки других игроков и предупредит игрока об их наличии.
Если все точки находятся на к/д, игрок может выбрать случайную точку. Мод предпочтёт точку, у которой нет других игроков, при наличии такой, или предупредить игрока о наличии игроков.
После появления игрока и выдачи ему снаряжения, функция StartingEquipSetup из init.c будет вызвана, что позволит дополнительно настроить процесс появления игрока.
Мод поддерживает настраиваемую через файл на сервере локализацию.
Имеет интеграцию с модом @DayZShop.
Установка
Для установки мода:
Установите DayZSetManager.pbo как клиентскую модификацию.
Папку DZSM поместите в папку профиля вашего сервера.
Папку MagicByte поместите в папку профиля вашего сервера. Если такая папка есть, объедините их содержимое.
Конфигурация мода
В приведённых ниже файлах конфигурации используются комментарии (символ '//' и следующие после них слова). Используемый формат (JSON) не поддерживает комментарии, поэтому данные файлы не могут быть использованы в качестве файлов конфигурации.
Файл конфигурации набора
Файл конфигурации набора размещается по пути DZSM/sets/{название набора}.json. Название файла должно соответствовать названию набора. Файл использует формат JSON. Ниже приведён пример файла конфигурации набора под названием "Example Set". Отметим, что в данном файле конфгурации в некоторых местах не указываются поля, поэтому система использует их стандартные значения (значение "count" - "1", значение "quantity" - "1", значение "content" - "[]").
{
"Definition": { //Обязательное поле, в котором описан сам набор
"display": true, //Отображать ли набор в списке "сохранённые наборы"
"slots": [ //Предметы, распределённые по категориям
{
"category": "Character", //Категория предмета. Может быть любым текстом.
"classname": "SurvivorM_Mirek", //Класснейм предмета. В данном случае - персонаж.
"content": //Что положить в предмет. В случае с персонажем - что выдать ему в инвентарь, если он будет выбран.
[
{
"classname": "TShirt_Red", //Класснейм предмета
"count": 1, //Сколько раз выдать предмет. Если поля нет, предмет будет выдан один раз.
"quantity": 1, //Заполненность предмета/прочность/количество в стаке. Если поля нет, оно считается равным 1.
"UsePercentileQuantity": true // Процентное заполнение Quantity - true, точное заполнение Quantity - false.
}
]
},
{
"category": "Bag", //Категория предмета. Может быть любым текстом.
"count": 1, //Сколько раз выдать предмет. Если поля нет, предмет будет выдан один раз.
"quantity": 1, //Заполненность предмета/прочность/количество в стаке. Если поля нет, оно считается равным 1.
"UsePercentileQuantity": true // Процентное заполнение Quantity - true, точное заполнение Quantity - false.
"classname": "AssaultBag_Black", //Класснейм предмета
"content": [ //Что положить в предмет
{
"classname": "CZ61", //Класснейм предмета
"count": 2, //Сколько раз выдать предмет. Если поля нет, предмет будет выдан один раз.
"content": [
{
"classname": "Mag_CZ61_20Rnd" //Класснейм предмета
},
{
"classname": "PistolSuppressor" //Класснейм предмета
}
]
}
]
}
],
"items": [ //Дополнительные предметы, которые игрок получит при появлении всегда, если у него есть доступ к этому набору
{
"count": 1, //Выдать предмет 1 раз
"quantity": 1, //Заполненность предмета/прочность/количество в стаке. Если поля нет, оно считается равным 1.
"UsePercentileQuantity": true // Процентное заполнение Quantity - true, точное заполнение Quantity - false.
"classname": "SodaCan_Cola", //Класснейм предмета
"content": [] //Что положить в предмет. Если в предмет ничего не помещается, поле можно не указывать
}
],
"spawns": { //Настройки точек появления, которые игрок увидит, если у него есть доступ к этому набору
"Example spawn": { //Точка под названием "Example spawn"
"cooldown": 120, //К/д точки
"points": [ //Набор реальных точек, среди которых будет выбрано место после выбора этой точки
{
"radius": 20, //Радиус проверки на игроков
"position": "2500.000000 20.000000 2000.000000" //Координаты точки
}
],
"position": "2500.000000 0.000000 2000.000000" //Отображаемая на карте позиция точки
}
},
}
}
Если игрок имеет доступ к данному набору, то в меню у него в категории Character появится пункт с персонажем Mirek, на которого будет надета футболка, в категории "Bag" появится рюкзак, в котором будет лежать 2 CR-61 Skorpion, на каждом их которых будет закреплён глушитель и магазин на 20 патронов. Также игрок получит доступ к точке появления под названием "Example Set", расположенной на поверхности на координатах 2500 0 2000.
Глобальный файл конфигурации
Глобальный файл конфигурации находится по пути DZSM/config.json. Файл использует формат JSON.
{
"UserSetsOverrideDefaultSets": true/false //Скрывать ли def наборы, если у игрока есть другие наборы.
"DefaultSets": [ //Список доступным всем наборов
"Example Set", //Название набора
"Test" //Название набора
],
"PreloadSets": [ //Список предзагружаемых наборов
"Example Set" //Предзагружаемый набор
]
"quickslots": { //Слоты быстродействия, работают в порядке очереди.
"slot1": ["BandageDressing","Apple"], //В каждый слот вы можете назначить предмет.
"slot2": [],
"slot3": [],
"slot4": [],
"slot5": [],
"slot6": [],
"slot7": [],
"slot8": [],
"slot9": [],
"slot0": []
},
"InterfaceColor": -16101938 //Цвет интерфейса, подробнее в разделе "форматы цветов"
}
В данном файле конфигурации можно настроить как доступные всем наборы, так и предзагружаемые наборы. Предзагружаемые наборы - это наборы, информация о которых читается из их файлов конфигурации в момент загрузки сервера. Эти наборы увеличивают время загрузки сервера, но не влияют на время открытия меню. Остальные наборы загружаются по необходимости. Загрузка такого набора начинается, когда впервые какой-либо игрок с доступом к нему открывает меню. Такие наборы влияют на время открытия меню в первый раз у первого игрока, которому потребовался такой набор.
Иначе говоря, предзагружаемые наборы замедляю загрузку сервера, но уменьшают время открытия меню у игроков.
Файл конфигурации игрока
Файл конфигурации игрока размещается по пути DZSM/users/{steamID64}.json. Файл использует формат JSON. Файл читается сервером при входе игрока, и обновляется при выходе игрока.
{
"Cooldowns": { //Список к/д точек появления игрока
"Example Set": { //Набор, из которого взяты точки
"Example spawn": 1692032832 //Точки, взятые из набора, и Unix-timestamp времени, когда к/д закончится
}
},
"AvailableSets": [ //Список доступных игроку наборов
"Test" //Название набора
]
}
Локализация
Файл локализации располагается по пути DZSM/locale.loc. Для инструкций по его изменению обратитесь к статье Редактирование файлов локализации. В файле локализации можно указывать id набора в качестве ключа (в таком случае оно не должно содержать пробелов), чтобы переводить названия наборов на клиенте.
Last updated