Overview
types.xml is the master loot table for DayZ. Every item that can spawn on the map has an entry here. Editing it lets you increase rare weapon spawns, reduce food clutter, accelerate restock timers, or remove items entirely. The file lives inside your mission PBO and must be extracted, edited, and repacked before changes take effect.
Locating types.xml
Your mission PBO is in the missionFiles/ directory on your server. The default Chernarus mission is dayz_missions/dayzOffline.chernarusplus/. Extract it using pboProject:
- Open pboProject, point it at the
.pbofile - Extract to a working folder
- Navigate to
db/types.xml
After editing, repack with pboProject and replace the original .pbo on the server.
XML Structure
Each item is a <type> node:
<type name="AKM">
<nominal>5</nominal>
<lifetime>14400</lifetime>
<restock>1800</restock>
<min>2</min>
<quantmin>-1</quantmin>
<quantmax>-1</quantmax>
<cost>100</cost>
<flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="0" deloot="0"/>
<category name="weapons"/>
<tag name="shelves"/>
<usage name="Military"/>
<value name="Tier3"/>
</type>
Key Fields
| Field | What It Controls | Notes |
|---|---|---|
nominal |
Target quantity on the map at any time | Set to 0 to disable spawning |
min |
Quantity threshold that triggers a restock | Must be less than nominal |
restock |
Seconds before a new item spawns after falling below min |
3600 = 1 hour |
lifetime |
Seconds before an item despawns off the ground | 14400 = 4 hours |
Common Adjustments
Increase military weapon spawns:
<nominal>10</nominal>
<min>4</min>
<restock>1800</restock>
Remove an item from the loot table:
<nominal>0</nominal>
<min>0</min>
Setting both nominal and min to 0 prevents any spawning. The item still exists in the game but will not appear as world loot.
Speed up restock across the entire server:
You can batch-edit restock values using a text editor's find/replace. Halving all restock values doubles how fast loot repopulates after being picked up.
Reduce food clutter:
Find all <category name="food"> items and lower their nominal values. This encourages players to forage and hunt rather than looting every house.
Flags
The flags attribute controls where items count toward the nominal total:
count_in_map="1"— items on the ground countcount_in_cargo="0"— items in containers do not count (default)count_in_player="0"— items in player inventories do not count
If you want player-held items to reduce world spawn counts, set count_in_player="1". This is appropriate for high-value items like night vision goggles.
Applying Changes
- Stop the server
- Extract mission PBO with pboProject
- Edit
db/types.xml - Repack the PBO
- Replace the file in
missionFiles/ - Start the server
Changes are not hot-reloadable. The server reads types.xml only at startup.
Troubleshooting
- No loot spawning at all: Check the PBO repack succeeded and the file path is correct. A corrupt PBO silently falls back to defaults.
- Changes not appearing: Confirm you edited the correct mission's types.xml. If you have multiple missions loaded (
missionFiles[]array), the server uses the first entry. - Items spawning at wrong tier zones: Check
<value name="TierX"/>— this pins items to specific map zones.
