How to Add a Trader to a DayZ Server (Expansion Market)
Add a trader to a DayZ server with the Expansion Market: the trader .map line, trader and price files, the trader zone it must stand in, and a safe zone.
Updated Oct 3, 2026 · 5 min read
On this page
- Which trader mod should I use?
- What goes where
- Step 1: Back up and stop the server
- Step 2: Find the position
- Step 3: Make the trader file
- Step 4: Set prices
- Step 5: Place the trader
- Step 6: Cover it with a trader zone
- Step 7: Add a safe zone (optional)
- The gotcha: the trader zone is a sphere
- Common problems
- Traders on GamezServers
- FAQ
To add a trader to a DayZ server with DayZ Expansion, put one line in a .map file in mpmissions/<mission>/expansion/traders/, like ExpansionTraderDenis.Weapons|x y z|yaw 0 0|clothes, where Weapons is a trader file in profiles/ExpansionMod/Traders/. Prices and stock live in profiles/ExpansionMod/Market/. The trader only works inside a trader zone from mpmissions/<mission>/expansion/traderzones/, and zones are spheres, so the zone's height must match the ground. Add a safe zone in expansion/settings/SafeZoneSettings.json if you want one.
Which trader mod should I use?
| Mod | Workshop ID | Notes |
|---|---|---|
| DayZ Expansion Market | Part of DayZ-Expansion-Bundle (2572331007) |
Stock based prices, trader NPCs, ATMs, safe zones. The most common choice, and what this guide covers |
| TraderPlus | 2458896948 |
A standalone trader with its own configs, for servers not running Expansion |
| Trader (Dr_J0nes) | 1590841260 |
The older classic trader mod |
If Expansion is not on your server yet, start with how to add the Expansion mod to a DayZ server. Its Chernarus template already includes working traders you can copy.
What goes where
| File | What it controls | Location |
|---|---|---|
<Name>.map |
Which NPC stands where, what it wears, which trader file it uses | mpmissions/<mission>/expansion/traders/ |
Trader file, e.g. Weapons.json |
Trader name, icon, currencies, and which categories or items it buys and sells | profiles/ExpansionMod/Traders/ |
Category files, e.g. Rifles.json |
Each item's min and max price and stock | profiles/ExpansionMod/Market/ |
| Trader zone files | Where trading works, price percentages and live stock | mpmissions/<mission>/expansion/traderzones/ |
MarketSettings.json |
Global market rules, vehicle spawn spots for vehicle traders | mpmissions/<mission>/expansion/settings/ |
SafeZoneSettings.json |
Safe zones around trader towns | mpmissions/<mission>/expansion/settings/ |
profiles is the server's profile folder (set with -profiles=), and the trader files appear there after the first start with Expansion loaded.

Step 1: Back up and stop the server
Download profiles/ExpansionMod and your mission's expansion folder. Edit with the server stopped, since Expansion writes its files while running.
Step 2: Find the position
Stand where the trader should be and read your position with an admin tool such as Community Online Tools or VPPAdminTools, or place it with the DayZ Editor mod. DayZ coordinates are X Y Z, where Y is the height. Write down all three, plus the direction the trader should face.
Step 3: Make the trader file
In profiles/ExpansionMod/Traders/, copy an existing file such as Weapons.json and rename it, for example Hunter.json. Change only these fields, and never touch m_Version:
"DisplayName": "Hunting Supplies",
"TraderIcon": "Deliver",
"Currencies": [ "expansionbanknotehryvnia" ],
"Categories": [ "Rifles", "Ammo" ],
"Items": {
"huntingknife": 1,
"deerpelt": 2
}
In Items, 0 means players can only buy it here, 1 buy and sell, 2 only sell, and 3 hidden but available as an attachment. Categories takes category file names from the Market folder, without .json.
Step 4: Set prices
Prices come from the category files in profiles/ExpansionMod/Market/. Each item has:
{
"ClassName": "deerpelt",
"MaxPriceThreshold": 120,
"MinPriceThreshold": 60,
"SellPricePercent": -1.0,
"MaxStockThreshold": 100,
"MinStockThreshold": 1,
"QuantityPercent": -1,
"SpawnAttachments": [],
"Variants": []
}
The price slides from MaxPriceThreshold when stock is low to MinPriceThreshold when stock is full. Set both stock thresholds to the same number for a fixed price that never moves. Every item a trader lists needs an entry in a category file, with a class name that really exists in your mods.
Step 5: Place the trader
Create mpmissions/<mission>/expansion/traders/Hunter.map with one line per trader:
ExpansionTraderDenis.Hunter|11833.576 140.605 12469.492|110 0 0|Jeans_Blue,TSHirt_Blue
That is the NPC class, a dot, the trader file name, then position, orientation and the clothes it wears, separated by |. Other built in NPCs include ExpansionTraderBoris, ExpansionTraderMirek and ExpansionTraderLinda, and ExpansionTraderLockerClosedV1 gives you a trader locker instead of a person. Use name:Mark in the gear list to give the NPC a name.
Step 6: Cover it with a trader zone
Open a file in mpmissions/<mission>/expansion/traderzones/, or copy one to make a new zone, and set Position to your trader's coordinates (with the right height) and Radius large enough to cover it. BuyPricePercent and SellPricePercent let one town be cheaper than another.
Step 7: Add a safe zone (optional)
In mpmissions/<mission>/expansion/settings/SafeZoneSettings.json, make sure Enabled is on and add a circle under CircleZones:
{
"Center": [11833.5, 140.6, 12469.4],
"Radius": 150
}
Watch the commas between entries. Start the server and check the script log for JSON errors.
The gotcha: the trader zone is a sphere
The step everyone skips is the zone. Expansion only lets an NPC trade if it stands inside a trader zone, and the Expansion wiki is clear that zones are spheres, not circles on the map. A zone copied from another town, or one with the height left at 0, can sit right under your trader on the map view and still miss it, because the trader is standing 140 metres above the sphere on a hill. The NPC appears, players walk up, and the menu sits on "Loading Trader" or never opens.
Use the full X Y Z from Step 2 for both the trader and the zone, and give the zone a generous radius. The other cause of "Loading Trader" is a broken trader .json, so run the file through a JSON validator after editing.
Common problems
- Stuck on "Loading Trader": the trader is outside every trader zone, or its trader file has a JSON error.
- NPC does not appear: the
.mapfile is in a mission the server does not load, or the NPC class name is misspelt. - Item shows with no picture and no name: the class name does not exist, usually a typo or a mod that is not loaded.
- "Not enough spawn positions" when buying a vehicle: add vehicle spawn spots near that trader in
MarketSettings.json. - Livonia has no traders: the Expansion template has no default trader locations for Livonia, so you place them yourself with these steps.
Traders on GamezServers
On a GamezServers DayZ server, add Expansion by Workshop ID in the panel, then edit the trader, market and zone files in the Files tab or over SFTP, with a one click Backup first. Set the Map setting to the mission folder you edited, since it decides which mission loads. For a PvE trader town, see how to make a DayZ PvE server.
FAQ
Where are DayZ Expansion trader files?
Trader definitions are in profiles/ExpansionMod/Traders/, prices in profiles/ExpansionMod/Market/, and NPC placements in mpmissions/<mission>/expansion/traders/.
How do I change trader prices in DayZ Expansion?
Edit MinPriceThreshold and MaxPriceThreshold for the item in its category file in profiles/ExpansionMod/Market/, then restart.
Why is my DayZ trader stuck on loading?
The trader is not inside a trader zone, often because the zone height is wrong, or its trader JSON file is broken.
Can I make trader prices fixed?
Yes. Set MaxStockThreshold and MinStockThreshold to the same value for each item, and the price stays the same.
Skip the setup. Your own DayZ server.
Then $19.99/mo. Just trying it? $5.00 for 3 days