Skip to content

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.

Diagram showing four spawn table types feeding into a map's loot regions

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™ .dat file format. The spawn table files are key-value .dat files with a defined structure.
  • A text editor. The 57 Studios™ recommendation for .dat editing 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 .dat spawn 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.dat

The 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.

TierQuality descriptionTypical weight in top-level tableExample contents
Tier1Common civilian loot55–70Pistol, bandage, canned food, flashlight, civilian clothing
Tier2Uncommon intermediate loot25–35Shotgun, first aid kit, military rations, kevlar vest
Tier3Rare high-value loot5–15Military 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
  )
)

Three-tier table hierarchy with top-level weights and sub-table contents

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.

ParameterTypeDescription
Item_DensityfloatAverage number of items per square unit of region area.
Item_RespawnfloatSeconds before a looted item container refreshes.
Zombie_DensityfloatAverage number of zombies per square unit of region area.
Zombie_RespawnfloatSeconds before a killed zombie respawns.
Animal_DensityfloatAverage number of animals per square unit of region area.
Animal_RespawnfloatSeconds before a killed animal respawns.
Vehicle_DensityfloatAverage number of vehicles per square unit of region area.
Vehicle_RespawnfloatSeconds 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:

SettingDescription
TableThe item spawn table file name (without extension).
Min_CountThe minimum number of items spawned per refresh.
Max_CountThe maximum number of items spawned per refresh.
Respawn_TimeThe 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:

SettingDescription
Zombie_TableThe zombie spawn table file name.
Zombie_DensityZombies per square unit.
Zombie_RespawnSeconds before zombie respawn after death.
Zombie_Loot_TableThe item spawn table rolled when a zombie is killed and drops loot.
Zombie_Loot_IndexThe 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:

SettingDescription
TableThe animal spawn table file name.
RadiusThe radius of the spawn point's active area. Animals wander within this radius.
Respawn_TimeSeconds 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:

SettingDescription
TableThe vehicle spawn table file name.
Respawn_TimeSeconds before a destroyed or driven-off vehicle is replaced.
Blocked_RadiusThe 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 gearMap economy status
5–102–4 hoursHealthy scarcity
10–151–2 hoursMarginal
15–2030–60 minutesEconomy degraded
20+Under 30 minutesEconomy 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.

Spawn point placement in the Level Editor with table assignment panel visible

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.dat

If 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.dat

Item 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.

FieldRequiredTypeDefaultDescription
Spawn_ItemsYes (item tables)blockTop-level key for an item spawn table
Spawn_ZombiesYes (zombie tables)blockTop-level key for a zombie spawn table
Spawn_AnimalsYes (animal tables)blockTop-level key for an animal spawn table
Spawn_VehiclesYes (vehicle tables)blockTop-level key for a vehicle spawn table
TableYesblockOne entry in the table
AssetYes (leaf entries)pathPath to an item/zombie/animal/vehicle .dat file
SpawnYes (nested entries)stringName of a nested spawn table file (without extension)
WeightYesintegerSelection 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 archetypeTier1 weightTier2 weightTier3 weightNotes
Hardcore survival70255Severe scarcity; military gear is a rare event
Standard survival603010Balanced for 2–4 hour session length
Action-oriented503515Faster gearing; suitable for combat-focused servers
PvE / cooperative553015Slightly more military gear to offset AI difficulty
Creative / building403030Resources 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 table

Frequently 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

Document history

VersionDateAuthorNotes
1.02026-05-1857 Studios™Initial publication. Weighted selection, tier system, region rules, balancing pitfalls.