Item Asset Property Reference
Every item in Unturned™ is defined by a set of plain-text .dat configuration files that the engine reads at load time. The Item Asset class, the root of Unturned™'s item hierarchy, exposes a shared set of approximately forty-four properties that apply to every item type: guns, magazines, clothing, food, medical supplies, melee weapons, traps, tools, and every other category of carryable object. Understanding these shared properties, their types, their defaults, and their interactions is the foundational prerequisite for authoring any item mod. A modder who knows the shared property set can write a correct .dat for any item type; a modder who does not will encounter silent parse failures, unexplained inventory behavior, and fields that do nothing because they were placed on the wrong asset type.
This article is the 57 Studios™ canonical reference for the shared item asset property surface. It documents every property in the ItemAsset base class, the four enumerations that govern slot assignment, rarity tier display, equipable-model attachment, and useable-type behavior, the Unity asset bundle contents that every item folder must include, the file structure that the parser expects, the localization convention for display names and descriptions, and the property inheritance model that determines which fields are shared across all items and which are type-specific. This article is the parent reference that all individual asset-type articles (weapon, magazine, clothing, food, medical, melee, throwable, resource, storage) extend and reference. Every field documented here appears in those articles as assumed context; every field documented in those articles is built on top of the shared surface documented here.

Documentation source: This article references the official Smartly Dressed Games modding documentation for the ItemAsset class property definitions, the EEquipableModelParent, EUseableType, ESlotType, and EItemRarity enumerations, and the Unity asset bundle specification. All property names, types, default values, and descriptions in the reference table below are drawn directly from the SDG documentation chapter on Item Assets.
Who this article is for
This article is written for Unturned™ mod authors who have completed the orientation articles in the getting-started section and are approaching their first item mod. It presupposes that the reader has a Unity editor installed, a text editor configured to save .dat files as UTF-8 without BOM, and a working understanding of the GUID system and folder-structure conventions documented in Project Folder Structure and GUIDs and Item Asset Anatomy. Readers who have not yet read those articles should start there and return here with the shared context they establish.
What you will learn
- The complete shared property surface of the
ItemAssetbase class, with field name, type, required/optional designation, default value, and documented purpose for all forty-four properties - The four enumerations that every item asset references:
EItemRarity,ESlotType,EEquipableModelParent, andEUseableType - The Unity asset bundle contents that every item folder must include: the Item prefab, the Animations prefab, the Equip audio clip, and optional skin base textures
- The game data file structure that the parser expects, including the significance of the
GUID,Type, andIDfields as required identity properties - The property inheritance model: which properties are shared across all item types and which are endemic to specific asset subclasses
- The localization convention for
English.datfiles, including theNameandDescriptionstubs - How to interpret field types, validate default values, and avoid the most common property-configuration mistakes
- A worked example of a complete non-equippable item
.datwith every shared field populated and annotated
Background: how item properties are read at load time
Unturned™ loads item assets through a multi-stage pipeline. The first stage is asset discovery: the game scans the Bundles/Items/ directory structure, locates every folder containing a .dat or .asset file, and registers each found asset by its GUID and ID in an internal manifest. The second stage is property parsing: for each registered asset, the game reads the file line by line, tokenizing each line into a property name and a property value, and maps the parsed values onto the ItemAsset class (or a subclass of it) through a reflection-based deserializer. The third stage is validation: the game checks that required fields are present, that enum values match known members, that GUIDs are unique across the loaded asset set, and that type-specific rules (e.g., a magazine must have a Caliber_Reference) are satisfied.
A property that appears in the .dat file but is not defined on the target asset class (or any of its parent classes in the inheritance chain) is silently ignored by the parser. This is the most common source of "why is my field not working?" bugs in item modding. A modder who places a type-specific property (e.g., Damage_Player, which belongs to the melee weapon subclass) on a non-melee item will find the field parsed without error but producing no effect. The property reference table below documents exactly which class defines each property, so that modders can confirm that a given field is valid for the asset type being authored.
The parsing pipeline operates at game load time and at asset-reload time (triggered by the -ValidateAssets flag or by in-game asset-reload commands). The performance characteristics of the pipeline are determined primarily by the number of assets loaded, not by the number of properties per asset, because the deserializer processes all properties in a single linear pass per file. A .dat file with one hundred properties parses only marginally slower than a .dat file with ten properties; the overhead is dominated by file-system I/O, not by property deserialization.
As shown in the flowchart above, the asset-load pipeline proceeds through four sequential stages from discovery to registration. A failure at any stage prevents the asset from appearing in the game; a silent failure at the property-parsing stage (a type mismatch, a missing required field with a default) produces a loaded asset with unexpected values.
Unity asset bundle contents
The Unity asset bundle for an item must contain specific named assets that the engine looks up by convention at load time. The following subsections document each required and optional asset, the naming convention the engine expects, and the purpose each asset serves.
Item prefab
The Item prefab (Item.prefab) is the 3D model shown when the item is dropped on the ground, inspected in the inventory, or drawn for the item's icon. The prefab must be tagged as 4: Item and layered as 13: Item in Unity. A Box Collider component on the root GameObject is the standard collision setup; the recommended minimum collider dimension is (0.2, 0.2, 0.2) to prevent the item from falling through thin surfaces in a single physics tick.
For items with a single level of detail, the MeshFilter and MeshRenderer components can be attached directly to the root GameObject. For items with multiple LODs, a LOD Group component on the root GameObject references child GameObjects named Model_0, Model_1, and so on, each carrying its own MeshFilter and MeshRenderer for the corresponding LOD level.
An Icon child GameObject on the root determines the orthographic camera view for the item's inventory icon. The engine automatically calculates the camera position and size from the item's bounds if Use_Auto_Icon_Measurements is true (the default). The only manual configuration required is the orientation of the Icon child: rotating it adjusts the angle from which the inventory icon is rendered.
Animations prefab
Equippable items require an Animations prefab in the item folder. The prefab carries an Animation component on its root GameObject and is responsible for the first-person and third-person animation states that play when the item is equipped, used, and inspected.
Every equippable item must have an Equip animation state. Weapons that support the inspect action (the default inspect keybinding in Unturned™) must additionally have an Inspect animation. The animation names inside the Animation component must match the states expected by the item's useable script. For example, a melee weapon's Animations prefab must contain states named Slash, Stab, and Punch if those action types are configured in the .dat; a gun's Animations prefab must contain states for Shoot, Reload, and Equip.
Modders can either create the Animations prefab from scratch in Unity or duplicate it from the ExampleAssets.unitypackage provided by SDG, which includes vanilla animation sets for most item types. The vanilla animations are located along the CoreMasterBundle/Items path in the example package, with the raw animation files under Game/Sources/Animations.
Equip audio clip
An Audio Clip named Equip in the item folder produces a sound when the player equips the item. The audio clip is referenced by the EquipAudioClip property, which defaults to the Equip clip if one is found in the bundle. Omitting the clip results in a silent equip action, which is acceptable for items whose equip behavior is naturally quiet (food, medical supplies, tools), but is generally discouraged for combat items where audible feedback on equip is an expected part of the player's situational awareness.
Skin base textures
Items can optionally include texture-masking base images for skin support. The three base textures are Albedo_Base.png, Metallic_Base.png, and Emission_Base.png. When a skin is applied to an item that includes these base textures, the masked regions retain the original material from the base texture rather than being overwritten by the skin. This mechanism is primarily relevant for Workshop skin authors and for mods that intend to support community skin creation. For standalone item mods that do not support skins, the base textures can be omitted.
Game data file structure overview
The game data file (the .dat or .asset file in the item folder) is a plain-text configuration document that defines the item's identity, inventory characteristics, and gameplay behavior. The file is organized as a flat sequence of key-value pairs, one per line, with the key and value separated by whitespace. Comments are introduced with // and extend to the end of the line. The full syntax grammar is documented in Data File Format Reference; the present article focuses on the semantics of each recognized key.
The three identity properties (GUID, Type, and ID) are required on all item assets. These three fields collectively establish the item's identity in the game's asset registry and are the first properties the parser reads from any item .dat file. Most item assets additionally require (or strongly benefit from) the Rarity, Useable, Slot, Size_X, and Size_Y properties, which control the item's visual treatment in the inventory, its equip slot, and its grid footprint. The remaining shared properties are optional and carry documented default values that produce sensible behavior when omitted.
The parser reads the file line by line in linear order. The order of properties within the file does not affect the parsed result; the deserializer maps each key to its corresponding class field regardless of position. The convention across vanilla Unturned™ items and community mods is to group identity fields first (GUID, ID, Type, Name), followed by inventory fields (Rarity, Slot, Size_X, Size_Y), followed by behavioral fields (Useable, equipment settings, quality settings, special flags), followed by type-specific fields (which are outside the scope of this article but are documented in each individual asset-type article).
Every property defined in the ItemAsset base class is documented in the property reference table below. The table is organized by functional category: identity, inventory, equip-model, quality-and-durability, icon-rendering, skin, container, fishing, and special-purpose categories. Each row provides the field name, the data type, whether the field is required (a field is required if the asset cannot load without it), the default value applied when the field is omitted, and a description of the field's purpose and behavior.
Complete property reference table
Identity fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
GUID | GUID | Yes | , | Globally unique identifier for the item asset. Every item must carry a GUID whose value does not duplicate any other item's GUID. If the GUID property is omitted, the engine attempts to assign a random unique GUID during a successful load, but explicit GUID assignment is strongly recommended for all mod items. |
ID | uint16 | Yes | 0 | Numeric item identifier. Must be unique across all loaded mods and vanilla content. Community mods should use IDs in the 50000+ range to avoid collision with vanilla items and established community mods. The Bypass_ID_Limit flag is required when using an ID within the vanilla-reserved range (below 2000). |
Type | EItemType | Yes | , | Designates the item's asset class. The value must be one of the known item type names recognized by the engine. The type determines which subclass of ItemAsset is instantiated and which additional type-specific fields the parser recognizes. |
Name | string | Recommended | , | Internal name for the item. Used in console commands (@give, @item), in cross-references from other .dat files, and as the default prefab lookup key in the master bundle. The folder name, .dat filename stem, and internal Name field should all match to minimize diagnostic confusion. |
Instantiated_Item_Name_Override | string | Optional | Value of ID | Overrides the name used when instantiating the Item prefab in the Unity scene. Because Unity's built-in Animation component references GameObjects by name, this property enables sharing animations between multiple items that reference the same prefab but must present different animation-binding targets. |
Inventory fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Rarity | EItemRarity | Recommended | Common | Controls the color of the item's highlight and the text label shown in the inventory UI. The rarity value is also used as a weight shorthand in spawn-table configuration. See the EItemRarity enumeration reference later in this article for the complete list of valid values. |
Slot | ESlotType | Recommended | None | Determines which equipment slot the item occupies when equipped. None restricts the item to hotkey-only access. Primary restricts the item to the primary equipment slot. Secondary permits the primary or secondary slots. Any has no slot restrictions. The Slot property is only meaningful when Useable is set to a value other than None. |
Size_X | uint8 | Recommended | 1 | The width of the item in inventory grid cells (the number of columns the item occupies when placed in the inventory panel). A value of 1 occupies a single column; a value of 2 occupies two; and so on. |
Size_Y | uint8 | Recommended | 1 | The height of the item in inventory grid cells (the number of rows the item occupies). Together with Size_X, this determines the rectangular footprint of the item in the player's inventory grid. |
Should_Drop_On_Death | bool | Optional | true | Controls whether the item drops as a world pickup when the carrying player dies. When false, the item is permanently removed from the game on death and does not spawn a drop. Relevant for quest items, admin debug tools, and items that should not proliferate through PvP looting. |
Allow_Manual_Drop | bool | Optional | true | Controls whether the player can voluntarily drop the item from inventory. Setting this to false prevents the player from discarding the item but does not prevent it from being consumed, used, or destroyed by other mechanics. |
Bypass_ID_Limit | flag | Conditional | not set | Required when the item's ID falls within the range reserved for official vanilla content (below 2000). The presence of this flag signals to the parser that the modder is intentionally using a vanilla-range ID and accepts the collision risk. Community mods using IDs in the 50000+ range do not require this flag. |
Bypass_Hash_Verification | bool | Optional | false | Disables the hash-verification check against the item's master bundle. When true, the engine allows the asset to load even if the bundle hashes do not match the expected values. Useful during rapid iteration when the modder is rebuilding bundles frequently. Should be set to false before publication. |
Equip-model fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
EquipablePrefab | Master Bundle Pointer | Optional | , | Overrides the prefab spawned when the item is equipped by the player. If this field is set, the engine loads the named prefab from the master bundle instead of the default Item prefab. This allows the equipped model (an animated skinned mesh) to differ from the ground/inventory model (a simpler static mesh). |
EquipableModelParent | EEquipableModelParent | Optional | See description | Overrides the player-skeleton bone to which the equipped item model is attached. See the EEquipableModelParent enumeration reference later in this article for the complete list of attachment points. |
Destroy_Item_Colliders | bool | Optional | true | When true (the default), the Item prefab's colliders are destroyed when the prefab is attached to the character. This prevents equipped items from having active collision geometry that would interfere with the player's movement or other physics interactions. When false, child colliders persist on the equipped model, which is necessary for mods that use equipped items as functional physics objects (e.g., riot shields). |
Equipable_Movement_Speed_Multiplier | float32 | Optional | 1 | Multiplier on the character's movement speed while the item is equipped in the player's hands. A value of 1 means no speed change. A value of 0.8 reduces speed by 20%. A value of 1.2 increases speed by 20%. If multiple movement-affecting items are equipped simultaneously (a gun with movement-modifying attachments), the multipliers are combined multiplicatively. |
Left_Handed_Characters_Mirror_Equipable | bool | Optional | true | When true (the default), the equipped item model is mirrored for left-handed character models to produce the correct visual orientation. When false, the mirroring is disabled, which may be desired for asymmetrical item models that should not be flipped for left-handed characters. |
Procedurally_Animate_Inertia | bool | Optional | true | When true, view-model animations accumulate angular velocity that produces a natural inertia effect during rapid camera movements. When false, the procedural inertia is disabled, which is recommended for high-quality modern animations that already incorporate subtle weight and swing in their authored keyframes. |
Quality and durability fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Quality_Min | uint8 | Optional | 10 | The minimum quality (durability percentage) at which the item can spawn in the world. Used with Quality_Max to define a spawn-quality range. Quality is displayed as a condition bar in the inventory UI. |
Quality_Max | uint8 | Optional | 90 | The maximum quality at which the item can spawn. Items that spawn with values between Quality_Min and Quality_Max have a condition bar showing partial durability. A freshly-crafted item typically spawns at Quality_Max. |
Should_Delete_At_Zero_Quality | bool | Optional | false | When true, the item is deleted from the player's inventory when its quality (durability) reaches 0%. When false, the item persists at 0% quality and can potentially be repaired. |
Deleted_At_Zero_Quality_Effect | Asset Pointer to Effect Assets | Optional | 0 | If Should_Delete_At_Zero_Quality is true, this effect (referenced by asset GUID) is played when the item breaks. The effect plays at the item's position and can include visual particles and audio. |
Deleted_At_Zero_Quality_Rewards | Rewards | Optional | 0 | If Should_Delete_At_Zero_Quality is true, the rewards configured here are granted to the player when the item breaks. Rewards can include experience, item drops, or currency. Used primarily for items that should provide a consolation return on destruction. |
Override_Show_Quality | bool | Optional | false | Override that forces the quality (condition) bar to be displayed in the inventory UI even when quality display would normally be suppressed for this item type. |
Amount | uint8 | Optional | 1 | The maximum capacity for container-like items, such as ammunition boxes, magazines, or stackable consumables. When used as a container capacity, this field is paired with Count_Min and Count_Max to control spawn-fill behavior. |
Count_Min | uint8 | Optional | 1 | The minimum amount to generate when a container-like item spawns in the world. For example, an ammunition box with Count_Min 5 and Count_Max 20 spawns with between 5 and 20 rounds on its first generation. |
Count_Max | uint8 | Optional | 1 | The maximum amount to generate when a container-like item spawns. Paired with Count_Min and Amount to define the spawn-fill range for container items. |
Icon rendering fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Use_Auto_Icon_Measurements | bool | Optional | true | When true (the default), the engine automatically calculates the axis-aligned orthographic camera size for the item's inventory icon based on the Item prefab's bounding box. When false, the Size_Z field controls the icon camera size manually. |
Size_Z | float32 | Optional | -1 | Manually specifies the orthographic camera size for the item's inventory icon, corresponding directly to the Size property of a Unity Camera component. Only used when Use_Auto_Icon_Measurements is set to false. Values of -1 indicate that automatic measurement should be used (the default). |
Size2_Z | float32 | Optional | -1 | Manually specifies the orthographic camera size for economy (skin-preview) icons. The same behavior as Size_Z but for the secondary economy icon render. Values of -1 indicate automatic sizing. |
Skin and texture fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Shared_Skin_Lookup_ID | uint16 | Optional | Value of ID | Causes this item to share skins with another item identified by the given ID. When a player applies a skin owned for the target item, this item receives the same skin visual treatment. Used for creating cosmetic variants of an item that inherit skin collections from a base item. |
Shared_Skin_Apply_Visuals | bool | Optional | true | When false, and Shared_Skin_Lookup_ID is set, the skin material and mesh are not applied to this item even though the skin's metadata (kill counter, ragdoll effect, stat track) is transferred. A custom axe can display a vanilla axe's kill counter without adopting the vanilla axe's material. |
Ignore_TexRW | flag | Optional | not set | Suppresses read-write texture errors in the Unity error log for this asset. Useful for items whose textures legitimately need read-write access and would otherwise generate log-spam warnings during asset validation. |
Special-purpose fields
| Field | Type | Required | Default | Purpose |
|---|---|---|---|---|
Useable | EUseableType | Recommended | None | Associates a useable script with the item, granting it interactive functionality beyond passive inventory storage. An item with Useable None cannot be equipped and has no primary, secondary, or tertiary action. An item with Useable Melee gains the melee-weapon behavior documented in the Melee Asset article. This property is the gate for the Slot property: without a non-None useable, slot assignment has no effect. |
Can_Player_Equip | bool | Optional | See description | Controls whether the item can be equipped by a human player. When false, the item can still be used by non-player entities (sentries, NPCs in modded scenarios) that reference the item by its useable behavior. Defaults to true if Useable has been set to any value other than None; otherwise defaults to false. |
Can_Use_Underwater | bool | Optional | See description | Controls whether the item can be used while the player is submerged. If Slot has not been set to Primary, this defaults to true. Otherwise defaults to false, reflecting the design assumption that primary weapons (rifles, shotguns) should not function underwater without explicit configuration. |
Add_Default_Actions | bool | Optional | See description | When true, the engine automatically adds context-menu actions for refilling ammunition, repairing, and salvaging blueprints. Defaults to true if no explicit Actions block is specified in the .dat. When false, only explicitly authored actions appear in the context menu. |
Pro | flag | Optional | not set | Marks the item as a Steam Economy (PRO/Gold-tier) item. Non-PRO players can see and pick up the item but cannot use it. The presence of this flag gates the item behind the Unturned™ premium upgrade. Workshop mods should leave this flag unset unless the mod intentionally creates PRO-exclusive content. |
Fishing_Catchable | FishingCatchableProperties | Optional | , | Overrides the properties applied when this item is caught by a fishing rod. The Fishing Catchable Properties sub-object defines the catch behavior, rarity weighting, and animation trigger. Refer to the fishing section of the official SDG documentation for the Fishing Catchable Properties sub-fields. |
EquipAudioClip | Master Bundle Pointer | Optional | Equip | Specifies the AudioClip to play when the item is equipped. The pointer references a named audio asset in the item's master bundle. The default value (Equip) causes the engine to look for an AudioClip literally named Equip in the bundle. |
InspectAudioDef | Master Bundle Pointer | Optional | , | Specifies an AudioClip or OneShotAudioDefinition to play when the item is inspected (the default inspect keybinding in Unturned™). If omitted, the inspect action produces no sound. |
InventoryAudio | Master Bundle Pointer | Optional | See description | Specifies an AudioClip or OneShotAudioDefinition to play when the item is picked up, moved within the inventory, or dropped. The default value depends on the child asset subclass, with most categories defaulting to a generic pickup sound. |
Backward | flag | deprecated | , | A deprecated flag from earlier Unturned™ versions. When present, forces the equipable model to attach to the LeftHook bone instead of the default RightHook. Modern items should use EquipableModelParent with an explicit LeftHook value instead of this deprecated flag. |
Action and blueprint properties
In addition to the shared properties documented above, item assets can specify crafting blueprints and context-menu actions through an Actions block and a Blueprints block. The Actions block defines the entries that appear in the item's right-click context menu, including refill, repair, salvage, and custom user-defined actions. The Blueprints block defines the crafting recipes that produce this item and the recipes that consume this item as an ingredient. The full blueprint syntax and action configuration are documented in the official SDG modding documentation and will receive a dedicated article in the items section.
If no Actions block is present and Add_Default_Actions is true (the default), the engine automatically generates the standard refill-ammo, repair, and salvage-blueprint actions. This automatic generation is the reason most vanilla items do not carry explicit Actions blocks; the default behavior covers the standard use cases.
Enumeration references
The following four enumerations appear as property types across multiple fields in the property reference table above. Each subsection documents the valid values, their meaning, and examples of items that use each value.
EItemRarity
The rarity enumeration controls the item's highlight color in the inventory UI and the text label displayed below the item name. Rarity is purely cosmetic at the engine level; it does not directly affect spawn rates, damage, or other gameplay properties. Spawn-table weights use rarity as a shorthand but are configured independently.
| Value | Inventory highlight color | Typical use |
|---|---|---|
Common | White / gray | Standard items; the default rarity for most ammunition, food, and basic tools |
Uncommon | Green | Above-average items; moderate gear upgrades |
Rare | Blue | High-value items; found less frequently in loot |
Epic | Purple | Specialty items; significant upgrades over standard gear |
Legendary | Orange / gold | One-of-a-kind items; boss drops, quest rewards, special-edition content |
Mythical | Red | The highest rarity tier; reserved for items of extreme rarity and power |
The color values listed above are approximate; the exact RGB values are defined in the Unturned™ UI theme and may vary across game updates. Mods that override the UI theme may render rarity colors differently.
ESlotType
The slot enumeration determines which equipment slot the item occupies when equipped. The slot system is the mechanism by which Unturned™ limits the player to one primary weapon, one secondary weapon, and hotkey-accessible items.
| Value | Description |
|---|---|
None | No slot restriction. The item can be assigned to a hotkey (keys 1-8 by default) but does not occupy the primary or secondary equipment slot. Used for all non-equippable items (magazines, food, medical supplies, crafting materials) and for items that are equipped through the hotkey bar rather than through the dedicated weapon slots. |
Primary | Restricts the item to the primary equipment slot (slot 1). Only one primary item can be equipped at a time. Used for rifles, shotguns, two-handed melee weapons, and other large weapons. |
Secondary | Permits the item to occupy either the primary or the secondary equipment slot (slots 1 or 2). Used for pistols, one-handed melee weapons, and compact tools. |
Tertiary | Not implemented in the current version of the ItemAsset class. Listed in the enum for forward compatibility. |
Any | No slot restriction beyond the hotkey bar. The item can be hotkeyed to any available slot without occupying a dedicated equipment position. |
The slot restriction is enforced by the engine's equipment manager. A player who attempts to equip a primary-slot item while a primary item is already equipped will exchange the two items: the current primary item is unequipped first, and the new primary item is equipped.
EEquipableModelParent
The equipable-model parent enumeration overrides the player-skeleton bone to which the equipped item model is attached. The default attachment point is RightHook, which places the item in the player character's right hand.
| Value | Attachment bone | Description |
|---|---|---|
RightHook | Right hand | The item is attached to the Right_Hook bone in the player skeleton. This is the default and places the item in the character's right hand. Used for all standard weapons and tools. |
LeftHook | Left hand | The item is attached to the Left_Hook bone. Used for off-hand items, dual-wield setups, and items that the player carries in the left hand. The deprecated Backward flag forces this attachment point. |
Spine | Spine (back) | The item is attached to the Spine bone, placing it on the character's back. This attachment point provides a better interpolation space for items that animate between hands during use (e.g., a weapon that is drawn from the back, fired, and then returned). |
SpineHook | Spine child | The item is attached to the Spine_Hook bone, an optional extra child bone of the Spine bone. Used when the modder has added a custom attachment point to the character skeleton and wants the item to attach there rather than to the default Spine bone. |
EUseableType
The useable-type enumeration associates a gameplay script with the item. Each value corresponds to a C# class in the Unturned™ assembly that implements the item's interactive behavior. The complete list below includes all values recognized by the current version of the engine.
| Value | Useable class | Description |
|---|---|---|
None | , | No useable behavior. The item is not equippable and has no primary, secondary, or tertiary action. Used for crafting materials, building supplies, and other inventory-only items. |
Clothing | UseableClothing | Clothing items that are worn on the player character model (hat, shirt, pants, mask, vest, backpack, glasses). |
Gun | UseableGun | Firearms with trigger, bolt, pump, or break action. Supports attachment slots, caliber matching, and magazine loading. |
Consumeable | UseableConsumeable | Food, water, and medical items that are consumed on use. Supports hunger, thirst, health, and status-effect restoration. |
Melee | UseableMelee | Melee weapons (knife, sword, axe, club, sledgehammer). Supports primary and secondary attack actions with hit-cast damage. |
Fuel | UseableFuel | Fuel canisters and containers used to refill vehicle fuel tanks. |
Carjack | UseableCarjack | The carjack tool used to flip overturned vehicles. |
Barricade | UseableBarricade | Placeable barricades (storage boxes, spike traps, wire fences, generators, and other player-placed objects). |
Structure | UseableStructure | Placeable structures (walls, floors, roofs, pillars, and other building components placed with the structure-build tool). |
Throwable | UseableThrowable | Grenades, smoke canisters, flares, and other items thrown by the player. |
Grower | UseableGrower | Seeds and planting items that are placed in soil and grow into harvestable crops over time. |
Optic | UseableOptic | Optical devices (binoculars, rangefinders) that provide a zoomed view when equipped. |
Refill | UseableRefill | Items that refill other items (e.g., a water bottle refilled at a water source). |
Fisher | UseableFisher | Fishing rods used to catch fish from bodies of water. |
Cloud | UseableCloud | Cloud-spawning items (signal flares, smoke markers) that create a visible cloud effect at the target location. |
Arrest_Start | UseableArrestStart | The arrest-initiating tool (handcuffs, zip ties) used to begin an arrest interaction with another player. |
Arrest_End | UseableArrestEnd | The arrest-terminating tool (handcuff key) used to end an arrest interaction. |
Detonator | UseableDetonator | Detonator items that trigger remote explosives. |
Filter | UseableFilter | Gas mask filters and breathing-apparatus items that provide underwater or toxic-environment breathing time. |
Carlockpick | UseableCarlockpick | The car lockpick tool used to break into locked vehicles. |
Property inheritance model
The ItemAsset class is the root of a deep inheritance hierarchy. Every item type in Unturned™ is a subclass of ItemAsset, and each subclass adds type-specific properties on top of the shared set documented in this article. The inheritance relationship determines which properties a given item .dat file recognizes:
The hierarchy above shows the principal subclasses. A gun .dat file recognizes all properties from ItemAsset (shared), all properties from ItemGunAsset (weapon-type), and all properties from any further subclass of ItemGunAsset (if applicable). A magazine .dat file recognizes only the shared properties and the ItemMagazineAsset properties. A property that exists on ItemGunAsset (Firerate, for example) placed in a magazine .dat file will be silently ignored because the magazine's asset class does not inherit from ItemGunAsset.
This inheritance model is the reason this property reference article exists as a standalone document. Every asset-type article in the items section begins by stating that it extends the shared surface documented here. Rather than repeating the shared property definitions in every article, each type-specific article references this article as the canonical shared reference and documents only the properties unique to that type. The modder who reads this article first and understands the shared surface can move to any type-specific article and immediately recognize which fields are inherited and which are new.
Localization: English.dat Name and Description stubs
Every item folder that contains a playable item should include an English.dat file with two stubs:
Name Your Item Display Name
Description Flavor text shown in the inventory tooltip when the player hovers over the item.The Name field is a plain string that appears as the item's display name in the inventory UI, the hotkey bar, the crafting menu, and the loot panel. The Description field is Rich Text that appears in the inventory tooltip when the player hovers over the item, and may additionally include automatically appended stat descriptions if Use_Auto_Stat_Descriptions is true (the default). When auto stat descriptions are enabled, the engine appends lines for damage, storage capacity, health, armor rating, and other numeric stats based on the item's type-specific fields. The appended descriptions are rendered after the authored description text and are separated by a blank line.
The English.dat file must be saved as UTF-8 without BOM, matching the encoding standard for all Unturned™ .dat files. If the file contains a BOM, the parser may interpret the BOM bytes as part of the first field name, causing the Name field to fail to parse. The encoding procedures are documented in How to Save a DAT File with Correct Encoding.
For multi-language mods, additional localization files follow the naming convention French.dat, German.dat, Spanish.dat, and so on. Unturned™ selects the appropriate localization file based on the player's configured language setting and falls back to English.dat when the preferred language file is not present.
Worked example: a complete non-equippable item .dat
The example below shows a complete .dat file for a non-equippable item (a crafting material). Every shared property is populated and annotated with the purpose it serves. The item is a rare alloy ingot used as a crafting ingredient for high-tier weapon parts.
// ── Identity block ──
GUID a1b2c3d4e5f64a7b8c9d0e1f2a3b4c5d
ID 50150
Type Item
Name AlloyIngot
// ── Inventory block ──
Rarity Rare
Slot None
Size_X 1
Size_Y 2
// ── Quality block ──
Quality_Min 80
Quality_Max 100
Should_Delete_At_Zero_Quality false
Override_Show_Quality false
// ── Container block (used as an ingredient stack) ──
Amount 10
Count_Min 3
Count_Max 10
// ── Behavior block ──
Useable None
Can_Player_Equip false
Allow_Manual_Drop true
Should_Drop_On_Death true
Bypass_ID_Limit
// ── Icon block ──
Use_Auto_Icon_Measurements true
// Size_Z is not set; automatic measurement is used.
// ── Skin block ──
Shared_Skin_Lookup_ID 50150
// Same as ID; no skin sharing with other items.
// ── Equipment block (unused for non-equippable items) ──
// EquipablePrefab is omitted because Useable is None.
// EquipableModelParent is omitted because the item is not equipped.
Equipable_Movement_Speed_Multiplier 1
// Multiplier is 1 by default; explicitly stated for clarity.
// ── Procedural flags ──
Procedurally_Animate_Inertia false
// Inertia is irrelevant for non-equipped items; explicitly false.
Left_Handed_Characters_Mirror_Equipable true
// Default value; stated for completeness.
// ── Hash and verification ──
Bypass_Hash_Verification false
// Verification should be enabled for published items.
// ── Audio block (unused for non-equippable items) ──
// EquipAudioClip is omitted because the item is not equipped.
// InspectAudioDef is omitted; no inspect action.
// InventoryAudio is omitted; uses the default pickup sound.The example above establishes the pattern for a well-formed shared-property block. Identity fields come first, followed by inventory fields, then quality, container, behavior, icon, skin, equipment, procedural flags, and verification. The type-specific fields (if this were a gun, magazine, or melee weapon) would be appended after the shared block. The // comment convention is identical to the one used by vanilla Unturned™ files and is ignored by the parser; comments are maintained for human readability and are preserved across file loads.
Diagnostic table: common property-configuration mistakes
| Symptom | Most likely cause | Resolution |
|---|---|---|
Item does not appear in inventory after @give | ID missing or set to 0 | Set a unique ID in the 50000+ range |
| Item appears with default icon instead of custom icon | Item prefab missing from master bundle or Icon child GameObject absent | Confirm the bundle contains the Item prefab with the required hierarchy |
| Item cannot be equipped despite having a useable type | Can_Player_Equip set to false | Set Can_Player_Equip to true or omit the field (it defaults to true when Useable is set) |
| Item does not occupy the expected inventory grid space | Size_X or Size_Y set incorrectly | Confirm the grid dimensions in the .dat; a 2×2 item requires Size_X 2 and Size_Y 2 |
| Item highlight color does not match the configured rarity | Rarity value mistyped (e.g., Uncommen instead of Uncommon) | Correct the spelling to match the exact enum member name |
| Equipped model is invisible | EquipablePrefab points to a prefab not present in the master bundle | Verify the prefab name in the bundle matches the value of EquipablePrefab or Name |
| Equipped model appears at the wrong position on the player | EquipableModelParent set to the wrong attachment bone | Adjust the value: RightHook for right hand, LeftHook for left hand, Spine for back |
| Player cannot drop the item | Allow_Manual_Drop set to false | Set Allow_Manual_Drop to true |
| Item is deleted after reaching 0% durability | Should_Delete_At_Zero_Quality set to true unintentionally | Set Should_Delete_At_Zero_Quality to false |
| Item generates with the wrong spawn amount | Count_Min and Count_Max not set correctly for a container item | Set Count_Min and Count_Max to the intended spawn-fill range; Amount to the maximum capacity |
| Player movement speed changes unexpectedly while item is equipped | Equipable_Movement_Speed_Multiplier set to a value other than 1 | Set the multiplier to 1 or the intended value |
| Item model does not mirror for left-handed characters | Left_Handed_Characters_Mirror_Equipable set to false | Set to true or verify that the non-mirrored orientation is intentional |
| View-model exhibits erratic angular motion during rapid camera movement | Procedurally_Animate_Inertia enabled for an animation set that already compensates for inertia | Set Procedurally_Animate_Inertia to false |
| Skin from another item appears on this item | Shared_Skin_Lookup_ID set to the other item's ID | Change Shared_Skin_Lookup_ID to this item's own ID or set Shared_Skin_Apply_Visuals to false |
Best practices
- Assign a fresh GUID to every item using the PowerShell method
[guid]::NewGuid().ToString("N"). Never copy a GUID from another item. - Use item IDs in the 50000+ range to avoid collisions with vanilla content and established community mods.
- Match the folder name,
.datfilename stem, and internalNamefield to the same value for every item. Diagnostic clarity compounds over multiple items in the same mod project. - Group shared properties at the top of the
.datfile in the order documented in this article (identity, inventory, quality, container, behavior, icon, skin, equipment, flags, verification). Append type-specific fields after the shared block. - Keep
Bypass_Hash_Verificationset tofalsebefore publishing; the field is a development convenience only. - Confirm that every field placed in a
.datfile is recognized by the item's asset class. A field not defined on the item's class (or a parent class) is silently ignored. - Author the
English.datfile for every item in the mod, even during early development. An item without a display name is confusing to test and to diagnose. - Test the item's inventory footprint (
Size_X,Size_Y) against the actual mesh bounds in the prefab. An item whose grid dimensions are too small will clip through adjacent inventory cells visually. - Set
Should_Delete_At_Zero_Qualityintentionally:falsefor items that should be repairable,truefor consumable-durability items that should vanish on depletion. - Use
Add_Default_Actionsonly when the default refill, repair, and salvage actions are appropriate for the item type. Disable it when the item's context menu should be custom.
Frequently asked questions
Which properties are absolutely required for every item?
The three identity properties GUID, Type, and ID are required by all item assets. Without these three fields, the asset cannot be registered in the game's item manifest and will not appear in-game. Additionally, Size_X and Size_Y are strongly recommended for any item that appears in the player's inventory; omitting them results in a 1×1 default footprint that may not match the item's visual model.
What happens if I omit a property that has a default value?
The property takes its default value as documented in the property reference table above. For most properties, the default value produces reasonable behavior: Rarity defaults to Common, Slot defaults to None, and Should_Drop_On_Death defaults to true. The default values are the same as the values used by vanilla Unturned™ items of the same type.
What is the difference between a flag type and a bool type?
A flag property (e.g., Bypass_ID_Limit, Pro) requires no value on the right-hand side; the presence of the key alone is sufficient to set the flag to true. A bool property (e.g., Should_Delete_At_Zero_Quality, Can_Player_Equip) requires an explicit true or false value. The flag convention is a legacy of Unturned™'s early property system and persists in the current engine for backward compatibility.
Can I set Size_X to 0?
Technically, the engine accepts Size_X 0, which produces an item that occupies zero inventory columns. The item is still present in the inventory and can be selected and used, but it does not consume visible grid space. This configuration is rarely intentional and is typically the result of forgetting to set the grid dimensions. Use 0 only when the item's design genuinely requires no inventory footprint (e.g., an invisible key item that persists across sessions without occupying inventory slots).
How do I create an item that cannot be dropped or lost on death?
Set Allow_Manual_Drop false and Should_Drop_On_Death false. The item remains in the player's inventory permanently until consumed by a gameplay mechanic (crafting, quest turn-in, direct consumption). This configuration is appropriate for quest items, key items, and admin tools that should not proliferate through world drops.
What is the practical maximum for Size_X and Size_Y?
The inventory grid in the default Unturned™ UI has finite dimensions. The player's main inventory panel is approximately 8 columns wide and 6 rows tall. An item with Size_X 8 and Size_Y 6 occupies the entire visible inventory grid. Items larger than this are technically valid but cannot be fully displayed in the standard inventory view and may cause UI layout issues. The cohort recommendation is to keep items within a 4×2 footprint for weapons (guns, melee tools) and a 2×2 footprint for other carryable items.
Does Rarity affect anything other than the inventory highlight color?
At the engine level, Rarity controls only the inventory highlight color and the text label in the UI. It does not directly affect damage, durability, spawn rate, or any other gameplay property. However, spawn tables, loot tables, and economy configurations frequently use rarity as a shorthand for weighting spawn probability, so changing an item's rarity may indirectly affect how often players encounter it. The direct effect is cosmetic; the indirect effects depend on the server's spawn-table configuration.
Can I use a Useable type that is not listed in this article?
The EUseableType enumeration documented above is the complete set of useable types recognized by the current version of Unturned™. A value not in this set will cause a parse error and the item will fail to load. Custom useable types (implemented through C# server plugins) require a different configuration path and are not declared through the Useable field in the .dat file.
How does the engine determine which model to display when an item is dropped versus equipped?
When the item is in the world (dropped on the ground, placed as a pickup), the engine displays the Item prefab (the Item prefab in the master bundle). When the item is equipped in the player's hands, the engine checks for an EquipablePrefab field. If that field is set, the engine displays the named prefab instead; if it is not set, the engine uses the Item prefab directly. This separation allows a gun to have a detailed, animated equipped model and a simpler, lower-polygon ground model. For items that look the same in both contexts, the EquipablePrefab field can be omitted.
What is the Master Bundle Pointer type, and how do I configure it?
A Master Bundle Pointer is a reference to a named asset (prefab, audio clip, material) inside the item's Unity master bundle. The pointer value is the exact name of the asset as it appears in the Unity project's Assets folder at the time the bundle is built. The engine uses the pointer string as a key to look up the asset inside the loaded bundle. If the name does not match exactly (including case, because Unity asset names are case-sensitive in some contexts), the engine cannot resolve the pointer, and the referenced asset is not loaded. This is the most common cause of "item is invisible when equipped" and "equip sound does not play" bugs.
Does the order of properties in the .dat file affect parsing?
No. The parser reads the entire file into a property dictionary first, then maps each key-value pair to the corresponding class field. The order of properties within the file has no effect on the final values. The grouping conventions documented in this article (identity first, then inventory, then behavior, etc.) are for human readability and maintainability only. The parser treats all properties uniformly regardless of their position in the file.
Advanced considerations
Property coercion and type handling
The Unturned™ .dat parser performs implicit type coercion in several cases. A bool field accepts the literal strings true and false (case-insensitive) as well as the numeric values 1 (true) and 0 (false). A float32 field accepts integer literals (e.g., 1) and converts them to floating-point representation (1.0). An enum field accepts only the exact string spelling of the enum member name; misspellings, abbreviations, and variant capitalizations produce parse errors. The parser is strict about enum values and permissive about numeric values, which means that a numeric typo (e.g., Rarity 3 instead of Rarity Epic) will parse but produce unexpected behavior because the parser will attempt to map the integer 3 to the enum's ordinal position rather than treating it as a value designation.
Interaction between Can_Player_Equip and Useable
The Can_Player_Equip property is logically dependent on Useable. An item with Useable None and Can_Player_Equip true is a valid configuration: the field is set to true but has no effect because the item has no useable script and therefore no equip behavior. Conversely, an item with Useable Melee and Can_Player_Equip false is a melee weapon that only non-player entities can use. This configuration is used in modded scenarios where NPC guards, automated turrets, or scripted enemies carry weapons that players cannot pick up and use.
The Pro flag and Steam Economy integration
The Pro flag is the mechanism by which Unturned™ gates content behind the premium upgrade (Gold/PRO tier). When a server has Pro enabled, items without the flag are usable by all players; items with the flag are usable only by players who own the premium upgrade. When a non-PRO player attempts to equip or use a PRO-gated item, the game displays a message indicating that the item requires the premium upgrade. Workshop modders should understand that setting Pro on a mod item restricts that item's audience to PRO players only, which may reduce the mod's download and rating count. The cohort recommendation for public Workshop mods is to leave Pro unset unless the mod's design explicitly requires premium gating.
Property inheritance across spawned items
When an item is spawned in the world (via loot tables, crafting, or admin commands), the spawned instance inherits all properties from its asset definition. Some properties are instance-scoped (quality, durability, container amount) and may vary between instances of the same asset. Other properties are class-scoped (ID, GUID, Type, Rarity, Slot, Size) and are identical across all instances. The distinction between instance-scoped and class-scoped properties is determined by the item's useable script; the shared property surface alone does not distinguish between the two scopes. Modders who need per-instance variability should investigate the useable script's instance-management behavior for the relevant item type.
Appendix A: Item asset property quick-reference card
| Field | Type | Required | Default |
|---|---|---|---|
GUID | GUID | Yes | , |
ID | uint16 | Yes | 0 |
Type | EItemType | Yes | , |
Name | string | Recommended | , |
Rarity | EItemRarity | Recommended | Common |
Slot | ESlotType | Recommended | None |
Size_X | uint8 | Recommended | 1 |
Size_Y | uint8 | Recommended | 1 |
Useable | EUseableType | Recommended | None |
Can_Player_Equip | bool | Optional | See description |
Can_Use_Underwater | bool | Optional | See description |
Allow_Manual_Drop | bool | Optional | true |
Should_Drop_On_Death | bool | Optional | true |
Bypass_ID_Limit | flag | Conditional | not set |
Bypass_Hash_Verification | bool | Optional | false |
EquipablePrefab | Master Bundle Pointer | Optional | , |
EquipableModelParent | EEquipableModelParent | Optional | See description |
Destroy_Item_Colliders | bool | Optional | true |
Equipable_Movement_Speed_Multiplier | float32 | Optional | 1 |
Left_Handed_Characters_Mirror_Equipable | bool | Optional | true |
Procedurally_Animate_Inertia | bool | Optional | true |
Quality_Min | uint8 | Optional | 10 |
Quality_Max | uint8 | Optional | 90 |
Should_Delete_At_Zero_Quality | bool | Optional | false |
Deleted_At_Zero_Quality_Effect | Asset Pointer to Effect Assets | Optional | 0 |
Deleted_At_Zero_Quality_Rewards | Rewards | Optional | 0 |
Override_Show_Quality | bool | Optional | false |
Amount | uint8 | Optional | 1 |
Count_Min | uint8 | Optional | 1 |
Count_Max | uint8 | Optional | 1 |
Use_Auto_Icon_Measurements | bool | Optional | true |
Size_Z | float32 | Optional | -1 |
Size2_Z | float32 | Optional | -1 |
Shared_Skin_Lookup_ID | uint16 | Optional | Value of ID |
Shared_Skin_Apply_Visuals | bool | Optional | true |
Ignore_TexRW | flag | Optional | not set |
Add_Default_Actions | bool | Optional | See description |
Pro | flag | Optional | not set |
Fishing_Catchable | FishingCatchableProperties | Optional | , |
EquipAudioClip | Master Bundle Pointer | Optional | Equip |
InspectAudioDef | Master Bundle Pointer | Optional | , |
InventoryAudio | Master Bundle Pointer | Optional | See description |
Instantiated_Item_Name_Override | string | Optional | Value of ID |
Backward | flag | deprecated | , |
Appendix B: EEquipableModelParent quick reference
| Value | Attachment bone | Typical use |
|---|---|---|
RightHook | Right hand | Standard weapons |
LeftHook | Left hand | Off-hand items |
Spine | Back | Holstered weapons |
SpineHook | Spine child | Custom attachment points |
Appendix C: ESlotType quick reference
| Value | Restriction |
|---|---|
None | Hotkey only, no equipment slot |
Primary | Primary slot only (slot 1) |
Secondary | Primary or secondary slot (slots 1 or 2) |
Tertiary | Not implemented |
Any | Any hotkey slot, no equipment restriction |
Appendix D: EItemRarity quick reference
| Value | Highlight color |
|---|---|
Common | White / gray |
Uncommon | Green |
Rare | Blue |
Epic | Purple |
Legendary | Orange / gold |
Mythical | Red |
Appendix E: EUseableType quick reference
| Value | Useable class | Example items |
|---|---|---|
None | , | Crafting materials |
Clothing | UseableClothing | Hat, shirt, pants, mask, vest, backpack, glasses |
Gun | UseableGun | Rifles, pistols, shotguns, SMGs |
Consumeable | UseableConsumeable | Food, water, medical supplies |
Melee | UseableMelee | Knife, sword, axe, club, sledgehammer |
Fuel | UseableFuel | Fuel canisters |
Carjack | UseableCarjack | Carjack tool |
Barricade | UseableBarricade | Storage boxes, spike traps, generators |
Structure | UseableStructure | Walls, floors, roofs, pillars |
Throwable | UseableThrowable | Grenades, smoke, flares |
Grower | UseableGrower | Seeds, planting items |
Optic | UseableOptic | Binoculars, rangefinders |
Refill | UseableRefill | Water bottles, refillable containers |
Fisher | UseableFisher | Fishing rods |
Cloud | UseableCloud | Signal flares, smoke markers |
Arrest_Start | UseableArrestStart | Handcuffs, zip ties |
Arrest_End | UseableArrestEnd | Handcuff keys |
Detonator | UseableDetonator | Remote detonators |
Filter | UseableFilter | Gas mask filters |
Carlockpick | UseableCarlockpick | Car lockpicks |
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2025-05-18 | 57 Studios | Initial publication. Complete ItemAsset property reference, enumerations, Unity asset bundle contents, property inheritance model, worked examples, diagnostic table, FAQ, and quick-reference appendices. |
Cross-references
- Item Actions Reference, the previous article; documents crafting blueprints and context-menu actions in detail.
- Character Mesh Replacement, the next article; documents the character mesh override system for shirt items.
- Item Asset Anatomy, the companion article that documents the structure of item
.datand.assetfiles from the syntax and folder-layout perspective. - Data File Format Reference, the canonical syntax reference for
.datand.assetfiles; covers key-value pairs, comments, arrays, objects, nesting, and encoding rules. - Asset Definitions Reference, the bridge between
.datconfiguration and Unity asset bundles; documents GUID and Type headers, Format A versus Format B, and master bundle linkage. - Project Folder Structure and GUIDs, the folder layout and GUID generation workflow that every item mod follows.
- How to Save a DAT File with Correct Encoding, the UTF-8 without BOM encoding procedure required for all item
.datfiles. - Melee Asset, the first type-specific article that extends the shared surface documented here; covers damage fields, swing mechanics, and two-handed configuration.
- Clothing Asset Reference, the clothing-slot type-specific article; covers the seven clothing slots and their shared and type-specific fields.
- Magazine Asset Reference, the magazine type-specific article; covers the caliber linkage mechanism and ammunition fields.
- Smartly Dressed Games modding documentation, the official field reference for the ItemAsset class and its enumerations.
- Unturned on Steam, the Unturned™ store page and community hub.
