Skip to content

Magazine Asset Reference

The magazine asset is the data definition for every ammunition container in Unturned™ — box magazines, drum magazines, speedloaders, internal tubes, stripper clips, and specialty ammunition. Every functional gun mod requires at least one paired magazine asset. The magazine asset determines round capacity, muzzle velocity, pellet count, projectile type, and — most critically — the caliber value that links the magazine to compatible guns.

This article is the 57 Studios™ canonical reference for the magazine asset type. It covers every .dat field specific to the magazine asset subclass, the caliber linkage mechanism that controls gun-magazine compatibility, the difference between single-load and full-magazine reload behavior, Pro magazine configuration, magazine size conventions by caliber category, and a complete compatibility table. The shared fields that appear on every item asset (ID, GUID, Rarity, Slot, Size_X, Size_Y) are documented in Item Asset Anatomy; this article focuses on the fields that are unique to the magazine subclass.

A custom drum magazine asset loaded into an Unturned assault rifle in third-person view

What the magazine asset defines

The magazine asset defines the round-side of the gun-magazine relationship. The gun asset defines what weapons the magazine can be loaded into (via Caliber on the gun side). The magazine asset defines what that ammunition does when fired:

  • How many rounds the magazine holds (Amount)
  • How fast the projectile travels (Speed)
  • How many pellets each round fires (Pellets)
  • Whether the round causes an explosion on impact (Explosion)
  • Whether the round is a tracer round (Tracer)
  • How many times the magazine can be reloaded before it degrades (Reloads)
  • What projectile damage modifiers the round applies

Understanding the split between gun-side fields and magazine-side fields is the prerequisite to authoring compatible mod items. A modder who incorrectly places a magazine-side field (e.g., Amount) in the gun .dat will find the field silently ignored, and the magazine will load with default values.

The single most common magazine authoring error

Setting Caliber instead of Caliber_Reference in the magazine .dat. The gun uses Caliber to declare what caliber it accepts. The magazine uses Caliber_Reference to declare what caliber it is. These are two different field names on two different files. Confusing them is the single most common caliber linkage error in new gun mods. Both fields must carry the same numeric value for the magazine to be accepted by the gun.

File structure for a magazine asset

A magazine asset folder contains the same minimum file set as any item asset:

MyRifleMagazine/
├── Asset.dat           ← magazine asset definition (fields documented here)
├── English.dat         ← display name and description
└── MyRifleMagazine.unity3d   ← master bundle (magazine prefab, textures)

The magazine prefab in the bundle is the 3D model shown in the gun's magazine well when equipped. The prefab is also shown as a standalone item in the inventory and when dropped on the ground. Magazine prefab authoring follows the same workflow as any other item prefab; see Master Bundle Export for the packaging workflow.

The caliber linkage mechanism

The caliber linkage is the core mechanism that controls which magazines a gun accepts. It is implemented as a numeric ID shared between the gun asset and the magazine asset.

Gun Asset.dat            Magazine Asset.dat
─────────────            ──────────────────
Caliber 14        ←→    Caliber_Reference 14

The gun's Caliber field     The magazine's Caliber_Reference
declares which caliber       field declares which caliber
this gun accepts.            this magazine is.

If the values match → the gun accepts the magazine.
If the values differ → the gun rejects the magazine at runtime.

Caliber linkage is a hard requirement

If the gun's Caliber field does not exactly match the magazine's Caliber_Reference field, the magazine cannot be loaded into the gun. There is no fallback, no partial match, and no override flag. The value must be identical. This is the most common cause of "magazine not accepted" bugs in gun mods.

Caliber 0: the universal caliber

Caliber 0 is a special value. A gun with Caliber 0 accepts any magazine with Caliber_Reference 0. A magazine with Caliber_Reference 0 can be accepted by any gun with Caliber 0. This is the "universal caliber" — it is used by vanilla Unturned for guns and magazines that are intended to be broadly compatible, or for test/debug items that should accept any ammunition.

The cohort recommendation for Workshop mods is to use a custom caliber ID (not 0) for every mod-specific gun and magazine. Using caliber 0 on a mod magazine means that magazine becomes compatible with any gun (vanilla or mod) that also uses caliber 0, which is likely not the intended behavior.

Assigning custom caliber IDs

Custom caliber IDs are plain uint16 values. There is no registry or reservation system for caliber IDs beyond the vanilla set. The cohort recommendation is to base custom caliber IDs on the mod's item ID range to minimize collision risk:

Mod item ID rangeSuggested caliber ID range
50000–500995001–5010
50100–501995011–5020
50200–502995021–5030
Per-gun uniqueGun ID minus 45000 (e.g., gun ID 50001 → caliber 5001)

The cohort practice for 57 Studios™ gun mods is to assign one caliber ID per gun family. All magazines intended for a specific gun (standard, extended, drum) share the same Caliber_Reference. The gun's Caliber field carries that shared value.

Multiple caliber compatibility on a single gun

A gun can accept magazines of multiple calibers by using the Calibers field (plural) instead of or in addition to Caliber (singular):

Calibers 2
Caliber_0 5001
Caliber_1 5002

With this configuration, the gun accepts any magazine with Caliber_Reference 5001 or Caliber_Reference 5002. This is the pattern used for guns that accept both a standard magazine and a belt-fed drum of a different design, or for bullpup rifles that accept two different magazine forms that the modder treats as separate caliber families.

Complete magazine .dat field reference

Identity and shared fields

The following shared fields are required on every item asset, including magazines. See Item Asset Anatomy for full documentation of these fields.

FieldTypeExampleNotes
IDuint1650002Unique item ID. Use 50000+ range.
GUIDuint128 hex5b8c3a2e7d1f4b6a9e2c5d8a1f3b6c9e128-bit globally unique identifier.
TypeenumMagazineMust be Magazine for this asset type.
NamestringMyRifleMagazineInternal name; also the prefab lookup key.
RarityenumCommonRarity tier. See Rarity enum in Item Asset Anatomy.
SlotenumNoneMagazines use None; they load into the gun's magazine well, not into a player equipment slot.
Size_Xuint81Inventory grid width. Most box magazines are 1 wide.
Size_Yuint81Inventory grid height. Most box magazines are 1 tall.
Bypass_ID_LimitboolTrueRequired for IDs above 2000.

Caliber linkage field

FieldTypeRequiredExamplePurpose
Caliber_Referenceuint16Required5001The caliber ID this magazine declares. Must match the gun's Caliber field (or one of its Caliber_N values). This is the linkage field — it is the most important field on any magazine asset.

Capacity and round fields

FieldTypeRequiredDefaultExamplePurpose
Amountuint8RequiredNone30The number of rounds the magazine holds. This is the round count displayed in the HUD. When this reaches 0, the gun cannot fire until reloaded.
Pelletsuint8Optional19The number of projectiles fired per shot. Values greater than 1 produce a shotgun-style spread pattern. Each pellet is a separate projectile and deals damage independently.
Reloadsuint8Optional0 (unlimited)3The number of times the magazine can be loaded into a gun before it is consumed. 0 means the magazine has unlimited reload uses (it is never consumed by reloading). Values of 1 or greater produce single-use or limited-use magazines.

Reloads field behavior

When Reloads is set to 0, the magazine behaves like a standard magazine — it can be loaded, emptied, and reloaded indefinitely without consuming the magazine item. When Reloads is set to a positive integer, each reload decrements the counter; when the counter reaches 0, the magazine item is destroyed from the player's inventory. This is the mechanic used for single-use magazines (pre-loaded stripper clips, disposable magazine pouches) and for specialty ammunition that should not be refillable.

Ballistics and projectile fields

FieldTypeRequiredDefaultExamplePurpose
SpeedfloatOptional400850Muzzle velocity of the projectile in meters per second. Higher values produce a flatter trajectory and less bullet drop over distance.
RangefloatOptionalInherits from gun400Effective range of the round in meters. When specified, this value modifies or overrides the gun's Range field for this ammunition.
Ballistic_ForcefloatOptional00.002Force applied to the target's rigidbody on hit. Affects ragdoll behavior.
ExplosionfloatOptional06.0The explosion radius in meters when the projectile impacts. Values greater than 0 produce an explosive round. The explosion deals area-of-effect damage to players, zombies, animals, and structures within the radius.
Explosive_Damage_MultiplierfloatOptional1.00.5Multiplier on explosion damage. Default is 1.0. Useful for producing large explosion radii with reduced damage compared to the full direct-hit damage.

Damage modifier fields

Magazine damage modifier fields multiply the gun's base damage fields. A modifier of 1.0 means no change. A modifier of 0.5 means the round deals half the gun's base damage. A modifier of 2.0 means the round deals double the gun's base damage.

FieldTypeDefaultExamplePurpose
Player_Damagefloat1.01.2Multiplier on the gun's Player_Damage field.
Zombie_Damagefloat1.01.5Multiplier on the gun's Zombie_Damage field.
Animal_Damagefloat1.01.0Multiplier on the gun's Animal_Damage field.
Barricade_Damagefloat1.00.5Multiplier on the gun's Barricade_Damage field.
Structure_Damagefloat1.00.5Multiplier on the gun's Structure_Damage field.
Vehicle_Damagefloat1.00.8Multiplier on the gun's Vehicle_Damage field.
Resource_Damagefloat1.01.0Multiplier on the gun's Resource_Damage field.
Object_Damagefloat1.00.8Multiplier on the gun's Object_Damage field.

Damage multipliers, not flat values

A common authoring mistake is to set Player_Damage 40 on the magazine, expecting it to mean "40 damage per shot." The field is a multiplier, not a flat value. Setting Player_Damage 40 means the round deals 40× the gun's base Player_Damage — almost certainly not the intended result. For standard magazines, leave all damage multiplier fields at their defaults (1.0) or omit them. Use multipliers only when intentionally producing armor-piercing, incendiary, or reduced-power ammunition variants.

Specialty round fields

FieldTypeDefaultExamplePurpose
TracerboolFalseTrueIf True, the projectile renders a visible tracer trail. The tracer is visible to all players in the vicinity.
IncendiaryboolFalseTrueIf True, the round applies a fire damage-over-time effect on hit.
ExplosiveboolFalseTrueAlternative to the Explosion float; if True, uses a default explosion radius. Using the Explosion float field gives more control over explosion size.
StickyboolFalseTrueIf True, the projectile sticks to the surface it hits before detonating (grenade-launcher sticky round behavior).

Pro magazine field

FieldTypeDefaultExamplePurpose
ProboolFalseTrueIf True, this magazine is a PRO/Gold-tier item. Non-PRO players can see and pick up the magazine but cannot use it. See the Pro field documentation in Item Asset Anatomy for full context. The cohort recommendation for Workshop mods is to leave this False.

Reload behavior: full-magazine versus single-load

Unturned supports two distinct reload mechanics. Which mechanic applies to a given gun-magazine pair is determined by the gun asset's Action field, not the magazine asset. The magazine asset defines the capacity; the gun asset defines how the reload animation interacts with that capacity.

Full-magazine reload (Action: Trigger)

With Action Trigger (semi-auto and automatic weapons), the reload animation swaps the entire magazine at once. The player's round count jumps from whatever remains to the full Amount value of the new magazine. The old magazine (if partially loaded) is placed back into the player's inventory. A new, fully loaded magazine is consumed from inventory.

Before reload:  Gun has 8 of 30 rounds remaining.
                Player has one 30-round magazine in inventory.
After reload:   Gun has 30 of 30 rounds.
                Player's inventory contains the 8-round partial magazine.
                The 30-round magazine is consumed from inventory.

Single-load reload (Action: Bolt, Pump, Break)

With Action Bolt, Action Pump, or Action Break, each reload cycle chambers one round (or one shot's worth of rounds for break-action). The player can manually cycle the action to top off the weapon one round at a time. The magazine item in inventory is decremented by one round per cycle rather than being swapped wholesale.

Before reload:  Gun has 2 of 5 rounds remaining (pump shotgun).
                Player has a 5-round tube magazine in inventory with 4 rounds.
After one pump: Gun has 3 of 5 rounds.
                Player's tube magazine now shows 3 rounds.

Magazine size and reload mechanic interaction

Single-load weapons (bolt-action rifles, pump shotguns, break-action shotguns) typically use smaller magazine capacities because the player loads one round at a time. A pump shotgun with a 20-round tube would be functionally different from the same gun with a 5-round tube — the Amount field controls how many individual pump-loads the magazine contains. Author Amount to match the intended gameplay experience for the reload mechanic the gun uses.

Magazine capacity by caliber category

The following table documents the cohort-recommended magazine capacity ranges by weapon category. These are guidelines for authoring magazines that feel appropriate to the weapon type; they are not enforced by the engine.

Weapon categoryAction typeStandard mag (Amount)Extended mag (Amount)Drum mag (Amount)
PistolTrigger10–1518–2530–50
PDW / SMGTrigger20–3040–5060–100
Assault rifleTrigger25–3540–6075–100
Battle rifleTrigger10–2025–30
Bolt-action sniperBolt5–1010–15
Semi-auto sniperTrigger10–1520–25
Pump shotgunPump4–88–10
Break-action shotgunBreak2–4
LMGTrigger50–75100–150200–250
Grenade launcherTrigger1–6
RevolverTrigger5–8

Balance context

The capacity values above are calibrated against the vanilla Unturned balance. Workshop mods that operate on servers with custom balance rules (survival servers with scarce ammunition, military servers with generous drops) may need to adjust these values significantly. The cohort recommendation is to start at the standard capacity and tune based on playtesting feedback on the mod's target server type.

Magazine compatibility table by vanilla caliber

The following table documents the caliber IDs used by vanilla Unturned gun families, as a reference for modders who want to make a magazine compatible with vanilla weapons. These caliber IDs are from the vanilla asset files and may change with game updates — always verify against the official Smartly Dressed Games documentation.

Caliber IDVanilla gun familyExample vanilla gunsNotes
1NATO 5.56mmEaglefire, Swissgewehr, MaplestrikeStandard assault rifle caliber
2NATO 7.62mmSabertooth, DragonfangBattle rifle / sniper caliber
39mm pistolCobra, ZubeknakovStandard pistol caliber
412-gaugeMasterkey, Ace, SchofieldShotgun caliber
5.50 BMGGrizzlyHeavy sniper caliber
640mm grenadeTimberwolf (launcher attachment)Grenade launcher caliber
7RocketRocket launcher itemsRocket caliber
8ArrowCrossbow, Compound BowBow / crossbow caliber
9ThrowingThrowing KnifeThrowable weapon caliber
145.45mmAceAK-pattern caliber

Vanilla caliber compatibility risks

Using a vanilla caliber ID on a mod magazine makes that magazine compatible with every vanilla gun that shares that caliber. This is occasionally intentional (a high-capacity drum magazine for vanilla assault rifles) but is more often a mistake. If you are authoring a mod magazine for a mod gun, use a custom caliber ID in the 5000+ range to avoid unintended vanilla compatibility.

Example magazine .dat files

Standard box magazine

A 30-round box magazine for a custom assault rifle with caliber ID 5001:

ID 50002
GUID 5b8c3a2e7d1f4b6a9e2c5d8a1f3b6c9e
Type Magazine
Name MyRifleMagazine

Rarity Common
Slot None
Size_X 1
Size_Y 1

Bypass_ID_Limit True

Caliber_Reference 5001
Amount 30
Speed 850
Range 350

Player_Damage 1.0
Zombie_Damage 1.0
Animal_Damage 1.0
Barricade_Damage 1.0
Structure_Damage 1.0
Vehicle_Damage 1.0
Resource_Damage 1.0
Object_Damage 1.0

Companion English.dat:

Name 30-Round Rifle Magazine
Description Standard 30-round box magazine for the custom rifle. Compatible with the 5.56mm caliber family.

Extended drum magazine

A 60-round drum magazine for the same rifle. Higher rarity reflects its scarcity in the loot economy.

ID 50003
GUID 9c3d8a1b6f2e7c4a5d0b1e6f2a7c3b8d
Type Magazine
Name MyRifleDrumMagazine

Rarity Rare
Slot None
Size_X 2
Size_Y 2

Bypass_ID_Limit True

Caliber_Reference 5001
Amount 60
Speed 850
Range 350

Player_Damage 1.0
Zombie_Damage 1.0

Companion English.dat:

Name 60-Round Drum Magazine
Description High-capacity drum magazine. Provides sustained fire at the cost of increased inventory footprint.

Armor-piercing magazine

An armor-piercing variant for the same rifle. Same caliber, reduced damage multipliers against non-player targets (armor-piercing rounds are optimized for personnel), but higher player damage multiplier.

ID 50004
GUID 4e9a2c7b1f5d3a8e6c0b2f7a1c4d9e3b
Type Magazine
Name MyRifleAPMagazine

Rarity Epic
Slot None
Size_X 1
Size_Y 1

Bypass_ID_Limit True

Caliber_Reference 5001
Amount 20
Speed 1000
Range 500

Player_Damage 1.4
Zombie_Damage 1.2
Animal_Damage 1.2
Barricade_Damage 0.6
Structure_Damage 0.4
Vehicle_Damage 0.7
Resource_Damage 0.3
Object_Damage 0.4

Companion English.dat:

Name Armor-Piercing Magazine
Description 20-round magazine loaded with armor-piercing ammunition. Reduced capacity and higher rarity reflect the specialized production of this round type.

Shotgun tube magazine

A 6-round tube magazine for a pump-action shotgun with 9-pellet buckshot and caliber ID 5002:

ID 50010
GUID 7a3b8c2d1e6f4a9b5c0d3e8f2a1b6c7d
Type Magazine
Name MyShotgunTube

Rarity Common
Slot None
Size_X 1
Size_Y 1

Bypass_ID_Limit True

Caliber_Reference 5002
Amount 6
Pellets 9
Speed 380
Range 60

Player_Damage 1.0
Zombie_Damage 1.2

Companion English.dat:

Name Buckshot Tube
Description 6-shell internal tube magazine loaded with 9-pellet buckshot. Effective at close range.

Limited-use speedloader

A 6-round speedloader for a revolver. The Reloads 1 field means the speedloader is consumed after one reload — it is a single-use item. After loading, it is destroyed from the player's inventory.

ID 50015
GUID 2c7d1a8e4b3f9c0a6d2e5b8f1c4a7d9b
Type Magazine
Name RevolverSpeedloader

Rarity Uncommon
Slot None
Size_X 1
Size_Y 1

Bypass_ID_Limit True

Caliber_Reference 5003
Amount 6
Reloads 1
Speed 380
Range 100

Player_Damage 1.0
Zombie_Damage 1.0

Companion English.dat:

Name Revolver Speedloader
Description Single-use speedloader preloaded with 6 rounds. Consumed on use. Faster than loading individual rounds.

Inventory view of three magazine variants: standard box, extended drum, and armor-piercing

Visualizations

Visualization 1: caliber linkage diagram

┌─────────────────────────────────────────────────────────────┐
│  Caliber linkage between gun and magazine                   │
└─────────────────────────────────────────────────────────────┘

  Gun Asset.dat                   Magazine Asset.dat
  ──────────────                  ──────────────────
  ID 50001                        ID 50002
  Type Gun                        Type Magazine
  Caliber 5001        ←────────→  Caliber_Reference 5001

                      Values must match exactly.   │

                      Magazine Asset.dat (drum)    │
                      ──────────────────────────   │
                      ID 50003                     │
                      Type Magazine                │
                      Caliber_Reference 5001  ─────┘

  Both the box magazine and the drum magazine are accepted
  by the gun because both have Caliber_Reference 5001,
  matching the gun's Caliber 5001.

Visualization 2: reload mechanic flowchart by Action type

┌──────────────────────────────────────────────────────────────┐
│  Reload mechanic — determined by gun's Action field          │
└──────────────────────────────────────────────────────────────┘

Player presses Reload


  Gun's Action field?
  ┌──────┴──────────────────────┐
  │ Trigger / Auto              │ Bolt / Pump / Break
  ▼                             ▼
Full magazine swap         Single-round chamber
  │                             │
  ▼                             ▼
Remove current mag         Consume 1 round from
from gun → inventory       magazine in inventory
  │                             │
  ▼                             ▼
Load new full mag           Gun round count +1
from inventory into gun         │
  │                             ▼
  ▼                       Player can fire or
Gun round count =          continue to load
magazine Amount            more rounds

Visualization 3: damage multiplier chain

┌──────────────────────────────────────────────────────────────┐
│  Damage calculation chain for a hit on a player              │
└──────────────────────────────────────────────────────────────┘

Gun Asset.dat              Magazine Asset.dat
────────────               ──────────────────
Player_Damage 40    ×      Player_Damage 1.4 (AP round)

                        = 56 damage per pellet

                        × Pellets 1 (standard round)

                        = 56 total damage per shot

                        (modified further by armor, game mode rules)

Visualization 4: Reloads field behavior timeline

Reloads 0 (unlimited):

  Load → Fire all → [mag at 0] → Reload → [mag full] → Fire → ...
  Magazine item: persists indefinitely, never consumed by reloading.

Reloads 1 (single-use):

  Load → Fire all → [mag at 0] → Reload attempt:
    If magazine Reloads counter = 1: perform reload, decrement to 0.
    Counter now 0 → magazine item destroyed from inventory.
  Next reload requires a fresh magazine item.

Reloads 3 (limited-use):

  Use 1: Load → Fire all → Reload → counter decrements to 2.
  Use 2: Load → Fire all → Reload → counter decrements to 1.
  Use 3: Load → Fire all → Reload → counter decrements to 0 → item destroyed.

Visualization 5: pellet spread pattern by Pellets count

Pellets 1 (rifle, pistol):

  ──────•──────  Single projectile, no spread pattern from Pellets.
                 Spread controlled by gun's Spread_Hip / Spread_Aim.

Pellets 9 (buckshot):

  ∙ ∙ ∙          Nine projectiles fired simultaneously from one trigger pull.
  ∙ ∙ ∙          Each pellet is an independent projectile.
  ∙ ∙ ∙          Each pellet can hit or miss independently.
                 Effective range limited by gun's Spread_Hip.

Pellets 16 (dense buckshot or specialty):

  ∙ ∙ ∙ ∙        Sixteen projectiles. Dense pattern.
  ∙ ∙ ∙ ∙        Used for very short-range area denial loads.
  ∙ ∙ ∙ ∙
  ∙ ∙ ∙ ∙

Visualization 6: magazine size footprint in inventory

Inventory grid footprint for magazine types

  Box magazine (Size_X 1, Size_Y 1):
  ┌─┐
  │█│
  └─┘

  Pistol double-stack (Size_X 1, Size_Y 2):
  ┌─┐
  │█│
  │█│
  └─┘

  Drum magazine (Size_X 2, Size_Y 2):
  ┌──┐
  │██│
  │██│
  └──┘

  Belt box / LMG drum (Size_X 3, Size_Y 2):
  ┌───┐
  │███│
  │███│
  └───┘

Visualization 7: specialty round field combinations

Magazine type          Tracer  Incendiary  Explosion  Sticky  Notes
─────────────────      ──────  ──────────  ─────────  ──────  ─────────────
Standard FMJ           False   False       0          False   Default
Tracer                 True    False       0          False   Visible trace
Incendiary             False   True        0          False   DoT on hit
Explosive slug         False   False       2.0        False   Small blast
Tracer incendiary      True    True        0          False   Visible + DoT
40mm HEDP grenade      False   False       6.0        False   Large blast
40mm sticky grenade    False   False       5.0        True    Sticks, then detonates

Visualization 8: caliber ID assignment strategy

Mod design:  One rifle with standard and extended magazines.

             ┌─────────────────────────────────────────┐
             │  Gun ID: 50001  →  Caliber: 5001        │
             └────────────────┬────────────────────────┘

             ┌────────────────┼────────────────┐
             ▼                ▼                ▼
  Std mag (ID 50002)  Ext mag (ID 50003)  AP mag (ID 50004)
  Caliber_Ref: 5001   Caliber_Ref: 5001   Caliber_Ref: 5001
  Amount: 30          Amount: 60          Amount: 20

  All three magazines accepted by the gun.
  No vanilla weapon accepts these magazines (5001 is mod-custom).

Field authoring checklist for magazine assets

Use this checklist before testing a magazine mod in-game.

  • [ ] ID is in the 50000+ range and unique within the mod project.
  • [ ] GUID was generated fresh; no other item in the project shares this GUID.
  • [ ] Type Magazine is present.
  • [ ] Caliber_Reference is set to the correct custom caliber ID (not 0 unless universal caliber is intended).
  • [ ] The gun's Caliber field carries the same value as this magazine's Caliber_Reference.
  • [ ] Amount is set to the intended round capacity.
  • [ ] Bypass_ID_Limit True is present.
  • [ ] English.dat is authored in the same folder.
  • [ ] The master bundle contains the magazine prefab at the correct name.
  • [ ] Slot None is set (magazines do not occupy player equipment slots).
  • [ ] Damage multiplier fields are 1.0 unless intentionally authoring a specialty round.
  • [ ] Pellets is 1 unless authoring a shotgun or multi-projectile round.
  • [ ] Reloads 0 (or omitted) unless authoring a limited-use magazine.

Appendices

Appendix A: magazine .dat quick-reference template

Copy this template for a new magazine asset. Delete fields that do not apply to the specific magazine type.

ID <50000+>
GUID <generated-uuid-no-hyphens>
Type Magazine
Name <InternalMagazineName>

Rarity <Common|Uncommon|Rare|Epic|Legendary>
Slot None
Size_X <1>
Size_Y <1>

Bypass_ID_Limit True

Caliber_Reference <custom-caliber-id>
Amount <round-capacity>
Pellets <1>
Reloads <0>
Speed <850>
Range <350>

Player_Damage 1.0
Zombie_Damage 1.0
Animal_Damage 1.0
Barricade_Damage 1.0
Structure_Damage 1.0
Vehicle_Damage 1.0
Resource_Damage 1.0
Object_Damage 1.0

Tracer False
Incendiary False

Appendix B: magazine troubleshooting table

SymptomMost likely causeResolution
Magazine not accepted by gunCaliber_Reference does not match gun's CaliberOpen both .dat files; confirm the numeric values are identical
Magazine accepted but does not fireAmount is 0 or not setSet Amount to the intended capacity (e.g., 30)
Magazine fires too few roundsAmount set to wrong valueCorrect Amount to the intended capacity
Magazine consumed on first reloadReloads 1 set unintentionallySet Reloads 0 or omit the field for unlimited use
Shotgun fires single projectilePellets not setSet Pellets to the intended count (e.g., 9 for buckshot)
Round damage too highDamage multiplier field set to a flat value (e.g., Player_Damage 40) instead of a multiplierChange to Player_Damage 1.0 or the intended multiplier
Round damage too lowDamage multiplier below 1.0 unintentionallyCorrect damage multiplier to 1.0 or intended value
Magazine does not appear in inventory after @giveID conflict or Bypass_ID_Limit missingConfirm unique ID and add Bypass_ID_Limit True
Magazine is invisible when droppedPrefab not found in bundleConfirm prefab name in bundle matches Name or Item field
No tracer trail visibleTracer field not setAdd Tracer True
Explosive round does not detonateExplosion is 0Set Explosion to desired blast radius (e.g., 6.0)
Magazine compatible with wrong gunsUsing caliber 0 or a shared vanilla caliber IDAssign a custom caliber ID in the 5000+ range

Appendix C: external references

ResourceURLNotes
Smartly Dressed Games modding documentationhttps://docs.smartlydressedgames.com/en/stable/Official field reference. Check for fields added in recent Unturned updates.
Unturned on Steamhttps://store.steampowered.com/app/304930/Unturned/Game changelog; changelog notes may reference ammunition system changes.
Gun Mod Tutorial/items/gun-mod-tutorialThe prerequisite article; covers the gun-side fields and the full authoring pipeline.
Item Asset Anatomy/items/item-asset-anatomyThe shared field reference for all item types, including magazines.
Attachment Slots: Sight, Grip, Tactical, Barrel/items/attachment-slotsThe next article in this series; covers attachment asset types.

Frequently asked questions

What is Caliber_Reference and why does it have an underscore but Caliber on the gun does not?

The field names reflect Unturned's internal convention for asymmetric paired fields. The gun declares what it accepts with Caliber (the requirement). The magazine declares what it is with Caliber_Reference (the declaration). Both fields carry the same numeric value for compatible pairings. The naming asymmetry is intentional in the vanilla asset set and is documented in the Smartly Dressed Games modding documentation.

Can one magazine be compatible with multiple guns?

Yes. If multiple guns share the same Caliber value, a single magazine with the matching Caliber_Reference is compatible with all of them. This is the standard pattern for a caliber family — all rifles chambered in the same caliber accept the same magazine pool.

Can I make a magazine that accepts no guns?

Yes, if Caliber_Reference is set to a value that no gun's Caliber field uses. The magazine will exist as an inventory item but cannot be loaded into any gun. This is occasionally used for inert display props or placeholder items in a mod project under development.

What happens if Amount is set to 0?

A magazine with Amount 0 is technically valid but produces a magazine that is empty and unfireable the moment it is loaded. The gun will accept the magazine (if calibers match) but cannot fire because the round count is 0. This is not a useful configuration for a standard magazine. Set Amount to at least 1.

How do I make a magazine that holds one round?

Set Amount 1. This is the standard configuration for a single-shot chamber, a flare gun cartridge, or a break-action single-shot shotgun shell. The gun will fire one round, then require a manual reload to chamber the next round.

Can Speed affect hit detection?

Speed affects the ballistic trajectory of the projectile. Higher speeds produce flatter trajectories (less drop per distance unit). At very high speeds, the projectile effectively hits instantly at typical combat ranges and the trajectory is nearly flat. At very low speeds, pronounced bullet drop makes long-range shots challenging. Speed does not affect hit detection lag in the network sense — that is controlled by the server's lag compensation settings.

How do I make a magazine that deals more damage than the gun's base damage?

Set the relevant damage multiplier field to a value greater than 1.0. For example, Player_Damage 1.5 makes the round deal 150% of the gun's Player_Damage value per shot. Author high-damage rounds as higher-rarity, lower-capacity magazines to maintain balance.

What is the practical difference between Tracer True and Incendiary True?

Tracer True adds a visible light trail to the projectile in flight, making it visible to all players who can see the projectile's path. This is a purely visual effect; it does not change damage. Incendiary True adds a fire damage-over-time effect on hit targets, causing additional damage after the initial impact. The two fields can be combined (Tracer True and Incendiary True on the same magazine) for a traceable incendiary round.

Can I give a magazine unlimited uses but still have it show empty?

Yes. With Reloads 0, the magazine has unlimited reloads. The round count in the HUD will reach 0 when all rounds are fired, at which point the gun cannot fire until reloaded. After reloading, the round count returns to Amount. The magazine item is not consumed. This is standard behavior for all non-specialty magazines.

Why does my magazine show as wrong size in the inventory?

The Size_X and Size_Y fields control the inventory grid footprint. If the magazine appears larger or smaller than expected, adjust these fields. A standard box magazine is typically 1×1. A drum magazine is typically 2×2. A long stripper clip might be 1×2. Set the footprint to match the visual size of the magazine model.

Can a magazine modify the gun's range?

Yes. The Range field on the magazine overrides or modifies the gun's Range field for that ammunition type. This allows the same gun to have shorter-range ammunition (standard buckshot) and longer-range ammunition (slug rounds) by using two separate magazine assets with different Range values.

Is there a maximum value for Amount?

The Amount field is a uint8, meaning its maximum value is 255. A magazine cannot hold more than 255 rounds. For weapons intended to have effectively unlimited ammunition (admin debug weapons, special server tools), set Amount to 255 and Reloads 0.

Do I need a prefab for a magazine asset?

Yes. The magazine asset requires a prefab in the master bundle for the in-game model — the model shown in the gun's magazine well and the model shown when the item is held or dropped. An empty magazine bundle or missing prefab causes the magazine to be invisible when held or dropped, though it can still be loaded into the gun and fired correctly. Always provide a prefab, even if it is a simple placeholder mesh during early development.

Advanced magazine authoring patterns

Authoring a caliber family for a gun mod series

A well-organized mod series uses a caliber family — a single caliber ID shared across all guns and magazines in the same chambering. This allows players to share ammunition across different guns in the same caliber, which is a significant quality-of-life feature for survival gameplay.

Cohort-recommended caliber family structure for a mod series:

57 Studios Custom Rifle Series
  Caliber ID: 5010

  Guns using Caliber 5010:
    Scout Carbine (ID 50100)     ← shorter barrel, lower range
    Battle Rifle (ID 50101)      ← full-length barrel, higher range
    Designated Marksman (ID 50102) ← precision barrel, highest range

  Magazines using Caliber_Reference 5010:
    10-Round Box (ID 50110)     ← low capacity, high rarity in loot
    20-Round Box (ID 50111)     ← standard capacity, medium rarity
    30-Round Box (ID 50112)     ← high capacity, moderate rarity
    60-Round Drum (ID 50113)    ← extended, rare
    AP Variant (ID 50114)       ← armor-piercing, Player_Damage 1.4
    Tracer Variant (ID 50115)   ← tracer, Tracer True

This structure means any magazine in the family works in any gun in the family, giving players flexibility and making ammunition drops useful regardless of which gun the player is using.

Authoring magazine variants without duplicating the prefab

When authoring multiple magazine variants (standard, extended, AP, tracer) for the same gun, each variant needs its own Asset.dat and English.dat but may share a prefab from the same bundle. If the standard box magazine and the extended drum magazine are visually distinct, each needs its own prefab. If the AP and tracer variants are visually identical to the standard box magazine (same model, different bullet behavior), they can reference the same prefab in the bundle.

To reuse a prefab across multiple magazine assets, set the Item field in each magazine's Asset.dat to the name of the shared prefab:

# Standard box magazine
ID 50111
Name 20RoundBox
Item MyRifleBoxMagazine        ← prefab name in bundle

# AP magazine (same model, different stats)
ID 50114
Name 20RoundAPBox
Item MyRifleBoxMagazine        ← same prefab name in bundle

Both magazine assets render with the same prefab. The gameplay difference is in the Asset.dat fields (Player_Damage 1.4 on the AP variant). Players and observers cannot visually distinguish the two magazine types in-game, which is a deliberate design choice — realistic armor-piercing ammunition is not visually distinguishable from standard ammunition at a glance.

Authoring underwater or specialty-environment magazines

Specialty magazines for underwater or environment-specific gameplay use the same field set as standard magazines. There is no Underwater flag or environment constraint field in the magazine .dat. Environmental constraints on weapon use are handled by the gun's Firerate interaction with the physics system, not by the magazine. If a mod needs a magazine that functions only in a specific environment, that restriction must be enforced at the server level via plugin code, not through the .dat file.

Authoring magazines for NPCs and AI enemies

Magazines used by NPC enemies (vanilla zombie AI does not use magazines, but modded NPCs in map scripts may) follow the same authoring rules as player-facing magazines. The NPC's weapon configuration references the magazine by its ID. The magazine's fields apply identically whether the round is fired by a player or by an AI entity.

Magazine prefab authoring guidance

The magazine prefab is the 3D model displayed in three contexts: loaded in the gun's magazine well, held as a standalone item in the player's hands (during reload animation), and dropped on the ground as a world item.

Prefab mesh requirements

RequirementDetails
Polygon budget500–2000 tris for a standard box magazine. Drums up to 3000 tris.
TopologyQuad-dominant. Magazine bodies are simple geometric shapes; n-gons are acceptable on flat faces.
ScaleModel at real-world scale. A 30-round AK-pattern box magazine is approximately 20 cm long, 7 cm wide, 3 cm deep.
Pivot originAt the top of the magazine (the feed lips), centered horizontally. This is the point that aligns with the gun's Hook_Magazine bone.
UV layout1×1 UV space, Pack Islands. Texel density 10–15 texels/cm for a 1024×1024 texture.

Prefab hierarchy in Unity

A magazine prefab does not require the complexity of a weapon prefab. The minimum structure is:

MyMagazinePrefab (root)
└── Body (MeshRenderer + MeshFilter for the magazine model)

No animator is needed unless the magazine has animated components (e.g., a transparent side panel that shows remaining rounds). No attachment hooks are needed — the magazine itself is an item, not a host for attachments.

If the magazine has a round-counter window (a transparent side panel through which bullet tips are visible), that can be implemented as a second sub-mesh with a partially transparent material:

MyMagazinePrefab (root)
├── Body (MeshRenderer + MeshFilter — opaque magazine body)
└── RoundCounter (MeshRenderer + MeshFilter — transparent window panel)

Texture map requirements for magazines

TextureResolutionNotes
Albedo1024×1024Magazine body color, markings, stamps
Normal Map1024×1024Surface detail
Metallic/Roughness512×512Metal vs polymer regions

Magazine textures are smaller than weapon textures because magazines are secondary items — they spend most of their time inside the gun and are not the focal point of the player's view.

Testing magazine-gun caliber linkage in-game

The fastest way to verify caliber linkage after authoring a new magazine:

  1. Spawn the gun: @give <gunID>.
  2. Spawn the magazine: @give <magazineID>.
  3. Open inventory.
  4. Try to load the magazine into the gun (drag magazine to the ammo slot, or press the reload key while the magazine is in inventory).
  5. If the magazine loads: caliber linkage is correct.
  6. If the magazine does not load: open both .dat files and confirm Caliber on the gun equals Caliber_Reference on the magazine.

Do not skip this test, even if you authored the caliber IDs carefully. A single digit difference (e.g., 5001 vs 5011) prevents the linkage from working and is easy to miss during authoring.

Balancing magazine rarity against gameplay economy

Magazine rarity controls how often the magazine appears in loot tables (indirectly, via spawn table configuration that uses rarity as a weight shorthand) and how the item name appears in the inventory UI. For survival-focused servers, the cohort recommendation is:

Magazine typeRecommended RarityRationale
Standard box (30-round)CommonShould be the most-found ammo type; accessible to most players
Extended magazine (45-60 round)UncommonMeaningful upgrade; should require some searching
Drum magazine (75-100 round)RareHigh-value find; encourages dedicated looting
Specialty (AP, tracer, incendiary)EpicSpecialty ammunition; provides tactical edge when found
Prototype/experimentalLegendaryOne-of-a-kind feel; extremely rare loot reward

These rarity values do not automatically adjust spawn weights — they must be paired with corresponding spawn table entries that carry appropriate weight values. The rarity field itself is cosmetic at the engine level; the spawn table weights are the actual gameplay lever.

Magazine asset and English.dat authoring workflow

The cohort workflow for authoring a new magazine asset from scratch, end-to-end:

  1. Assign a fresh ID. Choose an ID in the mod's assigned range (50000+). Confirm it is not used by any other item in the project.
  2. Generate a GUID. Run [guid]::NewGuid().ToString("N") in PowerShell. Paste the result into the GUID field.
  3. Set caliber. Confirm the caliber ID you are using. If this magazine is for a new gun, assign a new caliber ID in the 5000+ range. If this magazine is for an existing gun family, use the shared caliber ID.
  4. Set capacity and ballistics. Choose Amount, Speed, and Range based on the weapon category table in this article.
  5. Set specialty fields. Add Pellets, Reloads, Tracer, Incendiary, or Explosion only if the magazine design requires them.
  6. Set damage multipliers. Leave at 1.0 for standard rounds. Adjust for specialty variants.
  7. Set inventory fields. Slot None, Size_X, Size_Y based on the magazine's visual form factor.
  8. Author English.dat. Write a user-facing Name and Description that communicates the magazine's round count, caliber category, and any specialty properties.
  9. Author the prefab. Ensure the bundle contains the magazine model prefab.
  10. Test in-game. Spawn gun and magazine, load the magazine, fire, reload. Verify every field behaves as intended.

Document history

VersionDateAuthorNotes
1.02025-05-1857 StudiosInitial publication. Complete magazine .dat field reference, caliber linkage, reload behavior, example files, compatibility tables, advanced patterns, caliber family design, balance guidance.

Magazine asset in the broader mod publishing workflow

A magazine mod is rarely published in isolation. The complete publishing unit for a gun mod includes the gun asset, one or more magazine assets, and any attachment assets. The Steam Workshop submission packages all of these together in a single Workshop item. The cohort recommendation for file organization when preparing a mod for submission:

MyRifleMod/
├── Bundles/
│   ├── Items/
│   │   ├── MyRifle/
│   │   │   ├── Asset.dat
│   │   │   ├── English.dat
│   │   │   └── MyRifle.unity3d
│   │   ├── MyRifleMagazine/
│   │   │   ├── Asset.dat
│   │   │   ├── English.dat
│   │   │   └── MyRifleMagazine.unity3d
│   │   └── MyRifleDrumMagazine/
│   │       ├── Asset.dat
│   │       ├── English.dat
│   │       └── MyRifleDrumMagazine.unity3d
├── Workshop.dat              ← Workshop metadata
└── Preview.png               ← Workshop thumbnail

Each item (gun, each magazine variant) has its own subfolder under Bundles/Items/. The Workshop.dat file references the mod's Workshop ID and metadata. The Preview.png is the thumbnail shown in the Steam Workshop browser.

When publishing updates, the cohort practice is to increment a version comment in each changed Asset.dat file (using the // prefix convention, which is ignored by the parser) and to update the Workshop changelog on the Workshop item page. This gives players visibility into what changed between versions.

See Steam Workshop Submission for the complete publishing workflow. The magazine-specific note for Workshop submissions is to verify caliber linkage one final time immediately before submission — caliber mismatches that were not caught during local testing will surface as player-reported bugs immediately after publication, when the community discovers that the magazine does not load into the gun.

Cross-references