Часть 1. Подготовка
В
официальной документации от разрабов описано, как работать с категорией функций, которые относятся к редактированию мест спавна лута
Для начала вам нужно создать миссию, в которой вы и будете запускать инструменты дебаггинга
- В папке с игрой создаёте новую папку Missions
- В ней папку для самой миссии по правилу - название миссии.название карты
- Например - CETesting.ChernarusPlus
- Переходите в неё и создаёте два файла:
- Init.c
- start_SP.bat
- В первый прописываете код ниже, который переопределит код из самой игры
-
void main()
{
// economy init
CreateHive();
GetHive().InitOffline();
// player creation
PlayerBase player;
vector spawnPos = "2200 10 2200";
Entity playerEnt = GetGame().CreatePlayer(NULL, "SurvivorF_Eva", spawnPos, 0, "NONE");
player = PlayerBase.Cast( playerEnt );
GetGame().SelectPlayer(NULL, player);
};
- Вся суть сводится к двум запросам
- Создай БД для экономики
- Создай игрока с помощью которого мы будем проверять созданное
- Во второй команды для запуска игры
-
cd ../../
start DayZDiag_x64.exe -mission=.\Missions\CETesting.ChernarusPlus -profiles=.\Missions\CETesting.ChernarusPlus\Logs -nosplash -noPause -noBenchmark -filePatching -doLogs -scriptDebug=true
- Параметр -profiles используем, чтобы логи так же лежали в файле с миссией, а не где-то далеко, далеко
Запускаем игру, выполнив
start_SP.bat
Сворачиваем игру и смотрим, что у нас создалось в папке с миссией:
- Папка Logs для хранения логов
- Папка storage_-1
- Папка backup
- В ней 12 папок, начинающихся с 000 и заканчивающихся 011
- Для хранения данных по зонам карты. Скорее всего карта разделена на квадраты
- Папка data
- В ней множество файлов различных расширений
- players.db
- Хранение информации по игрокам
- spawnpoints.bin
Так как мы используем
DayZDiag_x64.exe, то нам доступны инструменты дебаггинга.
Нажимаем и
удерживаем Win + Alt, передвигаемся стрелочками(вверх-вниз и вправо-влево, Backspace для возврата на предыдущее меню)
Спускаемся до пункта Game и нажимаем стрелку вправо
Нажимаем на стрелку вверх и из первого элемента списка попадаем в последний - это удобно делать, когда список длинный, а нужная опция ближе к его концу, чтобы не тратить время на пролистывание всего списка. Так же при удерживании клавиши по списку можно быстро пробегать, главное вовремя остановиться
Проваливаемся в пункт Central Economy, а затем в Loot Spawn Edit
Стрелочкой вправо у первых двух пунктов меняем значения:
- Spawn Volume Vis -> Adaptive
- Setup Vis -> true
На этом моменте вы уже увидите, что в игровом мире появились различные вспомогательные цветные элементы, такие как цилиндры, сферы и тп.
Теперь чтобы ножками нашего аватара по этому новому и дивному миру не бегать, мы перейдём в режим камеры:
- Снова вызываем Debug Menu и возвращаемся в раздел Game
- У опции Free Camera переводим флажок в true
Наша "душа" отделилась от тела и теперь мы можем быстро перемещаться по карте
Горячие клавиши для этого:
- Q/Z - подняться/опуститься
- W/A/S/D - вперёд/влево/назад/вправо
- Колёсико мыши вверх/вниз - ускорение/замедление скорости перемещения
- Ctrl/Shift + кнопки перемещения - временное ускорение в нужной оси
- Alt + кнопки перемещения - временное замедление в нужной оси
Пост будет дополняться
