cfglimitsdefinition.xml and cfglimitsdefinitionuser.xml

Purpose

These two files are the shared vocabulary for the entire economy system. They define what names are valid for categories, placement tags, usage channels, and tier values. Every reference in types.xml and mapgroupproto.xml to a category, usage, tag, or value must match an entry here or the reference is silently ignored.

  • cfglimitsdefinition.xml — the base definition file provided by the game. Do not delete entries from this file.
  • cfglimitsdefinitionuser.xml — the user-extension file. Add your custom categories, usages, or tags here.

Console Path

dayzxb_missions/dayzOffline.<mapname>/cfglimitsdefinition.xml        (Xbox)
dayzxb_missions/dayzOffline.<mapname>/cfglimitsdefinitionuser.xml    (Xbox)
dayzps_missions/dayzOffline.<mapname>/cfglimitsdefinition.xml        (PlayStation)
dayzps_missions/dayzOffline.<mapname>/cfglimitsdefinitionuser.xml    (PlayStation)

Connects To

  • types.xml (db/)<category>, <usage>, and <value> references must exist here
  • mapgroupproto.xml<category>, <tag>, and <usage> on loot containers must match entries here

Full Block Structure

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<lists>

  <categories>
    <category name="tools"/>
    <category name="containers"/>
    <category name="clothes"/>
    <category name="food"/>
    <category name="weapons"/>
    <category name="books"/>
    <category name="explosives"/>
    <category name="lootdispatch"/>
  </categories>

  <tags>
    <tag name="floor"/>
    <tag name="shelves"/>
    <tag name="ground"/>
  </tags>

  <usageflags>
    <usage name="Military"/>
    <usage name="Police"/>
    <usage name="Medic"/>
    <usage name="Firefighter"/>
    <usage name="Industrial"/>
    <usage name="Farm"/>
    <usage name="Coast"/>
    <usage name="Town"/>
    <usage name="Village"/>
    <usage name="Hunting"/>
    <usage name="Office"/>
    <usage name="School"/>
    <usage name="Prison"/>
    <usage name="Lunapark"/>
    <usage name="SeasonalEvent"/>
    <usage name="ContaminatedArea"/>
    <usage name="ContaminatedArea_Dynamic"/>
    <usage name="Historical"/>
    <usage name="Special"/>
    <usage name="Underground"/>
  </usageflags>

  <valueflags>
    <value name="Tier1"/>
    <value name="Tier2"/>
    <value name="Tier3"/>
    <value name="Tier4"/>
    <value name="Unique"/>
  </valueflags>

</lists>

Field-by-Field Reference

<categories>

Defines valid item categories. Categories are the broadest item grouping — used to filter which loot containers in buildings can accept which item types.

Category What it typically covers
tools Tools, medical, utility items
containers Bags, boxes, storage items
clothes Clothing and gear items
food Food and drink items
weapons Weapons and weapon-related items
books Books and readable items
explosives Grenades, mines, explosive items
lootdispatch Special dispatch category for CE routing

Only one category per item in types.xml.


<tags>

Defines valid placement context tags. Tags are used by mapgroupproto.xml loot points to further filter what types of items can spawn at a specific physical spot within a building.

Tag Typical use
floor Items placed on floor surfaces
shelves Items placed on shelves/counters
ground Items placed on ground outside

Tags work in conjunction with categories — a loot point might accept tools on shelves but not weapons.


<usageflags>

Defines the valid usage channel names. Usage is the routing system that connects items to the types of buildings they can spawn in. Every <usage name="..."/> in types.xml must match an entry here.

Standard usage channels and their routing:

Usage Where it routes loot
Military Military bases, barracks, checkpoints, armories
Police Police stations
Medic Hospitals, clinics, medical tents
Firefighter Fire stations
Industrial Factories, warehouses, industrial buildings
Farm Barns, farm structures
Coast Coastal buildings, lighthouses, boat areas
Town Town buildings — shops, houses, apartments
Village Small village houses and structures
Hunting Hunting cabins, tree stands, ranger posts
Office Office buildings
School Schools and educational buildings
Prison Prison structures
Lunapark Amusement park buildings
SeasonalEvent Seasonal event content
ContaminatedArea Static contaminated zones
ContaminatedArea_Dynamic Dynamic contaminated zones
Historical Historical/castle structures
Special Special placement contexts
Underground Underground areas, bunkers

An item in types.xml can have multiple <usage> lines — it will be eligible to spawn in any of those contexts.


<valueflags>

Defines the valid tier/value routing names. Tiers correspond to geographic loot zones on the map. Tier1 is the most accessible (coastal/starter) and Tier4 is the most restricted (deep military).

Value Zone
Tier1 Coastal/starter zones
Tier2 Inland civilian areas
Tier3 Military-adjacent / mid-tier zones
Tier4 Deep military / high-end loot zones
Unique Single-location or highly restricted spawning

An item can have multiple <value> lines in types.xml — it will be eligible in any of those tiers.


cfglimitsdefinitionuser.xml

This is your extension file. Add entries here when you need custom categories, usages, or values that aren’t in the base file. The engine merges both files.

Example — adding a custom usage:

<lists>
  <usageflags>
    <usage name="CustomMilitary"/>
    <usage name="EventOnly"/>
  </usageflags>
</lists>

Once added here, you can reference <usage name="CustomMilitary"/> in types.xml and it will be recognized.


What Console Admins Typically Adjust

  1. Adding to cfglimitsdefinitionuser.xml — adding new usage channels or categories for custom mod items.
  2. These files are usually left alone — the base file covers all standard DayZ content. Only edit when introducing new vocabulary that doesn’t exist yet.

How This File Breaks Things

Mismatches between a reference elsewhere and the names defined here do not fail as loudly as a full parse error, but they are not silent in the RPT logs either — the engine’s loader can emit an explicit diagnostic (a '<name>' not present? style message) when a referenced name doesn’t resolve. The gameplay effect can still look “silent” — no in-game error reaches the player, and the item simply doesn’t appear where expected — but an admin checking the RPT log after a change has a real diagnostic to look for, not nothing.

  • An item in types.xml with <usage name="Millitary"/> (typo) — the usage name doesn’t exist in this file, so the item has no valid usage routing and will not spawn naturally. Check the RPT log for a missing-name warning tied to this reference.
  • An item with <value name="Tier5"/> — Tier5 doesn’t exist in valueflags, so the tier reference is invalid and the item’s tier routing is broken.
  • A loot point in mapgroupproto.xml with <category name="gear"/> — if gear isn’t in categories, that filter is ignored or broken.

No in-game error reaches the player. Always check the RPT log after adding a new category/usage/tag/value reference — do not assume the absence of an in-game message means the absence of any diagnostic at all.


Common Mistakes

Mistake Result
Typo in a usage/category name elsewhere that doesn’t match this file Item doesn’t spawn in expected locations; no in-game error, but check RPT for a missing-name diagnostic
Removing an entry from cfglimitsdefinition.xml that types.xml still references Broken reference, item loses that routing, RPT log records the missing name
Adding new entries to base file instead of user file Works but makes future updates harder to track
Case mismatch (military vs Military) Reference fails — these are case-sensitive

DayZ Console Server Configuration Reference — Xbox & PlayStation

This site uses Just the Docs, a documentation theme for Jekyll.