Skip to content

Gear Asset Reference

The gear asset is the base class for every equippable item that appears on the player character's head or face - hats, masks, glasses, and similar cosmetics that cover or expose the player's hair and beard. The ItemGearAsset class is not instantiated directly; it is a data class that other asset types inherit from. Every hat, mask, and pair of glasses in Unturned™ draws its hair-and-beard visibility behavior from the gear asset fields documented in this article. Understanding these fields is essential for authoring cosmetics that correctly handle the player's existing hair and beard customization rather than erasing it.

57 Studios™ has documented and validated the gear asset configuration surface across the shipped vanilla cosmetic set and the broader Unturned™ modding community. This article covers every .dat field that the gear class contributes to its derived types, the inheritance chain from ItemClothingAsset through ItemGearAsset, the override material system for full-face or full-head cosmetics, and the color handling for players who do not own the Gold upgrade. The article also provides real-world .dat examples drawn from shipped vanilla cosmetics so that modders can see exactly how each field is used in practice.

A character model wearing a gas mask with hair override material visible through the mask opening

Documentation source: This article references the official Smartly Dressed Games modding documentation for field definitions and game behavior. Community-validated notes are marked where the official documentation is silent on a detail. Shipped game file examples are drawn from the vanilla Unturned™ Bundles/Items/ directory.

Who this article is for

This article is written for Unturned™ mod authors who are authoring a hat, mask, glasses, or other head-area cosmetic item and need to control whether the player's existing hair and beard customization is visible or hidden. The article assumes familiarity with the master bundle pipeline, the ItemAsset shared field set documented in Item Asset Anatomy, and the ItemClothingAsset field set documented in Clothing Asset Reference. If you have not yet worked through the project folder structure or GUID workflow, complete Project Folder Structure and GUIDs before continuing.

How the gear asset system works

The gear asset sits in the middle of the cosmetic inheritance chain. The chain from most general to most specific is: ItemAsset (the base for every item in the game) then ItemClothingAsset (adds armor, proof flags, and clothing-slot behavior) then ItemGearAsset (adds hair and beard visibility and material overrides) then the concrete types ItemHatAsset, ItemMaskAsset, and ItemGlassesAsset (each of which adds type-specific fields such as vision mode or gas filter support).

This inheritance structure means that every hat, mask, and glasses asset in the game reads its hair-and-beard behavior from the same gear asset fields. A hat uses Beard to control whether the player's beard is visible around the hat brim; a mask uses Hair and Beard together to control whether hair and beard poke through the mask; a pair of glasses uses both flags to leave the hair and beard fully visible beneath the eyewear.

As shown in the flowchart above, the gear class fields flow down to every head-area cosmetic type. Not every concrete type uses every gear field, but every concrete type reads from the same gear class definition.

The inheritance difference from ItemClothingAsset

The ItemGearAsset class inherits from ItemClothingAsset but overrides the behavior of two inherited fields: Beard_Visible and Hair_Visible. In the base ItemClothingAsset class, the Beard_Visible and Hair_Visible fields directly control whether the player's beard and hair are rendered. In the gear class, these inherited fields are replaced by the Beard and Hair flags, which work differently. When the Beard flag is present in the .dat, the character's beard is visible; when absent, the beard is hidden. The same logic applies to the Hair flag and the character's hair. This redefinition is the principal design difference between the gear class and the base clothing class.

Complete .dat field reference

The gear asset contributes six fields to the .dat of every hat, mask, and glasses item. All six fields are optional; omitting them hides the corresponding character feature.

Visibility control fields

FieldTypeExamplePurpose
BeardflagBeardWhen present, the character's facial hair is visible. When absent, the beard is hidden regardless of the player's beard customization.
HairflagHairWhen present, the character's scalp hair is visible. When absent, the hair is hidden regardless of the player's hair customization.

Both fields are bare flags - they take no value. Their presence in the .dat file is sufficient to enable the corresponding feature. The flags operate independently: a mask can hide the hair but show the beard, or show the hair but hide the beard, or show both, or hide both.

The game files confirm the pattern. A gas mask typically hides the hair and beard both (Beard and Hair absent). A bandana hides the beard but shows the hair (Hair present, Beard absent). A pair of sunglasses shows both hair and beard (Hair and Beard both present). A full-face balaclava hides both (Hair and Beard both absent).

Vanilla mask examples showing the flag distribution:

  Bandana_Black.dat:
    Type Mask
    ...
    Hair
    // Beard flag absent - bandana covers the jaw, beard hidden

  Balaclava_Black.dat:
    Type Mask
    ...
    // Both Hair and Beard absent - full face covering, everything hidden

  Gasmask.dat:
    Type Mask
    Useable Clothing
    ...
    Hair
    Beard
    // Both present - gas mask leaves hair and beard partially visible

  Arid_Arrowhead.dat:
    Type Mask
    ...
    Hair
    Beard
    // Both present - face paint style cosmetic shows everything

Override material fields

When a cosmetic entirely covers the player's hair or beard region but the modder wants the player's chosen hair or beard color to still affect the appearance, the override material system provides a way to apply the player's skin tone or hair color to a specific mesh child of the cosmetic prefab.

FieldTypeExamplePurpose
Beard_OverridestringBeard_Override Model_1The name of a child Mesh Renderer in the Unity prefab whose material will be replaced with the character's beard hair material. When this property is set, the game looks for the named child component and swaps its material to match the player's selected beard color.
Beard_Override_NonGoldColorColor hexBeard_Override_NonGoldColor #213D91The beard material color for players who do not have the Gold upgrade. Gold players have full RGB color control over their beard; non-Gold players see this fallback color. Also used as the preview color in the cosmetic menu.
Hair_OverridestringHair_Override Model_0The name of a child Mesh Renderer in the Unity prefab whose material will be replaced with the character's hair material. Same behavior as Beard_Override but for the scalp hair region.
Hair_Override_NonGoldColorColor hexHair_Override_NonGoldColor #6c95b7The hair material color for players without the Gold upgrade. Fallback color and cosmetic preview color.

The override material fields solve a specific design problem: a cosmetic item that covers the head or face area (a full headpiece, a mask with hair slots) may include a hair-like mesh as part of its prefab. Without material override, that mesh would always render with the cosmetic's authored material, ignoring the player's customized hair or beard color. With material override, the game swaps the cosmetic mesh's material to the player's hair or beard material, so the cosmetic appears in the player's chosen colors.

The shipped game files show this pattern in several cosmetics. The Elver mask EI_Make_Make uses Hair_Override Model_1 and Hair_Override_NonGoldColor #213D91. The Christmas hat XMAS_Took uses Hair_Override Model_1 and Hair_Override_NonGoldColor #6c95b7. The Molt hat Molt_Hair uses Hair_Override Model_0 and has a Beard flag present but no Beard_Override.

Real examples from vanilla game files:

  EI_Make_Mask.dat (Mask):
    ...
    Hair_Override Model_1
    Hair_Override_NonGoldColor #213D91

  XMAS_Took.dat (Hat):
    ...
    Beard
    Hair_Override Model_1
    Hair_Override_NonGoldColor #6c95b7

  Molt_Hair.dat (Hat):
    ...
    Pro
    Beard
    Hair_Override Model_0
    // Hair_Override_NonGoldColor absent - uses default

Field type reference

FieldData typeValid valuesDefaultInvalid input behavior
BeardflagPresent or absentAbsent (beard hidden)N/A
HairflagPresent or absentAbsent (hair hidden)N/A
Beard_OverridestringValid child Mesh Renderer name in prefabNo overrideOverride silently ignored; beard material not swapped
Beard_Override_NonGoldColorhex colorSix-digit hex with # prefixDefault grayColor falls back to default gray on parse failure
Hair_OverridestringValid child Mesh Renderer name in prefabNo overrideOverride silently ignored; hair material not swapped
Hair_Override_NonGoldColorhex colorSix-digit hex with # prefixDefault grayColor falls back to default gray on parse failure

Asset type mapping

The following table shows which concrete asset types use which gear fields. The information is drawn from shipped vanilla game files.

Asset typeUses BeardUses HairUses Beard_OverrideUses Hair_OverrideNotes
HatYesRarelyNoYes (full-head hats)Most hats hide the beard by default. Hats that include hair meshes use Hair_Override.
MaskYesYesRarelyYes (full-face masks)Masks independently control hair and beard visibility. Full-head masks use overrides.
GlassesYesYesNoNoGlasses almost always leave both hair and beard visible. No override fields observed in shipped files.
VestNoNoNoNoVests do not interact with hair or beard rendering.
BackpackNoNoNoNoBackpacks do not interact with hair or beard rendering.
ShirtNoNoNoNoShirts do not interact with hair or beard rendering.
PantsNoNoNoNoPants do not interact with hair or beard rendering.

The asset type mapping is empirical rather than enforced; the engine does not prevent a modder from placing Beard or Hair on a vest .dat. However, doing so has no effect because the vest slot does not influence the head region rendering. The peer-reviewed recommendation is to use gear fields only on hat, mask, and glasses items.

Worked example: complete mask with hair override

The following .dat example represents a custom mask that covers the lower face (showing hair but hiding the natural beard) and uses a hair override to apply the player's hair color to a hair-like mesh that is part of the mask prefab.

ID 51000
GUID e7a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d
Type Mask
Useable Clothing
Name CustomScarfMask

Rarity Uncommon
Slot Mask
Size_X 2
Size_Y 2

Hair

Hair_Override HairMesh
Hair_Override_NonGoldColor #4a3728

Pro False
Bypass_ID_Limit True

The Hair flag ensures the player's scalp hair is visible above the mask. The Hair_Override HairMesh field tells the engine to look for a child Mesh Renderer named HairMesh in the Unity prefab and to swap its material to the player's hair material. The Hair_Override_NonGoldColor #4a3728 provides a dark brown fallback for players without the Gold upgrade.

Companion English.dat:

Name Custom Scarf Mask
Description A scarf-style mask with an adjustable opening that leaves the top of the head exposed. The player's hair color is used for the fabric top.

The override pattern described here requires that the Unity prefab contain a child GameObject with a Mesh Renderer whose name matches the override string. If the prefab does not contain a child with that name, the override is silently ignored - the cosmetic still loads and functions, but the material swap does not occur.

Worked example: simple hat with beard visibility

The following .dat example represents a custom hat that hides the hair (covering the entire scalp) but shows the player's beard. This is the standard configuration for a wide-brimmed hat or helmet that leaves the jaw exposed.

ID 51001
GUID f8b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6
Type Hat
Name CustomWideBrimHat

Rarity Common
Slot Hat
Size_X 2
Size_Y 2

Beard

Pro False
Bypass_ID_Limit True

The Beard flag is the only gear field present. The hair is hidden (no Hair flag), and the beard is shown. No override fields are needed because the hat does not include a hair or beard mesh in its prefab.

Companion English.dat:

Name Wide-Brim Hat
Description A broad hat that covers the top of the head entirely while leaving the wearer's beard and jaw exposed.

Worked example: glasses with full visibility

Glasses typically leave both hair and beard fully visible. The following .dat example shows a standard pair of glasses with both visibility flags present.

ID 51002
GUID 09c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7
Type Glasses
Name CustomAviators

Rarity Uncommon
Slot Glasses
Size_X 2
Size_Y 1

Hair
Beard

Pro False
Bypass_ID_Limit True

Both Hair and Beard are present, preserving the player's full hair and beard customization. Glasses do not typically use override fields because they do not include hair-like meshes in their prefabs.

Companion English.dat:

Name Custom Aviators
Description Aviator-style sunglasses with gold frames. Leaves hair and beard fully visible.

Worked example: full-face cosmetic with override fields

The following .dat example shows a full-face mask that covers the player's entire head but includes a hair-like mesh as part of the prefab, using overrides to apply the player's hair color.

ID 51003
GUID 1a0d4e5f6a7b8c9d0e1f2a3b4c5d6e7f
Type Mask
Name CustomFullHeadMask

Rarity Epic
Slot Mask
Size_X 2
Size_Y 2

Hair_Override Model_Hair
Hair_Override_NonGoldColor #2a1e0f
Beard_Override Model_Beard
Beard_Override_NonGoldColor #2a1e0f

Pro False
Bypass_ID_Limit True

Note that neither the Hair flag nor the Beard flag is present. The player's natural hair and beard are hidden by the mask. The override fields apply the player's chosen hair and beard colors to the prefab's internal hair and beard meshes, so the cosmetic appears in the player's colors rather than the author's authored palette.

Companion English.dat:

Name Custom Full-Head Mask
Description A full-head mask that completely covers the face and scalp. The player's hair and beard color are applied to the mask's integrated hair and beard sculpt.

The Gold upgrade and color handling

The Gold upgrade (also called PRO status) is a Steam purchase that unlocks full RGB color control for character customization. Players without Gold see a restricted set of preset colors for their hair and beard. The Beard_Override_NonGoldColor and Hair_Override_NonGoldColor fields provide the fallback color that non-Gold players see on override-material cosmetics.

For Gold players, the override material uses the player's exact RGB color selection. For non-Gold players, the override material uses the color specified by the NonGoldColor field. If the NonGoldColor field is absent, the override material uses a default gray color, which may not match the intended design.

The cohort recommendation for Workshop mods is to always provide a sensible NonGoldColor value for any cosmetic that uses an override field. The fallback color should match what the cosmetic looks like with common preset hair or beard colors. A dark brown (#3d2817) or dark blonde (#8b7355) works well as a generic fallback for most skin tones and hair colors.

Gear fields on non-head cosmetics

It is technically possible to add Beard or Hair flags to a vest, backpack, shirt, or pants .dat. The parser accepts the fields without error because unknown fields are silently ignored, and the gear fields are only relevant when the runtime renders the character model's head region. A vest with Hair present does nothing because the vest slot does not control head visibility.

The peer-reviewed recommendation is to include gear fields only on hat, mask, and glasses .dat files. Including them on other clothing types is harmless but misleading to other developers who may read the .dat and assume the fields have an effect.

Interaction with cosmetic layering

When a player wears multiple head-area cosmetics simultaneously (a hat over a mask, or glasses with a hat), the gear fields from each cosmetic interact through the game's layering system. The general rule is that each slot independently controls its own visibility region. A hat controls the top of the head (hair region). A mask controls the face and jaw region (beard region and sometimes hair overlap). Glasses control the eye region and do not typically affect hair or beard visibility.

The practical implication for mod authors is that a mask that hides the hair (Hair flag absent) will hide the player's hair even if the player is also wearing a hat that shows the hair (Hair flag present). The mask's hair visibility takes precedence for the face region, but the hat's hair visibility takes precedence for the top of the head. In practice, the two slot systems are independent, and the renderer composites the visible features from both slots.

Field authoring checklist

Use this checklist before testing a head-area cosmetic that uses gear fields.

  • [ ] Beard flag is present if the player's beard should be visible through or around the cosmetic.
  • [ ] Hair flag is present if the player's scalp hair should be visible through or around the cosmetic.
  • [ ] If a hair- or beard-like mesh is part of the prefab, Hair_Override or Beard_Override is set to the exact child Mesh Renderer name.
  • [ ] If an override field is used, the corresponding NonGoldColor field provides a sensible fallback for non-Gold players.
  • [ ] The Unity prefab contains a child GameObject with a Mesh Renderer whose name matches the override string exactly, including capitalization.
  • [ ] The cosmetic has been tested in-game with both hair and beard visible and hidden to confirm the visibility flags behave as intended.
  • [ ] The cosmetic has been tested on a non-Gold account to confirm override materials display the fallback color.
  • [ ] The cosmetic has been tested in combination with other head-area cosmetics (hat + mask, glasses + mask) to confirm layering behavior.
  • [ ] English.dat is authored with a description that notes whether the cosmetic hides or shows the player's hair and beard.

Diagnostic table

SymptomMost likely causeResolution
Player's hair is invisible when wearing the cosmeticHair flag absent from .datAdd the Hair flag
Player's beard is invisible when wearing the cosmeticBeard flag absent from .datAdd the Beard flag
Override material shows default gray instead of player's hair colorNonGoldColor field absentAdd Hair_Override_NonGoldColor or Beard_Override_NonGoldColor with a sensible hex value
Override material does not change at allOverride string does not match a child Mesh Renderer name in the prefabOpen Unity prefab, confirm the exact name of the child mesh, update the override string to match
Cosmetics with overrides look different in preview than in-gamePreview uses the NonGoldColor value; in-game uses player's actual color for Gold playersThis is expected behavior. Test on a non-Gold account to confirm preview matches runtime.
Hair or beard visible through a cosmetic that should cover themHair or Beard flag present when it should be absentRemove the flag from the .dat
Override material looks wrong on non-Gold accountsNonGoldColor value is a poor match for common preset hair colorsChoose a neutral dark or medium brown that works across common presets
Two cosmetics cause hair or beard to flicker at render timeSlot overlap conflict in a mod with custom slot logicVerify the cosmetics are assigned to different slots (Hat, Mask, Glasses)
Cosmetic appears with hair or beard in different color than expectedOverride string pointing to the wrong child meshVerify the correct child name in Unity
Hair override applies but at wrong positionOverride child mesh pivot offset incorrect in UnityAdjust the child mesh transform in the Unity prefab
Gold player's hair color not applying to overrideHair_Override string correctly set but prefab hierarchy changed in bundle rebuildConfirm the prefab in the final .unity3d bundle still contains the child with the expected name

Frequently asked questions

What is the difference between Beard and Beard_Visible?

The Beard flag on the gear class replaces the Beard_Visible flag inherited from ItemClothingAsset. When the gear class is used, the Beard flag controls visibility; the inherited Beard_Visible field is ignored. This redefinition is specific to the gear class and does not apply to non-gear clothing types.

Why would I use Beard_Override instead of a static beard mesh?

A static beard mesh would always render in the authored color, ignoring the player's customization choices. The override system swaps the material to the player's chosen beard color dynamically at load time. If the cosmetic should always show the same beard color regardless of the player's customization, use a static material and do not include the override field.

Can I use both Beard and Beard_Override at the same time?

Yes. The Beard flag controls whether the player's natural beard is visible. The Beard_Override field controls whether a specific child mesh in the prefab has its material swapped to the beard material. Both can be present simultaneously. A cosmetic could show the player's natural beard (via the Beard flag) while also swapping material on a cosmetic beard mesh (via Beard_Override).

What happens if I omit the Hair flag on a hat?

The player's scalp hair is hidden while the hat is equipped. This is the intended behavior for most hats and helmets - they cover the top of the head. If the hat is a partial headpiece (a crown, a wreath, a hair accessory), include the Hair flag to leave the hair visible.

Do glasses need the Hair and Beard flags?

Yes, if the glasses should leave hair and beard visible. Almost every pair of glasses in the shipped game files includes both Hair and Beard because glasses do not cover enough of the face or head to hide those features. The only exception would be a visor-style glasses cosmetic that is large enough to cover the hairline.

What does a non-Gold player see without NonGoldColor fields?

The override material uses a default gray color. This default gray is not typically a good match for any hair or beard color, so the cosmetic will look visually incorrect on non-Gold accounts. Always provide a NonGoldColor value that matches a common hair or beard preset.

Can I use the override system for materials other than hair and beard?

The override system is specifically designed for hair and beard materials. The engine identifies child renderers by name and swaps their material to the player's hair or beard material asset (which is stored in the player's character data). Using the field name for a different material type will not produce the intended effect - the engine will attempt to swap the hair/beard material onto the child mesh, not a custom material of the modder's choice.

How do I find the exact child name to use in Beard_Override or Hair_Override?

Open the cosmetic's Unity prefab in the Unity Editor. Expand the hierarchy until you find the child GameObject that contains the hair or beard mesh. Note the exact name of that GameObject, including capitalization and any leading spaces. Enter that name exactly in the override field. Case sensitivity matters because the engine performs a direct string comparison.

Can the same cosmetic have both Beard_Override and Hair_Override?

Yes. A full-head cosmetic can have both overrides pointing to different child meshes within the same prefab. The EI_Make_Make mask in the shipped game files uses Hair_Override on one child but does not use Beard_Override; a cosmetic that covers the entire head could use both independently.

Choose a color that approximates a neutral human hair color. Dark brown (#3d2817), medium brown (#5a3d2b), and dark blonde (#8b7355) are safe defaults that look reasonable across most skin tones and preset hair colors. Avoid extremely light or extremely saturated colors because they will look wrong on most non-Gold characters who are using preset hair colors.

Do override fields affect performance?

The material swap occurs once at load time, when the cosmetic is first equipped. There is no per-frame performance cost. The override fields add no measurable performance overhead to the game at runtime.

Can a cosmetic use Hair_Override without the Hair flag?

Yes. The two fields are independent. A cosmetic that completely covers the natural hair (no Hair flag) can still use Hair_Override to apply the player's hair color to a cosmetic hair mesh that is part of the prefab. This is the correct configuration for a full-head mask that includes an integrated hair sculpt.

Why does my override work in the Unity Editor but not in-game?

The most common cause is a mismatch between the child Mesh Renderer name in the Unity Editor scene and the name of the renderer in the built asset bundle. Confirm that the bundle was built from the same scene that contains the correctly-named child. The second most common cause is a typo in the .dat field - a missing capital letter or an extra space will cause the string comparison to fail silently.

What happens if two cosmetics both have conflicting override fields?

Each cosmetic's override fields apply independently to that cosmetic's prefab. Cosmetic A's Hair_Override applies to Cosmetic A's prefab child meshes; Cosmetic B's Hair_Override applies to Cosmetic B's prefab child meshes. There is no conflict because the overrides operate on different prefab instances. The layering of the two visual models is handled by the Unity rendering pipeline.

Best practices

  • Always include the Beard and Hair flags explicitly on every hat, mask, and glasses cosmetic. Do not rely on the default-absent behavior - document the intended visibility in the .dat so other developers reading the file know the intent.
  • Use Hair_Override and Beard_Override for any cosmetic that includes a hair-like or beard-like mesh in its prefab. A static-colored beard mesh on a cosmetic will look out of place when the player has a different hair or beard color configured.
  • Always provide a NonGoldColor value alongside any override field. Default gray fallback looks incorrect on non-Gold accounts and creates a poor first impression for players who encounter the cosmetic.
  • Test every head-area cosmetic with both hair and beard hidden in the character creator and with both visible. The combination of hide/show flags and override fields produces four visual states; confirm all four are acceptable.
  • Name child mesh renderers in the Unity prefab using descriptive, collision-free names (HairMesh, BeardMesh, FringeMesh) that are unlikely to overlap with names used by other mods.
  • Document in the Workshop description whether the cosmetic hides or shows the player's hair and beard. Players make purchase and equip decisions based on appearance; unexpected hair or beard hiding is a common source of negative feedback.
  • When authoring a mod series with multiple cosmetics, keep the gear field pattern consistent within the series so that players know what to expect from each cosmetic in the set.

Prefab structure for cosmetics with override materials

A cosmetic that uses override materials requires a child Mesh Renderer in the Unity prefab at a known path. The minimum prefab structure for a cosmetic with hair override is:

CustomMaskPrefab (root, with UseableClothing script)
├── Body (MeshRenderer + MeshFilter - main cosmetic mesh)
├── HairMesh (MeshRenderer + MeshFilter - hair region mesh, material will be swapped)
└── Animator (optional, if the cosmetic has animated parts)

The child HairMesh must have a Mesh Renderer component and a material assigned. The engine swaps the material on this specific child to the player's hair material when the cosmetic is equipped. The original material assigned in the prefab is replaced; the child's mesh geometry remains unchanged.

The same pattern applies for beard overrides with a child named to match the Beard_Override string.

CustomMaskPrefab (root)
├── Body (main mask mesh)
├── HairMesh (hair region - material swapped via Hair_Override)
├── BeardMesh (beard region - material swapped via Beard_Override)
└── Animator

Each child must be a direct descendant of the prefab root or at a path relative to the root that the match string can identify. In practice, the override string matches the child's GameObject name exactly, so the child should be at the root level of the prefab hierarchy or at a consistent path that the modder documents.

Appendix A: Gear .dat field quick reference

FieldTypePurpose
BeardflagWhen present, player's beard is visible
HairflagWhen present, player's hair is visible
Beard_OverridestringChild Mesh Renderer name for beard material swap
Beard_Override_NonGoldColorhex colorBeard material fallback for non-Gold players
Hair_OverridestringChild Mesh Renderer name for hair material swap
Hair_Override_NonGoldColorhex colorHair material fallback for non-Gold players

Appendix B: Vanilla cosmetic hair and beard visibility reference

The following table documents the hair and beard visibility configuration of representative vanilla cosmetics. Modders can use this table as a reference when deciding which flags to set on their own cosmetics.

CosmeticTypeHairBeardOverride flagsNotes
AntlersMaskHairBeardNoneHeadband-style, everything visible
Arid ArrowheadMaskHairBeardNoneFace paint style
Balaclava BlackMask--NoneFull face covering, everything hidden
Bandana BlackMaskHair-NoneCovers lower face only
Biohazard HoodMask--NoneFull head covering, radiation proof
GasmaskMaskHairBeardNonePreserves partial visibility
EI Make MakeMask--Hair_OverrideFull head mask with hair override
XMAS TookHat-BeardHair_OverrideWinter hat with integrated hair
Anniversary BlueHat-BeardNoneStandard hat hides hair
Engineer HatHat-BeardNoneHard hat style
HeadlampGlassesHairBeardNoneStandard glasses pattern
Nightvision MilitaryGlassesHairBeardNoneGoggles style
3D GlassesGlassesHairBeardNoneStandard eyewear

Appendix C: External references

Advanced considerations

Layering gear fields across multiple cosmetics

When a player equips a hat, a mask, and glasses simultaneously, each cosmetic independently controls its own hair and beard visibility through its .dat fields. The engine composites the visible regions from all three slot cosmetics. A hat that hides hair will hide the scalp hair; a mask that shows hair will show hair on the face region; glasses that show hair have no effect because the eye region does not overlap with the hair scalp region. The composite result is that hair is shown where no cosmetic covers it and hidden where any cosmetic covering that region hides it.

This compositing is not something the modder controls through fields; it is a behavior of the Unturned™ character rendering system. The modder's responsibility is to set the correct visibility flags for their cosmetic in isolation. The engine handles the composite interaction.

Gear fields and the cosmetic preview system

The cosmetic preview system (the character preview shown in the equipment menu and Steam inventory) uses the same gear fields as the in-game rendering. A cosmetic with Hair present will show hair in the preview; a cosmetic without Hair will hide it. The preview also respects the NonGoldColor fields for override materials, which is why non-Gold players see the fallback color in the preview while Gold players see their actual RGB color.

Override materials and asset bundle references

The override material swap uses the player's hair or beard material asset, which is stored in the player's character data and resolved from the game's material asset registry. The modder does not need to include a hair or beard material in their asset bundle. The engine finds the correct material by looking up the player's equipped hair and beard customization GUIDs at the time the cosmetic is equipped and applying the corresponding materials to the override meshes.

Authoring cosmetics for roleplay servers

On roleplay (RP) servers such as Horizon Life RP - a 57 Studios™ development context - cosmetic appearance is often governed by server rules about character presentation. A full-face mask that hides all hair and beard may be restricted to specific factions or professions. The .dat fields should reflect the cosmetic's intended appearance; the server's plugin system handles access control separately.

Cross-references

Document history

VersionDateAuthorNotes
1.02026-07-2657 StudiosInitial publication. Full gear asset .dat field reference, inheritance chain, override material system, worked examples from shipped game files, FAQ, diagnostic tables.