Меню вики
events.xml в DayZ: машины, крушения и животные
Как events.xml в DayZ спавнит машины, крушения вертолётов, животных и заражённых: nominal, min, max, радиусы, флаги, позиции и дети, с живой записью.
Машины, крушения вертолётов, разбитые полицейские машины, животные и группы заражённых берутся не из types.xml. Это динамические события: events.xml задаёт, сколько каждого идёт одновременно, а cfgeventspawns.xml задаёт, где они могут появиться.
Где лежат файлы
События описаны в db/events.xml папки миссии, их позиции в cfgeventspawns.xml в корне миссии. Самой машине всё равно нужна запись в types.xml в DayZ: все поля по порядку, а её запчасти выдаёт cfgspawnabletypes.xml в DayZ: обвесы, груз и износ.
Живая запись: Ada 4x4 на Чернаруси
<event name="VehicleOffroadHatchback">
<nominal>8</nominal>
<min>5</min>
<max>11</max>
<lifetime>300</lifetime>
<restock>0</restock>
<saferadius>500</saferadius>
<distanceradius>500</distanceradius>
<cleanupradius>200</cleanupradius>
<flags deletable="0" init_random="0" remove_damaged="1"/>
<position>fixed</position>
<limit>mixed</limit>
<active>1</active>
<children>
<child lootmax="0" lootmin="0" max="5" min="3" type="OffroadHatchback"/>
</children>
</event>Экономика держит на Чернаруси 8 таких событий, от 5 до 11, не ближе 500 м к игроку и друг к другу, и убирает разбитые машины, чтобы могли появиться новые. В файле игры у события по ребёнку на каждый цвет машины; в блоке выше ребёнок этого класса.
Все поля
| Поле | Что делает |
|---|---|
name | Имя события. События машин начинаются с Vehicle, животных с Animal, заражённых с Infected, крушения и обломки со Static. |
nominal | Сколько событий экономика держит одновременно. |
min, max | Нижняя и верхняя граница числа событий. |
lifetime | Таймер самого события в секундах. Появившаяся машина дальше обычный объект: сколько она живёт, задаёт её запись в types.xml. |
restock | Сколько секунд ждать, прежде чем может появиться новое. |
saferadius | Не ближе этого расстояния к игроку, в метрах. |
distanceradius | Минимальное расстояние между двумя такими событиями, в метрах. |
cleanupradius | Событие не убирается, пока игрок ближе этого расстояния, в метрах. |
flags | deletable: экономика может удалять события; init_random: первые появления случайны; remove_damaged: разбитое убирается, чтобы могло появиться новое. |
position | fixed: позиции из cfgeventspawns.xml; player: вокруг игроков; uniform: случайные места на карте. |
limit | Как min и max применяются к детям: child считает каждого ребёнка отдельно, mixed всех вместе, custom берёт min и max каждого ребёнка. |
active | 1 включает событие, 0 выключает. |
children | Что событие выдаёт: класс со своими min и max, и lootmin, lootmax для лута рядом. |
Позиции
Событие с fixed может появиться только там, где для него есть позиции в cfgeventspawns.xml: <event name="VehicleOffroadHatchback"><pos x="..." z="..." a="..."/></event>, где x и z это координаты карты, а a поворот. Если nominal больше числа свободных позиций, лишние события не появятся никогда.
Частые правки
- Больше машин: поднимите nominal и max события и max его детей и проверьте, что позиций хватает.
- Без крушений вертолётов: поставьте active 0 у события крушения.
- Машина из мода: новое событие с детьми, позиции в cfgeventspawns.xml, запись в types.xml и запчасти в cfgspawnabletypes.xml.
Почему не появляются машины
- Для события нет позиций в cfgeventspawns.xml или их меньше nominal.
- Лимит уже набран: старые машины ещё стоят где-то на карте.
- saferadius или distanceradius так велики, что большая часть позиций закрыта.
- Опечатка в классе ребёнка.
- Машины появляются без колёс или аккумулятора: шансы запчастей в cfgspawnabletypes.xml ниже 1.
Транспорт в базе
На страницах транспорта в базе предметов перечислены все события, которые его выдают, по каждой карте, с nominal, min, max и lifetime: Транспорт. Запчасти в разделе Запчасти.
