Tactical Asset Reference
The tactical asset is the data definition for every under-barrel attachment in Unturned™ modding that projects a visible beam or cone, measures distance, or provides a melee attack. Tactical attachments occupy the Tactical slot on a compatible weapon and encompass laser sights (visible red beam indicating the weapon's point of aim), flashlights and spotlights (illumination cones that reveal dark areas), rangefinders (HUD distance readout to the crosshair target), and melee attachments (bayonets and blade fittings that grant the weapon a melee attack). The tactical attachment is the only attachment slot that can combine multiple active effects in a single item -- a laser-light combo unit that projects both a visible laser beam and a flashlight cone is a single .dat file with both the Laser and Light flags set.
This article is the 57 Studios™ canonical field reference for the ItemTacticalAsset class. It covers every .dat field specific to tactical attachments, the laser system and laser color override, the light and spotlight system, the rangefinder distance-readout system, the melee-attachment subsystem with its full complement of damage and status-effect fields inherited from the weapon melee system, the Spread field for accuracy modification, the Firerate and Recoil_X/Recoil_Y fields for statistical weapon modification, the caliber compatibility system, and the shared identity and inventory fields that follow the ItemAsset convention. A complete field reference table, worked .dat examples from every vanilla tactical file, an FAQ section with more than ten entries, diagnostic tables, and a best-practices authoring checklist close the article.

Documentation source: This article references the official Smartly Dressed Games modding documentation for field definitions and the shipped vanilla tactical files at
Bundles/Items/Tacticals/for validation of field usage patterns and default values. The melee-attachment subsystem shares field names with theItemWeaponAssetclass and this overlap is noted where applicable.
Who this article is for
This article is written for Unturned™ mod authors who have already completed at least one gun mod or attachment mod of another type and who understand the master bundle pipeline, the Unity prefab workflow, and the shared item .dat conventions documented in Item Asset Anatomy. The melee-attachment subsystem section requires familiarity with the melee damage model documented in Melee Asset. If you are new to Unturned™ modding, start with Project Folder Structure and GUIDs and Attachment Slots: Sight, Grip, Tactical, Barrel before returning here.
What you will learn
- The complete
.datfield set forItemTacticalAsset, including fields inherited fromCaliberAssetandItemAsset. - The laser system: the
Laserflag andLaser_Colorcolor override for custom beam colors. - The light system: the
Lightflag for standard flashlight cones and theSpotlightflag for high-intensity narrow-beam spotlights. - The rangefinder system: the
Rangefinderflag and its HUD distance-readout behavior. - The melee-attachment subsystem:
Meleeflag and all associated damage, multiplier, bleeding, bones, and stagger fields. - The statistical modifier fields:
Spread,Firerate,Recoil_X,Recoil_Yfor weapon-performance modification. - Caliber compatibility: how the
Caliberfield controls which weapons accept each tactical attachment. - Worked
.datexamples from every vanilla tactical file covering lasers, lights, rangefinders, bayonets, and statistical chambering upgrades. - The PlayerSpotLightConfig properties available when the
Lightflag is set. - A diagnostic table for the most common tactical attachment authoring errors.
How the tactical system works
The tactical attachment system in Unturned operates on a flag-based activation model. Each tactical attachment .dat file sets one or more behavioral flags (Laser, Light, Rangefinder, Melee), and the game engine activates the corresponding subsystem when the attachment is equipped and toggled on by the player. Multiple flags can be active simultaneously within a single attachment.
Player equips tactical attachment
|
▼
Game reads tactical .dat at load time
|
▼
For each flag present, activate the subsystem:
Laser flag → Project a visible red laser beam from the weapon
Optional: Laser_Color overrides the default red beam color
Light flag → Project a white flashlight illumination cone
Optional: PlayerSpotLightConfig properties for advanced light control
Rangefinder flag → Display distance readout in HUD when aiming at a surface
Melee flag → Enable melee attack behavior on the weapon
Uses configured Melee_* damage and status fields
|
▼
Apply statistical modifier fields:
Spread → Multiply weapon's Spread_Hip/Spread_Aim
Firerate → Override or modify weapon's Firerate
Recoil_X → Multiply weapon's horizontal recoil
Recoil_Y → Multiply weapon's vertical recoil
|
▼
Player toggles attachment with the tactical key (default: T)
Each press cycles the active state of each subsystemThe tactical system is additive -- each flag activates a completely independent subsystem. A Laser flag does not affect the Light subsystem, and neither affects the Melee subsystem or the statistical fields. This independence allows for complex multi-function tactical attachments that combine illumination, laser aiming, melee capability, and statistical effects in a single item.
As shown in the flowchart, each subsystem activates independently based on the presence of its flag. The player toggles each subsystem on and off with the tactical key.
PlayerSpotLightConfig properties
When the Light flag is present, the attachment gains access to the PlayerSpotLightConfig subsystem, which provides additional light-beam configuration fields beyond the basic flag. These fields control the physical properties of the projected light cone.
| Field | Type | Default | Purpose |
|---|---|---|---|
Spotlight_Range | float | engine-defined | Maximum distance the light cone reaches. |
Spotlight_Angle | float | engine-defined | Cone angle of the spotlight in degrees. |
Spotlight_Intensity | float | engine-defined | Brightness of the projected light. |
Spotlight_Shadow | flag | absent | When present, the light cone casts real-time shadows. |
Spotlight_Shimmer | flag | absent | When present, the light cone has a shimmer or flicker effect. |
The PlayerSpotLightConfig fields are advanced and rarely used in community tactical mods. The vanilla tactical light uses only the Light flag with no spotlight configuration, defaulting to the engine's standard flashlight cone.
Tactical attachment subtypes
| Subtype | Examples | Behavioral flags | Statistical fields |
|---|---|---|---|
| Laser sight | Tactical Laser | Laser | Spread 0.8 (accuracy bonus) |
| Flashlight | Tactical Light | Light | None |
| Laser-light combo | Not in vanilla | Laser + Light | Optional |
| Rangefinder | Rangefinder | Rangefinder | None |
| Melee attachment | Bayonet | Melee | None |
| Statistical upgrade | Adaptive Chambering | None (no behavioral flags) | Firerate 1, Recoil_X 1.2, Recoil_Y 1.3 |
The Adaptive Chambering tactical attachment is a notable edge case: it sets no behavioral flags (Laser, Light, Rangefinder, Melee are all absent) but provides statistical modifiers (Firerate, Recoil_X, Recoil_Y). This demonstrates that tactical attachments can serve purely as statistical upgrade items with no active projection or melee behavior.
Complete .dat field reference
Identity and shared fields
The following shared fields are required on every item asset, including tactical attachments. See Item Asset Anatomy for full documentation of these fields.
| Field | Type | Example | Notes |
|---|---|---|---|
ID | uint16 | 4001 | Unique item ID. Use 50000+ range for custom tacticals. |
GUID | uint128 hex | e795f250c6384d7db45a05be43f156ac | 128-bit globally unique identifier. Generate fresh for every tactical. |
Type | enum | Tactical | Must be Tactical for this asset type. |
Name | string | MyTacticalLaser | Internal name; also the prefab lookup key. |
Rarity | enum | Rare | Rarity tier. Vanilla tacticals range from Rare to Epic. |
Slot | enum | None | Tacticals use None; they attach to the weapon's Tactical slot. |
Size_X | uint8 | 1 | Inventory grid width. Vanilla tacticals are typically 1 wide. |
Size_Y | uint8 | 1 | Inventory grid height. Vanilla tacticals are typically 1 tall. |
Size_Z | float | 0.075 | Depth in inventory grid. Typically 0.075 for compact tacticals. |
Paintable | flag | present or absent | When present, the tactical supports color customization. |
Caliber field
| Field | Type | Required | Default | Example | Purpose |
|---|---|---|---|---|---|
Caliber | uint16 | No | 0 | 0 | Caliber compatibility ID. 0 means universal. When set to a non-zero value, only weapons with a matching Caliber field can mount this tactical attachment. |
The caliber system for attachments is documented in full in Attachment Slots: Sight, Grip, Tactical, Barrel. The tactical's Caliber field must match the weapon's Caliber field for the attachment to be equippable, unless either value is 0 (universal).
Behavioral flags
| Field | Type | Default | Purpose |
|---|---|---|---|
Laser | flag | absent | When present, the attachment projects a toggleable visible laser beam from the weapon. The beam is a thin red line terminating in a dot on the surface the weapon is aimed at. The laser is visible to all players on the server, not just the user. |
Laser_Color | color | #FF0000 | Override the default red laser color with the specified value. Supports legacy color parsing (hex RGB without leading #, or named colors). Example: 00ff00 for a green laser. |
Light | flag | absent | When present, the attachment projects a toggleable flashlight cone. The cone illuminates the area in front of the weapon, revealing dark areas and making enemies visible at night or underground. Also allows use of PlayerSpotLightConfig properties for advanced light configuration. |
Spotlight | flag | absent | When present, a high-intensity directional spotlight is used instead of a standard flashlight cone. The spotlight cone is narrower and reaches farther than the standard flashlight cone. |
Rangefinder | flag | absent | When present, the attachment shows a distance readout in the HUD to the surface under the crosshair. The readout displays the distance in meters to the aim point. No visible beam or cone is projected. |
Melee | flag | absent | When present, the attachment provides the ability to perform a melee attack. The melee attack behavior and damage values are configured through the Melee_* field set. The base melee attack does 40 damage and is not configurable without the additional melee fields. |
Laser color override details
The Laser_Color field overrides the default red beam color. The field supports Unity's legacy color parsing, which accepts hex RGB values (without leading #) and named Unity color strings. The default is #FF0000 (red). The vanilla Tactical Laser uses the default red laser color (no Laser_Color override set).
| Laser color | Hex value | Use case |
|---|---|---|
| Red (default) | #FF0000 or omitted | Standard visible laser |
| Green | #00FF00 | Higher-visibility laser for daylight use |
| Blue | #0000FF | Low-visibility laser for stealth loadouts |
| Yellow | #FFFF00 | Training or high-visibility laser |
| Cyan | #00FFFF | Specialty or cosmetic laser |
| Magenta | #FF00FF | Cosmetic or faction-color laser |
As shown in the flowchart, the laser color defaults to red when Laser_Color is absent and supports both hex and named color formats when present.
Statistical modifier fields
| Field | Type | Default | Example | Purpose |
|---|---|---|---|---|
Spread | float | 1.0 (omitted) | 0.8 | Multiplier on the weapon's spread statistics (Spread_Hip and Spread_Aim). Values below 1.0 tighten the bullet spread, increasing accuracy. The vanilla Tactical Laser uses Spread 0.8 for a 20% accuracy improvement. |
Firerate | float | unset | 1 | Override or modifier on the weapon's Firerate field. The vanilla Adaptive Chambering uses Firerate 1 with Recoil_X 1.2 and Recoil_Y 1.3 to create a firerate increase with a recoil penalty trade-off. |
Recoil_X | float | 1.0 (omitted) | 1.2 | Multiplier on the weapon's horizontal recoil (Recoil_Min_X/Recoil_Max_X). Values above 1.0 increase horizontal recoil; values below 1.0 reduce it. |
Recoil_Y | float | 1.0 (omitted) | 1.3 | Multiplier on the weapon's vertical recoil (Recoil_Min_Y/Recoil_Max_Y). Values above 1.0 increase vertical recoil; values below 1.0 reduce it. |
The statistical modifier fields are independent of the behavioral flags. A tactical attachment can have no behavioral flags and still function as a statistical upgrade item (like the vanilla Adaptive Chambering). Conversely, a tactical attachment can have behavioral flags with no statistical modifiers (like the vanilla Tactical Light).
Melee-attachment subsystem
When the Melee flag is present, the attachment gains the full melee-attack subsystem, with damage, multiplier, status-effect, and stagger configuration fields. These fields mirror the weapon damage model documented in the official Smartly Dressed Games modding documentation.
Melee damage fields
| Field | Type | Default | Example | Purpose |
|---|---|---|---|---|
Melee_Range | float32 | engine-default | 2.0 | The maximum distance in meters before damage is no longer possible. Controls the melee hit-cast range. |
Melee_Player_Damage | float32 | 40 | 50 | Amount of damage dealt to player entities, prior to modifiers such as limb multipliers. |
Melee_Zombie_Damage | float32 | engine-default | 60 | Amount of damage dealt to zombie entities, prior to modifiers such as limb multipliers. |
Melee_Animal_Damage | float32 | engine-default | 40 | Amount of damage dealt to animal entities, prior to modifiers such as limb multipliers. |
Melee limb multiplier fields
Each limb multiplier is a float that scales damage to that specific body part. A multiplier of 1.0 means the body part receives the base damage. Higher values amplify damage; lower values reduce it.
| Field | Type | Default | Purpose |
|---|---|---|---|
Melee_Player_Leg_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a player's legs. |
Melee_Player_Arm_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a player's arms. |
Melee_Player_Spine_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a player's torso. |
Melee_Player_Skull_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a player's head. |
Melee_Zombie_Leg_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a zombie's legs. |
Melee_Zombie_Arm_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a zombie's arms. |
Melee_Zombie_Spine_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a zombie's torso. |
Melee_Zombie_Skull_Multiplier | float32 | 1.0 | Multiplier on damage targeted against a zombie's head. |
Melee_Animal_Leg_Multiplier | float32 | 1.0 | Multiplier on damage targeted against an animal's limbs. |
Melee_Animal_Spine_Multiplier | float32 | 1.0 | Multiplier on damage targeted against an animal's torso. |
Melee_Animal_Skull_Multiplier | float32 | 1.0 | Multiplier on damage targeted against an animal's head. |
Melee status-effect fields
| Field | Type | Default | Values | Purpose |
|---|---|---|---|---|
Melee_Player_Damage_Bleeding | enum | Default | Always, Default, Heal, Never | Determines the bleeding status effect on hit. Always applies bleeding always. Default applies bleeding only if damage threshold is met. Heal removes bleeding from the target. Never suppresses bleeding application. |
Melee_Player_Damage_Bones | enum | None | Always, Heal, None | Determines the broken bones status effect on hit. Always applies broken bones always. Heal removes broken bones from the target. None never applies or removes broken bones. |
Melee zombie stagger fields
| Field | Type | Default | Purpose |
|---|---|---|---|
Melee_Stun_Zombie_Always | flag | absent | When present, a zombie is always stunned when targeted by this melee attack. |
Melee_Stun_Zombie_Never | flag | absent | When present, a zombie is never stunned when targeted by this melee attack. |
Melee zombie ragdoll field
| Field | Type | Default | Purpose |
|---|---|---|---|
Melee_Zombie_Ragdoll_Force_Multiplier | float32 | 1.0 | Scales the force applied to a zombie's ragdoll on hit. Values above 1.0 produce more dramatic ragdoll physics reactions. |
The melee-attachment subsystem replicates the weapon melee damage model within the tactical attachment context. The official documentation notes that the melee field set is mostly copied one-to-one from ItemWeaponAsset and may be tidied up in a future documentation update. Modders should verify field behavior against the current game version.
Worked .dat examples
Vanilla tactical laser: Tactical Laser
GUID e795f250c6384d7db45a05be43f156ac
Type Tactical
Rarity Rare
ID 151
Size_X 1
Size_Y 1
Size_Z 0.075
Spread 0.8
Laser
PaintableThe Tactical Laser demonstrates the simplest tactical configuration: the Laser flag activates the visible laser beam, and Spread 0.8 provides a 20% accuracy improvement. No Laser_Color field means the beam uses the default red color (#FF0000).
Vanilla tactical light: Tactical Light
GUID 2a7c7d0b784141ad8a08e2442ce08465
Type Tactical
Rarity Rare
ID 152
Size_X 1
Size_Y 1
Size_Z 0.075
Light
PaintableThe Tactical Light demonstrates the simplest light configuration: the Light flag activates the standard flashlight cone. No statistical modifiers and no additional behavioral flags.
Vanilla rangefinder: Rangefinder
GUID 669bab19df634f859a2e61c39e428e59
Type Tactical
Rarity Epic
ID 1008
Size_X 1
Size_Y 1
Size_Z 0.075
Rangefinder
PaintableThe Rangefinder demonstrates the rangefinder subsystem: the Rangefinder flag activates the HUD distance readout. No visual projection is produced. No statistical modifiers.
Vanilla melee attachment: Bayonet
GUID 60ca549dc68e4c3e91470df6545c7ce7
Type Tactical
Rarity Rare
ID 1438
Size_X 3
Size_Y 1
Size_Z 0.25
MeleeThe Bayonet demonstrates the melee-attachment subsystem at its simplest: the Melee flag enables a melee attack that deals 40 damage (the default base damage) with no limb multipliers or status-effect overrides. The Size_X 3 inventory footprint (larger than the standard tactical) reflects the physical size of a mounted bayonet.
Vanilla statistical upgrade: Adaptive Chambering
GUID 9e8d092e13474ff49ab8a41c5b2fcbf5
Type Tactical
Rarity Epic
ID 1007
Size_X 1
Size_Y 1
Size_Z 0.125
Firerate 1
Recoil_X 1.2
Recoil_Y 1.3The Adaptive Chambering demonstrates a tactical attachment with no behavioral flags. It provides Firerate 1 (a firerate increase -- the exact value depends on how Firerate in a tactical context interacts with the weapon's base firerate) and a recoil increase trade-off (Recoil_X 1.2, Recoil_Y 1.3). This attachment is a statistical upgrade item rather than a projection or melee device.
Tactical attachment authoring workflow
Field reference table
| Field | Type | Required | Default | Applies to |
|---|---|---|---|---|
ID | uint16 | Yes | -- | All tacticals |
GUID | uint128 | Yes | -- | All tacticals |
Type | enum | Yes | -- | Must be Tactical |
Name | string | Yes | -- | All tacticals |
Rarity | enum | No | unset | All tacticals |
Slot | enum | No | None | All tacticals |
Size_X | uint8 | No | 1 | All tacticals |
Size_Y | uint8 | No | 1 | All tacticals |
Size_Z | float | No | 0.075 | All tacticals |
Caliber | uint16 | No | 0 | All tacticals |
Paintable | flag | No | absent | All tacticals |
Laser | flag | No | absent | Laser attachments |
Laser_Color | color | No | #FF0000 | Laser attachments |
Light | flag | No | absent | Light attachments |
Spotlight | flag | No | absent | Light attachments |
Rangefinder | flag | No | absent | Rangefinder attachments |
Melee | flag | No | absent | Melee attachments |
Spread | float | No | unset (1.0) | Stat modifiers |
Firerate | float | No | unset | Stat modifiers |
Recoil_X | float | No | unset (1.0) | Stat modifiers |
Recoil_Y | float | No | unset (1.0) | Stat modifiers |
Melee_Range | float32 | No | engine-default | Melee attachments |
Melee_Player_Damage | float32 | No | 40 | Melee attachments |
Melee_Player_Leg_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Player_Arm_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Player_Spine_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Player_Skull_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Player_Damage_Bleeding | enum | No | Default | Melee attachments |
Melee_Player_Damage_Bones | enum | No | None | Melee attachments |
Melee_Zombie_Damage | float32 | No | engine-default | Melee attachments |
Melee_Zombie_Leg_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Zombie_Arm_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Zombie_Spine_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Zombie_Skull_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Zombie_Ragdoll_Force_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Zombie_Stun_Always | flag | No | absent | Melee attachments |
Melee_Zombie_Stun_Never | flag | No | absent | Melee attachments |
Melee_Animal_Damage | float32 | No | engine-default | Melee attachments |
Melee_Animal_Leg_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Animal_Spine_Multiplier | float32 | No | 1.0 | Melee attachments |
Melee_Animal_Skull_Multiplier | float32 | No | 1.0 | Melee attachments |
Diagnostic table
| Symptom | Most likely cause | Resolution |
|---|---|---|
| Laser beam not visible in-game | Laser flag absent from tactical .dat | Add Laser flag |
| Laser beam is red but should be another color | Laser_Color field absent or not parsed correctly | Add Laser_Color <hex> with the desired color |
| Flashlight cone not visible | Light flag absent from tactical .dat | Add Light flag |
| Spotlight cone is standard flashlight cone | Spotlight flag absent | Add Spotlight flag if a narrow high-intensity cone is desired |
| Rangefinder shows no distance in HUD | Rangefinder flag absent | Add Rangefinder flag |
| Melee attack does not trigger | Melee flag absent or Melee_Range too low | Add Melee flag and set Melee_Range to a positive value |
| Melee damage too high or low | Melee_Player_Damage or limb multiplier set incorrectly | Tune damage fields to desired values |
| No statistical effect from attachment | Spread, Firerate, Recoil_X, Recoil_Y fields absent or set to default (1.0) | Add the desired statistical modifier fields with non-default values |
| Attachment not equippable on weapon | Caliber mismatch or weapon lacks Tactical slot | Set Caliber 0 or confirm weapon has Tactical slot |
| Attachment equips but is invisible | Prefab missing from master bundle or name mismatch | Confirm prefab in bundle matches Name or Item field |
| Laser and light cannot be toggled independently | Only one toggle state per tactical attachment | Design as separate attachments if independent toggling is required |
| Bleeding status never applies | Melee_Player_Damage_Bleeding set to Never | Set to Default or Always |
| Broken bones always apply | Melee_Player_Damage_Bones set to Always unintentionally | Set to None or Heal |
| Zombies never stagger from melee hit | Melee_Stun_Zombie_Never flag present | Remove Melee_Stun_Zombie_Never or add Melee_Stun_Zombie_Always |
| Zombie ragdoll flies too far on melee hit | Melee_Zombie_Ragdoll_Force_Multiplier too high | Reduce to 1.0 or lower |
| Firerate increase too strong | Firerate value too high | Reduce Firerate value |
Best practices
- Generate a fresh GUID for every tactical asset. Never reuse GUIDs from other items.
- Choose IDs in the 50000+ range to avoid collision with vanilla and established community mods.
- Set
Caliber 0(universal) for tacticals that should work on any weapon. Use a custom caliber ID only when a tactical is designed for a specific weapon family. - Use the
Laserflag with caution: the laser beam is visible to all players on the server, not just the user. Document laser visibility in the mod's Steam Workshop description. - Pair
LaserwithSpreadbelow1.0for a laser sight that provides both visual aiming assistance and a statistical accuracy bonus -- this is the vanilla pattern. - Use
Laser_Colorfor faction-coded or cosmetic laser variants. A green laser (00ff00) is the most common alternative to red and is visible in more lighting conditions. - Use
Lightfor night-operation attachments andSpotlightfor longer-range illumination. The standard flashlight cone is sufficient for indoor and close-range use. - Reserve
Rangefinderfor precision-oriented weapons (sniper rifles, DMRs) where the distance readout provides meaningful gameplay value. - Author melee-attachment damage values to be lower than dedicated melee weapons. A bayonet should not outperform a combat knife.
- Use
Recoil_XandRecoil_Yvalues above1.0to create trade-off attachments (increased firerate at the cost of more recoil), matching the vanilla Adaptive Chambering pattern. - Test all behavioral flags (laser, light, rangefinder, melee) individually and in combination before publishing.
- Document the tactical attachment's function clearly in the
English.datDescriptionfield so players know what the attachment does before equipping it.
Workflow: authoring a laser-light combo tactical
The laser-light combo is the most requested multi-function tactical attachment design. Authoring a combo unit requires setting both the Laser and Light flags in a single .dat file.
GUID <generated-uuid>
Type Tactical
Rarity Rare
ID <50000+>
Size_X 1
Size_Y 1
Size_Z 0.075
Caliber 0
Laser
Light
Spread 0.9The Laser flag activates the laser beam. The Light flag activates the flashlight cone. The Spread 0.9 provides a minor accuracy bonus. The player toggles both subsystems with the tactical key.
A more advanced combo could add Laser_Color for a custom beam color and Spotlight for a narrow high-intensity illumination cone:
GUID <generated-uuid>
Type Tactical
Rarity Epic
ID <50000+>
Size_X 1
Size_Y 1
Size_Z 0.075
Caliber 0
Laser
Laser_Color 00ff00
Light
Spotlight
Spread 0.85
Recoil_X 0.95This configuration produces a green-laser-and-spotlight combo with a 15% accuracy bonus and 5% horizontal recoil reduction.
Workflow: authoring a melee-bayonet tactical
The melee-bayonet tactical is the most complex tactical subtype because it uses the full melee subsystem field set. The following example configures a bayonet with player, zombie, and animal damage values, limb multipliers, bleeding application, and zombie stagger control:
GUID <generated-uuid>
Type Tactical
Rarity Rare
ID <50000+>
Size_X 3
Size_Y 1
Size_Z 0.25
Caliber 0
Melee
Melee_Range 2.5
Melee_Player_Damage 40
Melee_Player_Leg_Multiplier 0.7
Melee_Player_Arm_Multiplier 0.6
Melee_Player_Spine_Multiplier 1.0
Melee_Player_Skull_Multiplier 1.5
Melee_Player_Damage_Bleeding Always
Melee_Player_Damage_Bones None
Melee_Zombie_Damage 50
Melee_Zombie_Leg_Multiplier 0.8
Melee_Zombie_Arm_Multiplier 0.7
Melee_Zombie_Spine_Multiplier 1.0
Melee_Zombie_Skull_Multiplier 1.5
Melee_Zombie_Ragdoll_Force_Multiplier 1.2
Melee_Stun_Zombie_Always
Melee_Animal_Damage 30
Melee_Animal_Leg_Multiplier 0.8
Melee_Animal_Spine_Multiplier 1.0
Melee_Animal_Skull_Multiplier 1.2This bayonet configuration produces a melee attack that deals moderate damage to all entity types, with skull multipliers amplifying headshot damage and a guaranteed bleed effect on player hits. Zombies are always stunned on hit.
Frequently asked questions
Can one tactical attachment have both Laser and Light?
Yes. Setting both Laser and Light flags in the same .dat file produces a laser-light combo unit. Both subsystems activate independently. The player toggles them simultaneously with the tactical key.
Can one tactical attachment have all four behavioral flags?
Yes. The flags are independent -- Laser, Light, Rangefinder, and Melee can all be present in the same .dat file. A theoretical "ultimate tactical unit" could project a laser beam, project a flashlight cone, display a HUD distance readout, and provide a melee attack, all from one attachment. Whether such a combination is balanced for gameplay is a separate design question.
Does the laser beam affect weapon accuracy?
The Laser flag itself does not change weapon accuracy. The Spread field, when set, modifies the weapon's spread statistics independently of the Laser flag. A tactical laser with Spread 0.8 provides a 20% accuracy bonus. A tactical laser with no Spread field provides no accuracy bonus -- the laser is a visual aiming aid only.
Is the laser beam visible to other players?
Yes. The laser beam and dot are visible to all players on the server, not just the user. This is an intentional gameplay design. The laser betrays the user's position and point of aim. Document this behavior in the mod's Workshop description so players are not surprised when enemies see their laser.
Can I make a stealth laser that only I can see?
The vanilla Laser system does not support a client-side-only laser. All players on the server see the beam. If a stealth laser is required, the cohort recommendation is to use the Rangefinder flag (which provides HUD feedback without a visible beam) or to implement the laser behavior through server-side plugin code rather than the .dat system.
What is the difference between Light and Spotlight?
Light activates the standard flashlight cone, which is a medium-angle illumination cone with moderate range. Spotlight activates a high-intensity directional spotlight with a narrower cone and longer reach. The Light flag alone produces the standard cone; adding the Spotlight flag changes the cone to the spotlight configuration. The two flags can be combined for an attachment that provides both a flood beam and a focused beam, though the behavior depends on the engine's implementation of dual-beam light systems.
How does the Rangefinder display distance?
The Rangefinder flag activates a HUD readout that shows the distance in meters from the player to the surface under the crosshair. The readout appears when the player aims the weapon at a surface. No visible beam or cone is projected. The rangefinder is a utility attachment for snipers who need to know the exact engagement distance for ballistic drop compensation.
Does the Melee flag work on any weapon?
Yes. The Melee flag is a tactical attachment property and works on any weapon that has a Tactical slot. The weapon does not need to have any melee-specific configuration in its own .dat -- the melee subsystem is provided entirely by the tactical attachment's Melee_* fields. However, the melee attack animation uses the weapon's existing animation rig; if the weapon has no melee animation state, the attack may play without visual feedback.
What is the base damage of Melee without any Melee_Player_Damage field?
The base melee damage for a tactical attachment with the Melee flag but no Melee_Player_Damage field is 40 damage, as documented in the official SDG property descriptions. This is the same base damage as the default melee weapon attack.
Can I set Melee_Range to a very high value?
Melee_Range controls the maximum distance at which a melee hit can register. Values above approximately 5 meters may produce hit detection that feels inconsistent with the visual bayonet model. The cohort recommendation is to keep Melee_Range between 1.5 and 3.0 meters.
Can a tactical attachment have only statistical modifiers and no behavioral flags?
Yes. The vanilla Adaptive Chambering demonstrates this pattern: Firerate, Recoil_X, and Recoil_Y fields with no Laser, Light, Rangefinder, or Melee flags. This type of attachment is a statistical upgrade item that modifies weapon performance without projecting any beam, cone, or readout.
What happens if I set Recoil_X and Recoil_Y both below 1.0?
The weapon's overall recoil is reduced. A tactical attachment with Recoil_X 0.8 and Recoil_Y 0.8 reduces both horizontal and vertical recoil by 20%. This is a powerful statistical effect and should be balanced with appropriate Rarity and inventory footprint.
What does the Firerate field do in a tactical context?
The Firerate field on a tactical attachment modifies the weapon's base Firerate value. The exact behavior depends on how the tactical's Firerate interacts with the weapon's Firerate in the engine -- it may override the weapon's value or serve as a multiplier. The vanilla Adaptive Chambering uses Firerate 1, which in context produces a firerate increase. The cohort recommendation is to test the specific Firerate value against the target weapon in single-player to confirm the behavior matches the design intent.
Can I set both Melee_Stun_Zombie_Always and Melee_Stun_Zombie_Never?
Setting both flags in the same .dat file produces contradictory configuration. The engine behavior in this case is undefined. The cohort recommendation is to set at most one of the two flags. If neither flag is set, the zombie stagger behavior follows the engine default.
How do I configure a tactical attachment that heals bleeding on melee hit?
Set Melee_Player_Damage_Bleeding Heal. When the melee attack connects with a player target, the target's bleeding status effect is removed instead of applied. This is an unusual configuration but is technically valid and can be used for med-kit-style tactical attachments in roleplay server contexts.
Appendix A: Tactical .dat quick-reference template
Copy this template for a new tactical asset. Delete fields that do not apply to the specific tactical type.
ID <50000+>
GUID <generated-uuid-no-hyphens>
Type Tactical
Name <InternalTacticalName>
Rarity <Common|Uncommon|Rare|Epic|Legendary>
Slot None
Size_X <1>
Size_Y <1>
Size_Z <0.075>
Caliber 0
<!-- Behavioral flags: add the ones you need -->
<!-- Laser -->
<!-- Laser_Color 00ff00 -->
<!-- Light -->
<!-- Spotlight -->
<!-- Rangefinder -->
<!-- Melee -->
<!-- Statistical modifiers -->
<!-- Spread 0.8 -->
<!-- Firerate 1 -->
<!-- Recoil_X 1.2 -->
<!-- Recoil_Y 1.3 -->
<!-- Melee fields (only if Melee flag is present) -->
<!-- Melee_Range 2.5 -->
<!-- Melee_Player_Damage 40 -->
<!-- Melee_Player_Leg_Multiplier 0.7 -->
<!-- Melee_Player_Arm_Multiplier 0.6 -->
<!-- Melee_Player_Spine_Multiplier 1.0 -->
<!-- Melee_Player_Skull_Multiplier 1.5 -->
<!-- Melee_Player_Damage_Bleeding Default -->
<!-- Melee_Player_Damage_Bones None -->
<!-- Melee_Zombie_Damage 50 -->
<!-- Melee_Zombie_Leg_Multiplier 0.8 -->
<!-- Melee_Zombie_Arm_Multiplier 0.7 -->
<!-- Melee_Zombie_Spine_Multiplier 1.0 -->
<!-- Melee_Zombie_Skull_Multiplier 1.5 -->
<!-- Melee_Zombie_Ragdoll_Force_Multiplier 1.0 -->
<!-- Melee_Stun_Zombie_Always -->
<!-- Melee_Animal_Damage 40 -->
<!-- Melee_Animal_Leg_Multiplier 0.8 -->
<!-- Melee_Animal_Spine_Multiplier 1.0 -->
<!-- Melee_Animal_Skull_Multiplier 1.2 -->
PaintableAppendix B: Vanilla tactical classification table
| Tactical name | ID | Behavioral flags | Statistical fields | Inventory size | Rarity |
|---|---|---|---|---|---|
| Tactical Laser | 151 | Laser | Spread 0.8 | 1x1x0.075 | Rare |
| Tactical Light | 152 | Light | None | 1x1x0.075 | Rare |
| Rangefinder | 1008 | Rangefinder | None | 1x1x0.075 | Epic |
| Bayonet | 1438 | Melee | None | 3x1x0.25 | Rare |
| Adaptive Chambering | 1007 | None | Firerate 1, Recoil_X 1.2, Recoil_Y 1.3 | 1x1x0.125 | Epic |
Appendix C: Melee-attachment field default values
| Field | Default | Valid values |
|---|---|---|
Melee_Player_Damage | 40 | Any float32 |
Melee_Player_Leg_Multiplier | 1.0 | Any float32 |
Melee_Player_Arm_Multiplier | 1.0 | Any float32 |
Melee_Player_Spine_Multiplier | 1.0 | Any float32 |
Melee_Player_Skull_Multiplier | 1.0 | Any float32 |
Melee_Player_Damage_Bleeding | Default | Always, Default, Heal, Never |
Melee_Player_Damage_Bones | None | Always, Heal, None |
Melee_Zombie_Damage | engine-default | Any float32 |
Melee_Zombie_Leg_Multiplier | 1.0 | Any float32 |
Melee_Zombie_Arm_Multiplier | 1.0 | Any float32 |
Melee_Zombie_Spine_Multiplier | 1.0 | Any float32 |
Melee_Zombie_Skull_Multiplier | 1.0 | Any float32 |
Melee_Zombie_Ragdoll_Force_Multiplier | 1.0 | Any float32 |
Melee_Zombie_Stun_Always | absent | flag |
Melee_Zombie_Stun_Never | absent | flag |
Melee_Animal_Damage | engine-default | Any float32 |
Melee_Animal_Leg_Multiplier | 1.0 | Any float32 |
Melee_Animal_Spine_Multiplier | 1.0 | Any float32 |
Melee_Animal_Skull_Multiplier | 1.0 | Any float32 |
Appendix D: External references
- Smartly Dressed Games modding documentation -- Item assets -- the authoritative field reference for all item types including tacticals.
- Unturned on Steam -- the official game page and community hub.
- Attachment Slots: Sight, Grip, Tactical, Barrel -- the prerequisite article covering the attachment slot system and caliber compatibility.
- Melee Asset -- the melee weapon field reference; the
Melee_*tactical fields share the same damage model. - Sight Asset Reference -- the previous article in this series; covers the
ItemSightAssetclass. - Item Asset Anatomy -- the shared field reference for all item types.
- Master Bundle Export -- the Unity bundling workflow used to package tactical prefabs.
- Project Folder Structure and GUIDs -- folder layout and GUID generation for all item mods.
Cross-references
- Sight Asset Reference -- the previous article; documents the
ItemSightAssetclass. - Gun Asset Reference -- the next article; covers the
ItemGunAssetclass that tactical attachments plug into. - Melee Asset -- the melee-side reference; the
Melee_*tactical fields follow the same damage model. - Gun Mod Tutorial -- the end-to-end gun mod authoring pipeline.
- Attachment Slots: Sight, Grip, Tactical, Barrel -- the slot system and caliber compatibility reference.
- Magazine Asset Reference -- the caliber linkage companion article.
- Smartly Dressed Games modding documentation -- official field reference for all tactical-specific properties.
- Unturned on Steam -- game store page and changelog.
Document history
| Version | Date | Author | Notes |
|---|---|---|---|
| 1.0 | 2026-07-26 | 57 Studios | Initial publication. Complete tactical asset .dat field reference, behavioral flags, melee subsystem, statistical modifiers, worked vanilla examples, FAQ, appendices. |
Advanced considerations
Tactical prefab geometry requirements
The tactical prefab in Unity is simpler than a sight prefab because there is no scope overlay, no aim alignment, and no distance marker system to support. The minimum structure is a root GameObject with a MeshRenderer and MeshFilter for the tactical unit's visual model. If the tactical has no visible model (a purely statistical upgrade like the Adaptive Chambering), the prefab can be an empty GameObject. The tactical unit is attached to the Hook_Tactical GameObject on the weapon prefab and inherits the hook's position and orientation.
Laser beam origin and alignment
The laser beam originates from the tactical attachment's prefab position in the world, which is determined by the Hook_Tactical GameObject position on the weapon prefab. The beam projects along the Hook_Tactical forward axis. If the laser beam does not align with the weapon's point of aim, adjust the Hook_Tactical forward axis rotation in the weapon prefab, not the tactical attachment's prefab.
Tactical attachment sound effects
Tactical attachments do not have dedicated audio fields in their .dat files. The laser, light, rangefinder, and melee subsystems use engine-internal audio for activation toggles and melee hit sounds. Custom audio requires packaging audio clips in the master bundle and scripting through the UseableGun or UseableMelee extension points, which is outside the scope of standard .dat authoring.
Tactical attachments in RP server contexts
On roleplay servers, tactical attachments often serve as faction identifiers (a red laser for one faction, a green laser for another) or as profession-gated equipment (only mechanics get rangefinders, only military get laser sights). These restrictions are enforced server-side through plugin code, not through the .dat file. The .dat should be authored with standard values reflecting the attachment's in-universe specifications.
Multi-tactical attachment servers
Some dedicated server configurations support multiple Tactical slots on a single weapon, allowing players to equip a laser and a light and a rangefinder simultaneously. This is a server-side modification and is not supported by the vanilla attachment system. Multi-tactical support requires plugin-level changes and is outside the scope of standard .dat authoring.
