Spawn Tables
A custom map ships with every location feeling identical because the mapper never authored spawn tables — every building pulls from the vanilla fallback, every zombie drops the same pistol, and the economy collapses in the first hour of play. Spawn tables are the mechanism that decides what appears where, how often, and at what quality. Getting them right is the difference between a map with a functioning loot economy and one where players quit after a single session.
This article documents the spawn table system that 57 Studios™ uses when building custom Unturned™ maps. The workflow covers the weighted spawn table format, the tier system that drives loot quality, region-based spawn rules, per-spawn-type configuration for items, animals, zombies, and vehicles, and the balancing decisions that prevent common economy failures. Cross-references to the items documentation are included where spawn table authoring intersects with item mod configuration.

Prerequisites
- A custom map project created in the Unturned™ Level Editor. See Custom Map Creation: Project Setup for the environment setup.
- An understanding of the Unturned™
.datfile format. The spawn table files are key-value.datfiles with a defined structure. - A text editor. The 57 Studios™ recommendation for
.datediting is Notepad++. - Familiarity with the Unturned™ vanilla loot tables is helpful but not required. The vanilla tables live in the game install under
Unturned/Bundles/and can be read as reference examples.
What you will learn
- How the Unturned™ spawn table system is structured and how weighted random selection works.
- How to author
.datspawn table files for items, animals, zombies, and vehicles. - How the tier system (Tier1, Tier2, Tier3) stratifies loot quality across a map.
- How to assign spawn tables to map regions and control loot density per region.
- How to configure per-spawn-type settings such as zombie aggro radius and vehicle respawn intervals.
- How to identify and correct the most common spawn table balancing failures.
How weighted random selection works
Every entry in an Unturned™ spawn table has a weight. When the engine selects an item from a table, it sums the weights of all eligible entries and draws a value uniformly at random from zero to that sum. The entry whose weight interval contains the drawn value is selected. The probability of selecting any entry is its weight divided by the total weight of the table.
Weight calculation example
A table with four entries at weights 30, 20, 10, and 5 has a total weight of 65. Entry A (weight 30) is selected 30/65 = 46.2% of the time. Entry D (weight 5) is selected 5/65 = 7.7% of the time. Weights are relative, not absolute — a table with weights 3, 2, 1, and 0.5 produces identical probabilities.
The critical implication is that the absolute weight values do not matter — only the ratios between them. A table with weights 1000, 500, and 100 produces the same selection probabilities as one with weights 10, 5, and 1. The 57 Studios™ convention is to use integer weights in the range 1–100, which makes the ratios easy to read and reason about without a calculator.
Nested spawn tables
Unturned™ supports nested spawn tables: an entry in a spawn table can reference another spawn table rather than a specific item. When the engine selects a nested table entry, it immediately rolls again against the referenced table. Nesting is the mechanism that drives the tier system — a top-level table has entries for Tier1, Tier2, and Tier3 nested tables, each at a different weight, and the tier tables themselves contain the individual items.
The tree above represents a common pattern: the top-level table determines which tier is selected, and the tier table determines the specific item. Adding a new common item means adding it to Tier1 only; adding a new rare item means adding it to Tier3 only. The tier weights at the top level control the overall rarity distribution without requiring changes to the tier tables themselves.
Spawn table .dat format
Each spawn table is a separate .dat file in the map's Spawns/ folder. The file name is the table's name; the engine references tables by file name. The format is a key-value list with a defined structure.
File location and naming
YourMap/
├── Level/
│ └── Spawns/
│ ├── Item_Military.dat
│ ├── Item_Civilian.dat
│ ├── Item_Medical.dat
│ ├── Zombie_City.dat
│ ├── Zombie_Forest.dat
│ ├── Animal_Forest.dat
│ └── Vehicle_Road.datThe 57 Studios™ naming convention is <Type>_<Region>.dat. The <Type> prefix (Item_, Zombie_, Animal_, Vehicle_) makes the table type clear at a glance. The <Region> suffix identifies the region or loot theme the table serves. For nested tier tables, the convention is <Type>_<Region>_Tier<N>.dat (e.g., Item_Military_Tier3.dat).
Item spawn table structure
Spawn_Items
(
Table
(
Asset Item/Pistol.dat
Weight 30
)
Table
(
Asset Item/Bandage.dat
Weight 25
)
Table
(
Asset Item/MilitaryRifle.dat
Weight 5
)
Table
(
Spawn Item_Military_Tier2
Weight 40
)
)Field names are case-sensitive
Spawn_Items must be capitalized exactly as shown. Asset and Weight must also match their documented casing. The engine silently ignores malformed entries, which produces tables that appear to work but generate a narrower loot pool than intended.
The top-level key is the spawn type identifier (Spawn_Items, Spawn_Zombies, Spawn_Animals, Spawn_Vehicles). Each Table block is one entry. An entry either references an Asset (a specific item, zombie, animal, or vehicle) or a Spawn (another spawn table by name).
Zombie spawn table structure
Spawn_Zombies
(
Table
(
Asset Zombie/City_Normal.dat
Weight 60
)
Table
(
Asset Zombie/City_Crawler.dat
Weight 20
)
Table
(
Asset Zombie/City_Burner.dat
Weight 10
)
Table
(
Asset Zombie/City_Boss.dat
Weight 5
)
Table
(
Spawn Zombie_City_Mega
Weight 5
)
)Zombie spawn tables vs. zombie regions
The zombie spawn table controls which zombie types appear; the zombie region (configured in the Level Editor) controls where they appear and at what density. A zombie table can be assigned to multiple regions; each region can have different density settings while sharing the same type distribution.
Animal spawn table structure
Spawn_Animals
(
Table
(
Asset Animal/Deer.dat
Weight 50
)
Table
(
Asset Animal/Wolf.dat
Weight 30
)
Table
(
Asset Animal/Bear.dat
Weight 20
)
)Animal spawn tables are simpler than item tables because animals do not have a tier system. The weight controls only species probability.
Vehicle spawn table structure
Spawn_Vehicles
(
Table
(
Asset Vehicle/Sedan.dat
Weight 40
)
Table
(
Asset Vehicle/Pickup.dat
Weight 30
)
Table
(
Asset Vehicle/Van.dat
Weight 20
)
Table
(
Asset Vehicle/MilitaryTruck.dat
Weight 10
)
)The tier system
The tier system stratifies loot quality across the map. 57 Studios™ uses three tiers — Tier1, Tier2, and Tier3 — consistent with the vanilla Unturned™ loot table organization.
| Tier | Quality description | Typical weight in top-level table | Example contents |
|---|---|---|---|
| Tier1 | Common civilian loot | 55–70 | Pistol, bandage, canned food, flashlight, civilian clothing |
| Tier2 | Uncommon intermediate loot | 25–35 | Shotgun, first aid kit, military rations, kevlar vest |
| Tier3 | Rare high-value loot | 5–15 | Military rifle, scope, NVGs, tactical vest, explosives |
Tier weight calibration
The weights at the top level of the table determine the tier distribution for the entire map. A Tier3 weight above 20 will flood the server with military gear within the first hour. The 57 Studios™ recommendation is to start at Tier3 weight 10 and adjust based on observed server economy — never above 20 for a survival map.
Building a tiered item table
The pattern below is the 57 Studios™ reference for a tiered item spawn table. The top-level table references the three tier sub-tables. The tier sub-tables contain the individual items.
Top-level table — Item_Military.dat:
Spawn_Items
(
Table
(
Spawn Item_Military_Tier1
Weight 60
)
Table
(
Spawn Item_Military_Tier2
Weight 30
)
Table
(
Spawn Item_Military_Tier3
Weight 10
)
)Tier1 sub-table — Item_Military_Tier1.dat:
Spawn_Items
(
Table
(
Asset Item/MilitaryPistol.dat
Weight 35
)
Table
(
Asset Item/Bandage.dat
Weight 30
)
Table
(
Asset Item/Rations.dat
Weight 25
)
Table
(
Asset Item/MagazineSmall.dat
Weight 10
)
)Tier3 sub-table — Item_Military_Tier3.dat:
Spawn_Items
(
Table
(
Asset Item/AssaultRifle.dat
Weight 40
)
Table
(
Asset Item/SniperRifle.dat
Weight 25
)
Table
(
Asset Item/NightVision.dat
Weight 20
)
Table
(
Asset Item/MilitaryVest.dat
Weight 15
)
)
Region-based spawn rules
The Level Editor assigns spawn tables to map regions. A region is a defined area of the map terrain, painted using the Level Editor's zone tools. Each region has its own item, zombie, animal, and vehicle spawn table assignments, as well as density and respawn interval settings.
Region density settings
Each region has a set of density parameters that control how many spawns are active simultaneously and how quickly they respawn after being looted or killed.
| Parameter | Type | Description |
|---|---|---|
Item_Density | float | Average number of items per square unit of region area. |
Item_Respawn | float | Seconds before a looted item container refreshes. |
Zombie_Density | float | Average number of zombies per square unit of region area. |
Zombie_Respawn | float | Seconds before a killed zombie respawns. |
Animal_Density | float | Average number of animals per square unit of region area. |
Animal_Respawn | float | Seconds before a killed animal respawns. |
Vehicle_Density | float | Average number of vehicles per square unit of region area. |
Vehicle_Respawn | float | Seconds before a destroyed or driven-off vehicle is replaced. |
Density vs. table weight
Density controls how many spawns exist in a region. Table weight controls what spawns. These are independent — a military base can have the same zombie density as a city but a different zombie table, producing the same number of zombies with a different type distribution.
Overlapping regions
The Level Editor supports overlapping regions. When a spawn point falls within multiple overlapping regions, Unturned™ uses the highest-priority region's table for that spawn point. Region priority is set in the Level Editor; higher-priority regions override lower-priority ones.
Overlapping region pitfall
A common mistake is to create a "global fallback" region that covers the entire map and then place specific regions on top. If the fallback region has higher priority than the specific regions, the fallback table overrides every specific table across the map. Always set the fallback region to the lowest priority.
Per-spawn-type configuration
Item spawn configuration
Item spawns attach to spawn-point GameObjects placed in the Level Editor. Each item spawn point references an item spawn table and has the following per-spawn-point settings:
| Setting | Description |
|---|---|
Table | The item spawn table file name (without extension). |
Min_Count | The minimum number of items spawned per refresh. |
Max_Count | The maximum number of items spawned per refresh. |
Respawn_Time | The seconds before the spawn point refreshes after being fully looted. |
Item spawn points vs. container objects
Item spawn points are placed on loot containers (crates, shelves, drawers) in the Level Editor. The spawn table is assigned to the spawn point on the container, not to the container itself. A single container can have multiple spawn points, each with a different table — a military crate can roll from Item_Military.dat for its main loot and from Item_Ammo.dat for its ammunition.
Zombie spawn configuration
Zombie spawns are defined per region, not per spawn point. The region's zombie table controls what types appear; the following per-region settings control behavior:
| Setting | Description |
|---|---|
Zombie_Table | The zombie spawn table file name. |
Zombie_Density | Zombies per square unit. |
Zombie_Respawn | Seconds before zombie respawn after death. |
Zombie_Loot_Table | The item spawn table rolled when a zombie is killed and drops loot. |
Zombie_Loot_Index | The loot drop probability index (0 = never, 255 = always). |
Zombie loot table separation
The zombie loot table (Zombie_Loot_Table) is a separate table from the region's item table (Item_Table). A common mistake is to assign the military item table to both the item spawn points and the zombie loot table, which floods the map with military gear because zombies become a second, independent source of the same loot. The 57 Studios™ recommendation is to author a dedicated Zombie_Loot_* table for each region that contains lower-value loot (food, civilian clothing, standard weapons) regardless of the region's location tier.
Animal spawn configuration
Animal spawns are placed as spawn-point GameObjects in the Level Editor, similar to item spawn points. Per-spawn-point settings:
| Setting | Description |
|---|---|
Table | The animal spawn table file name. |
Radius | The radius of the spawn point's active area. Animals wander within this radius. |
Respawn_Time | Seconds before a killed animal is replaced by a new spawn. |
Vehicle spawn configuration
Vehicle spawn points are placed at positions on the map where vehicles should appear (parking lots, roadsides, garages). Per-spawn-point settings:
| Setting | Description |
|---|---|
Table | The vehicle spawn table file name. |
Respawn_Time | Seconds before a destroyed or driven-off vehicle is replaced. |
Blocked_Radius | The radius checked for obstructions before spawning a vehicle; if another vehicle or large object occupies the radius, the spawn is deferred. |
Vehicle respawn timing
The 57 Studios™ recommendation for vehicle respawn intervals is 900–1800 seconds (15–30 minutes) for common civilian vehicles and 3600 seconds (60 minutes) for military or rare vehicles. Short respawn intervals produce a map where vehicles are effectively unlimited resources; long intervals make players compete for the few vehicles that exist.
Balancing pitfalls
Pitfall 1: Tier3 weight too high
Setting Tier3 weight above 15 in any item table produces an economy where military gear is common. Players gear up in the first 20 minutes and the mid-game survival loop collapses. The 57 Studios™ measured threshold across multiple map deployments is that Tier3 probability above approximately 12% eliminates meaningful resource scarcity on most map sizes.
| Tier3 weight (of 100 total) | Approximate time to full military gear | Map economy status |
|---|---|---|
| 5–10 | 2–4 hours | Healthy scarcity |
| 10–15 | 1–2 hours | Marginal |
| 15–20 | 30–60 minutes | Economy degraded |
| 20+ | Under 30 minutes | Economy collapsed |
Pitfall 2: Table with a single entry
A spawn table with one entry always produces the same item. The table technically functions, but it defeats the purpose of a spawn table — the loot becomes entirely predictable and players memorize the single spawn location for each item they need. The 57 Studios™ minimum is three entries per leaf table.
Pitfall 3: Zero-weight entries
An entry with Weight 0 is never selected but still appears in the table file. Zero-weight entries are a common artifact of iterative editing — a modder disables an item by setting its weight to zero instead of removing it. They are not harmful, but they create confusion during review. The 57 Studios™ convention is to remove zero-weight entries from the file rather than leaving them as disabled placeholders.
Pitfall 4: Identical tables across all regions
Assigning the same item table to every region eliminates loot differentiation. Players have no reason to travel to specific locations because the same items spawn everywhere. Every region should have a table that reflects its thematic identity — a hospital has medical supplies, an armory has weapons, a grocery store has food.
Pitfall 5: Zombie loot table same as region item table
Covered in the per-spawn-type section above. The effect compounds on high-density regions: with 40 zombies per region and a 50% drop rate, 20 items per minute flow from zombie kills alone, flooding the server with loot at a rate that no item spawn table can balance against.
Pitfall 6: Animal density too high relative to map size
Animal density interacts with server performance. Each animal is a persistent AI agent. On maps smaller than 1024×1024 units with more than approximately 200 active animals, the AI update cost becomes measurable on server CPU. The 57 Studios™ recommendation is to set animal density conservatively and use respawn intervals to maintain population rather than high static density.

Cross-referencing items and spawn tables
Spawn tables reference items by their .dat file path. The item must exist in the map's mod bundle or in the vanilla Unturned™ bundle. The path format is relative to the Bundles/ root:
Asset Item/MilitaryRifle.datIf the item is a custom item mod authored alongside the map, the path must match the item's .dat file location within the mod folder:
Asset MyModName/Items/CustomRifle.datItem mod and spawn table version alignment
When a custom item mod is updated (new IDs, renamed .dat files), the spawn tables that reference the old paths will silently fail — the table entry produces no item. The 57 Studios™ recommendation is to maintain a cross-reference list of item .dat paths and the spawn tables that use them. When an item's path changes, update all referencing tables. See the items documentation for the item .dat structure.
Appendix A: Spawn table .dat field reference
The following table documents every recognized field in a spawn table .dat file. Fields marked Optional are not required; if absent, the engine uses the default.
| Field | Required | Type | Default | Description |
|---|---|---|---|---|
Spawn_Items | Yes (item tables) | block | — | Top-level key for an item spawn table |
Spawn_Zombies | Yes (zombie tables) | block | — | Top-level key for a zombie spawn table |
Spawn_Animals | Yes (animal tables) | block | — | Top-level key for an animal spawn table |
Spawn_Vehicles | Yes (vehicle tables) | block | — | Top-level key for a vehicle spawn table |
Table | Yes | block | — | One entry in the table |
Asset | Yes (leaf entries) | path | — | Path to an item/zombie/animal/vehicle .dat file |
Spawn | Yes (nested entries) | string | — | Name of a nested spawn table file (without extension) |
Weight | Yes | integer | — | Selection weight for this entry; must be a positive integer |
Asset vs. Spawn mutual exclusion
Each Table block must contain either an Asset field OR a Spawn field, not both. If both are present, the engine uses the Asset field and ignores Spawn. If neither is present, the entry is ignored.
Appendix B: Bake settings comparison — tier weight presets
The following presets represent the 57 Studios™ calibrated starting points for different map archetypes. Adjust based on observed economy after deployment.
| Map archetype | Tier1 weight | Tier2 weight | Tier3 weight | Notes |
|---|---|---|---|---|
| Hardcore survival | 70 | 25 | 5 | Severe scarcity; military gear is a rare event |
| Standard survival | 60 | 30 | 10 | Balanced for 2–4 hour session length |
| Action-oriented | 50 | 35 | 15 | Faster gearing; suitable for combat-focused servers |
| PvE / cooperative | 55 | 30 | 15 | Slightly more military gear to offset AI difficulty |
| Creative / building | 40 | 30 | 30 | Resources are abundant; survival pressure is low |
Adjusting presets
Use the standard survival preset as the baseline. After a 2-hour test session, count how many Tier3 items are in active use on the server. If most players have full military kits, reduce Tier3 weight by 2–3 points. If no players have progressed past Tier1, increase Tier3 weight or reduce item respawn intervals.
Appendix C: Example complete map spawn folder
The following structure represents a complete spawn folder for a map with four regions — military base, city, residential, and forest — with tiered item tables and dedicated zombie loot tables.
YourMap/Level/Spawns/
├── Item_Military.dat ← top-level military item table
├── Item_Military_Tier1.dat ← military Tier1 leaf table
├── Item_Military_Tier2.dat ← military Tier2 leaf table
├── Item_Military_Tier3.dat ← military Tier3 leaf table
├── Item_City.dat ← top-level city item table
├── Item_City_Tier1.dat
├── Item_City_Tier2.dat
├── Item_Residential.dat ← residential (two-tier only)
├── Item_Residential_Tier1.dat
├── Item_Residential_Tier2.dat
├── Item_Forest.dat ← forest item table (foraging/survival)
├── Zombie_Military.dat ← zombie type table for military base
├── Zombie_City.dat ← zombie type table for city/residential
├── Zombie_Loot_Military.dat ← zombie loot drop table (military kills)
├── Zombie_Loot_City.dat ← zombie loot drop table (city kills)
├── Animal_Forest.dat ← forest animal table
└── Vehicle_Road.dat ← roadside vehicle tableFrequently asked questions
What is the difference between a spawn table and a spawn point?
A spawn table defines the probability distribution of what can appear. A spawn point is a GameObject placed in the Level Editor that references a spawn table and marks the location where items, zombies, animals, or vehicles can appear. The spawn table answers "what might appear"; the spawn point answers "where it appears and when it refreshes."
Why is my spawn table producing no loot?
The most likely causes are: the file is not in the correct Spawns/ folder; the file name referenced in the Level Editor does not match the actual file name (case-sensitive); or every Table block is missing either Asset or Spawn. Enable the Level Editor's console output and check for asset loading errors when the map loads.
Can I use decimal weights like 0.5 or 1.5?
The Unturned™ engine parses weights as integers. Decimal values are truncated to their integer floor (0.5 becomes 0, 1.5 becomes 1). A weight of 0 means the entry is never selected. Use whole-number weights only.
How do I make one specific item guaranteed to appear in every refresh?
Use a single-entry table with one Asset field and set the spawn point's Min_Count and Max_Count both to 1. When a table has only one entry, that entry is always selected; setting both count bounds to 1 guarantees exactly one spawn per refresh. This pattern is common for quest-critical items.
Can different floors of the same building use different spawn tables?
Yes. Each item spawn point independently references a spawn table. Two spawn points on different floors of the same building can reference different tables — a hospital's first floor can use a common medical table while the storage room uses a higher-tier medical table.
My zombie loot drops are too frequent. How do I reduce drop rate without removing items from the table?
Reduce the Zombie_Loot_Index setting on the region. An index of 255 produces near-guaranteed drops; an index of 64 produces drops approximately 25% of the time. Reduce the index in steps of 20 and test over a 1-hour session.
What happens if two overlapping regions reference different tables and I place a spawn point in the overlap?
The spawn point uses the table from the highest-priority region. If both regions have the same priority, behavior is implementation-defined — the engine may use either. The 57 Studios™ recommendation is to never have two same-priority regions overlap; always assign distinct priorities.
Can I change spawn tables after the map is published?
Yes. Spawn table .dat files are read at map load, not baked into the map bundle. Updating the spawn table files and redistributing the map folder takes effect on the next server restart. Item spawn points reference tables by name at runtime.
How does the engine handle a spawn table that references a non-existent nested table?
The engine skips the entry that references the missing table. The remaining entries in the parent table are reweighted proportionally. This can produce unexpected loot distributions — if a high-weight entry references a missing table, the remaining low-weight entries dominate. The 57 Studios™ recommendation is to validate all nested table references by loading the map in single-player and inspecting loot containers before publishing.
What is the maximum number of entries in a single spawn table?
The Unturned™ engine does not document a hard entry limit, but performance degrades as tables grow large. The 57 Studios™ practical limit, based on observed performance across multiple map projects, is 50 entries per table file. Tables with more than 50 entries should be reorganized into a two-tier structure with nested sub-tables.
Can animal spawn tables reference zombie types, or vice versa?
No. The top-level key determines the spawn type context. An Asset path inside a Spawn_Animals block must reference an animal .dat file. Referencing a zombie .dat from an animal table context produces a load error and the entry is skipped.
How do vehicle spawn tables interact with map boundaries?
Vehicle spawn points that are placed near map boundaries may have their Blocked_Radius check fail if the boundary terrain is considered an obstruction. The 57 Studios™ recommendation is to place vehicle spawn points at least 20 units inside the map boundary to avoid boundary-collision interference with the spawn radius check.
Cross-references
- Custom Map Creation: Project Setup — the previous article; the Level Editor environment where spawn tables are assigned.
- Navmesh and Pathfinding — the next article; zombie AI navigation depends on the navmesh baked for the same regions where zombie spawn tables are active.
- Vehicle Mod Basics — vehicle
.datstructure; vehicle spawn tables reference vehicle.datfiles. - Project Folder Structure and GUIDs — the map folder layout that contains the
Spawns/directory. - Smartly Dressed Games Modding Documentation — the official spawn table field reference.
- Unturned on Steam — the base game.
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2026-05-18 | 57 Studios™ | Initial publication. Weighted selection, tier system, region rules, balancing pitfalls. |
