Configuration File XML Format

events.xml Configuration

Controls dynamic world events such as helicopter crashes, contaminated zones, and supply drops. Defines event types, spawn rates, and locations.

Overview

events.xml controls dynamic world events in DayZ — things that happen at specific locations with their own spawn logic, separate from the regular loot economy. This includes helicopter crash sites, police car wrecks, contaminated zones, and other dynamic spawns.

Unlike types.xml which manages individual items, events spawn entire groups of objects (a crashed helicopter with surrounding loot). Events have their own nominal/min/lifetime/restock cycle and use position data from cfgeventspawns.xml to determine valid spawn locations.

File Structure

Each event is defined within an <event> element:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<events>
    <event name="StaticHeliCrash">
        <nominal>3</nominal>
        <min>1</min>
        <lifetime>1800</lifetime>
        <restock>600</restock>
        <saferadius>500</saferadius>
        <distanceradius>500</distanceradius>
        <cleanupradius>200</cleanupradius>
        <flags deletable="1" init_random="0" remove_damaged="1"/>
        <position>fixed</position>
        <limit>child</limit>
        <active>1</active>
        <children>
            <child lootmax="10" lootmin="5" max="3" min="1" type="Wreck_Mi8_Crashed"/>
        </children>
    </event>
</events>

Key Parameters

Parameter Description
name Unique identifier for the event. Must match entries in cfgeventspawns.xml for position data.
nominal Target number of active instances of this event on the map at any time.
min Minimum active instances before the CE spawns new ones.
lifetime How long (seconds) the event persists before being cleaned up and potentially respawned elsewhere.
restock Delay (seconds) before a new event instance can spawn after one is cleaned up.
saferadius Minimum distance (meters) from players before the event can spawn. Prevents events appearing near players.
distanceradius Minimum distance (meters) between instances of the same event type.
cleanupradius Radius (meters) around the event within which associated objects are cleaned up when the event despawns.
flags deletable: can be removed. init_random: randomize initial spawn. remove_damaged: clean up if damaged.
position fixed: uses predefined positions from cfgeventspawns.xml. player: spawns relative to player positions.
limit child: limit applies to child objects. custom: uses custom limiting logic. mixed: combination.
active 1 = event is enabled. 0 = event is disabled. Quick way to toggle events without deleting them.

Event Types

Helicopter Crashes

The most sought-after events. Spawn crashed helicopters with high-tier military loot including rare weapons (LAR, VSS, M4A1) and equipment. Visible by smoke columns from a distance. Events: StaticHeliCrash, StaticHeliCrash_Mi8.

Police Cars

Wrecked police vehicles that spawn police-tier loot including pistols, shotguns, and police clothing. More common than helicopter crashes. Events: StaticPoliceCar.

Contaminated Zones

Toxic areas requiring NBC gear to enter safely. Contain high-value loot as a reward for the risk. Configured alongside cfgEffectArea.json. Events: ContaminatedArea_Static, ContaminatedArea_Dynamic.

Position Configuration

Event positions are defined in cfgeventspawns.xml. Each event name in events.xml must have matching position entries. The CE randomly selects from available positions when spawning an event.

<!-- cfgeventspawns.xml position example -->
<event name="StaticHeliCrash">
    <pos x="4521.3" z="9632.1" a="125" />
    <pos x="7832.5" z="2841.7" a="45" />
    <pos x="11234.8" z="7521.3" a="270" />
</event>

x and z are map coordinates. a is the rotation angle in degrees. Add more positions to increase spawn variety.

Example Configurations

Increased Helicopter Crashes

<event name="StaticHeliCrash">
    <nominal>5</nominal>
    <min>2</min>
    <lifetime>2400</lifetime>
    <restock>300</restock>
    <saferadius>500</saferadius>
    <distanceradius>800</distanceradius>
    <cleanupradius>200</cleanupradius>
    <flags deletable="1" init_random="0" remove_damaged="1"/>
    <position>fixed</position>
    <limit>child</limit>
    <active>1</active>
    <children>
        <child lootmax="12" lootmin="6" max="5" min="2" type="Wreck_Mi8_Crashed"/>
    </children>
</event>

Disabled Contaminated Zones

<event name="ContaminatedArea_Dynamic">
    <nominal>0</nominal>
    <min>0</min>
    <lifetime>0</lifetime>
    <restock>0</restock>
    <saferadius>0</saferadius>
    <distanceradius>0</distanceradius>
    <cleanupradius>0</cleanupradius>
    <flags deletable="0" init_random="0" remove_damaged="0"/>
    <position>fixed</position>
    <limit>custom</limit>
    <active>0</active>
</event>

Related Documentation