Blueprints

Blueprints can be added to items. These function as “crafting recipes”, which allow players to craft other items, or even modify the state of the current item. Blueprints are not restricted to affecting the item they have been added to, and a blueprint’s inputs and outputs can consist entirely of unrelated items.

Context actions are able to reference blueprints. Depending on the type of blueprint added to the item, the game may automatically generate a corresponding context action as well.

Game Data File

The Blueprints, Blueprint_#_Type, Blueprint_#_Supplies, and Blueprint_#_Supply_#_ID properties are required by all blueprints. Blueprints also require that an output has been configured.

There are two methods available for configuring an output. When a blueprint only needs to output one item ID, the Blueprint_#_Products and Blueprint_#_Product properties can be used. Alternatively, blueprints can use the Blueprint_#_Outputs, Blueprint_#_Output_#_ID, and Blueprint_#_Output_#_Amount properties to output multiple, different item IDs.

It is very common that a blueprint will also use the Blueprint_#_Build, Blueprint_#_Tool, or Blueprint_#_Skill properties. Other properties for blueprints have more niche uses, and are less common.

Properties

Property Name

Type

Default Value

Blueprint_#_Build

GUID or uint16

Blueprint_#_Level

uint8

0

Blueprint_#_Map

string

Blueprint_#_Origin

EItemOrigin

Craft

Blueprint_#_Output_#_Amount

uint8

0

Blueprint_#_Output_#_ID

uint16

0

Blueprint_#_Output_#_Origin

EItemOrigin

Craft

Blueprint_#_Outputs

uint8

0

Blueprint_#_Product

uint16

See description

Blueprint_#_Products

uint8

1

Blueprint_#_Searchable

bool

true

Blueprint_#_Skill

EBlueprintSkill

None

Blueprint_#_State_Transfer

flag

Blueprint_#_State_Transfer_Delete_Attachments

bool

false

Blueprint_#_Supplies

uint8

0

Blueprint_#_Supply_#_AllowEmpty

bool

false

Blueprint_#_Supply_#_Amount

uint8

0

Blueprint_#_Supply_#_Critical

flag

Blueprint_#_Supply_#_ID

uint16

Blueprint_#_Supply_#_Prioritization

enum

Blueprint_#_Tool

uint16

0

Blueprint_#_Tool_Critical

flag

Blueprint_#_Type

EBlueprintType

Blueprints

uint8

0

EBlueprintType Enumeration

Named Value

Description

Ammo

Blueprint appears in the “Ammunition” tab.

Apparel

Blueprint appears in the “Apparel” tab.

Barricade

Blueprint appears in the “Barricades” tab.

Furniture

Blueprint appears in the “Furniture” tab.

Gear

Blueprint appears in the “Gear” tab.

Repair

Blueprint appears in the “Repair” tab.

Structure

Blueprint appears in the “Structures” tab.

Supply

Blueprint appears in the “Supplies” tab.

Tool

Blueprint appears in the “Tools” tab.

Utilities

Blueprint appears in the “Utilities” tab.

EBlueprintSkill Enumeration

Named Value

Description

None

No skill is required.

Craft

“Crafting” skill is required.

Cook

“Cooking” skill is required.

Repair

“Engineer” skill is required.

Property Descriptions

Blueprint_#_Build GUID or uint16

GUID or legacy ID of an audio effect to play upon crafting.


Blueprint_#_Level uint8 0

If the blueprint requires a skill, its level must be equal to this value. This property is used in conjunction with Blueprint_#_Skill.


Blueprint_#_Map string

Name of a map that this blueprint is restricted to. The blueprint will only be visible while on this map. For other maps, the blueprint is hidden from view.


Blueprint_#_Origin EItemOrigin Craft

Set the item origin. For example, setting the origin to Admin will cause items to spawn at full quality. This property requires Blueprint_#_Product.


Blueprint_#_Output_#_Amount uint8 0

Quantity of the product created. For example, a quantity value of 2 would create two of the item specified in Blueprint_#_Output_#_ID.


Blueprint_#_Output_#_ID uint16 0

Legacy ID of an item created as a product (i.e., an output that is provided after crafting the blueprint). This property requires Blueprint_#_Outputs.


Blueprint_#_Output_#_Origin EItemOrigin Craft

Set the item origin. For example, setting the origin to Admin will cause items to spawn at full quality. This property requires Blueprint_#_Output_#_ID.


Blueprint_#_Outputs uint8 0

Total number of Blueprint_#_Output_#_ID properties that have been configured.


Blueprint_#_Product uint16

Legacy ID of the item created as the product (i.e., an output that is provided after crafting the blueprint). To output multiple different items, refer to the Blueprint_#_Outputs and Blueprint_#_Output_#_ID properties instead.

When left unconfigured, this property will default to the value of the parent item’s ID value.


Blueprint_#_Products uint8 1

Quantity of the product created. For example, a quantity value of 2 would create two of the item specified in Blueprint_#_Product. This property requires that Blueprint_#_Product has been set.


Blueprint_#_Searchable bool true

When true, this blueprint is visible in the search results even when the player lacks the required items. This property can be used to hide blueprints intended for debugging that are not acquirable through normal gameplay.


Blueprint_#_Skill EBlueprintSkill None

The player must have leveled the specified skill in order to craft this blueprint. When set to Cook, the player will also need to be next to a heat source (such as a lit Campfire). This property is used in conjunction with Blueprint_#_Level.


Blueprint_#_State_Transfer flag

Transfer the current state of any supplies to the product, when applicable. For example, some states that can be transferred include: amount (e.g., rounds in an ammunition box), quality percentage, selected firing mode, or fuel units (e.g., from a gas can).


Blueprint_#_State_Transfer_Delete_Attachments bool false

If true and State_Transfer is enabled, any output guns will have all of their attachments deleted.


Blueprint_#_Supplies uint8 0

Total number of Blueprint_#_Supply_#_ID properties that have been configured.


Blueprint_#_Supply_#_AllowEmpty bool false

If true, items with an “amount” of zero—such as empty magazines—are treated as an amount of one. In vanilla this is used to enable salvaging empty magazines.


Blueprint_#_Supply_#_Amount uint8 0

Quantity of the supply required. For example, a quantity value of 2 would require two of the item specified in Blueprint_#_Supply_#_ID.


Blueprint_#_Supply_#_Critical flag

The blueprint is only visible while the player has this supply. This property requires Blueprint_#_Supply_#_ID.


Blueprint_#_Supply_#_ID uint16

Legacy ID of an item that is required as a supply (i.e., an input that is consumed when crafting the blueprint). This property requires Blueprint_#_Supplies.

This property can also be set to a string value of this, which will use the the owning item’s legacy ID. Useful for salvaging blueprints to avoid accidentally writing the wrong ID.


Blueprint_#_Supply_#_Prioritization enum

Controls which items are used first. Can be set to LowestAmount or LowestQuality.

  • LowestAmount sorts items by their amount (e.g., number of bullets in magazine) from lowest to highest, and consumes the emptiest ones first.

  • LowestQuality sorts items by their quality from lowest (0%) to highest (100%), and consumes those nearest 0% first.

AMMO type blueprints default to LowestAmount, otherwise defaults to LowestQuality.


Blueprint_#_Tool uint16 0

Legacy ID of an item that is required as a “tool” for this blueprint. This item is not consumed when the blueprint is crafted.


Blueprint_#_Tool_Critical flag

If the blueprint requires a tool, it will only be visible while the player has that tool. This property requires Blueprint_#_Tool.


Blueprint_#_Type EBlueprintType

This value determines which tab of the crafting menu that this blueprint appears under. All blueprints require that this has been configured.


Blueprints int 0

Total number of blueprints. All blueprints require that this has been configured.

Conditions and Rewards

Blueprints can use quest conditions and rewards. A common usage is to make it so a blueprint is only available during a seasonal event. For more information, refer to the documentation for Conditions and Rewards respectively.

Blueprint conditions and rewards are prefixed with Blueprint_#_. For example, Blueprint_0_Condition_0_Type Holiday.

Game Data File v2

Warning

Under construction! We might move this to a different page.

The game can auto-convert most blueprints to this new format! For more information, please refer to the ResaveAssets launch option.

Starting with version 3.25.5.0, Blueprints can be specified as a list rather than prefixing each property with Blueprint_#_. For example:

Blueprints
[
        {
                // First blueprint properties
        }
        {
                // Second blueprint properties
        }
]

Each blueprint dictionary has the following properties:

Properties

Property Name

Type

Default Value

CategoryTag

Asset Pointer to Tag Assets

Conditions

Conditions

Effect

Asset Pointer to Effect Assets

InputItems

list of Blueprint Input Items

Map

string

""

Name

string

""

Operation

EBlueprintOperation

None

OutputItems

list of Blueprint Output Items

RequiresNearbyCraftingTags

list of Asset Pointer to Tag Assets

Rewards

Rewards

Searchable

bool

true

Skill

EBlueprintSkill

None

Skill_Level

int32

0

StateTransfer

bool

false

StateTransfer_DeleteAttachments

bool

false

Type

EBlueprintType

Deprecated.

VisibleWithUnmetConditions

bool

false

EBlueprintOperation Enumeration

Named Value

Description

None

No special modification.

RepairTargetItem

Restore target item to full quality.

FillTargetItem

Transfer amount from first input item to target item.


CategoryTag Asset Pointer to Tag Assets

Determines which category the blueprint appears under in the crafting menu. Enables the creation of custom categories.

This replaces the Type property which acted as both a hardcoded category and modified behavior of crafting.


Conditions Conditions

NPC conditions which must be met before the blueprint can be crafted.

Note

By default, the blueprint will be hidden until all of the conditions are met. If you have configured display text for your conditions you can enable VisibleWithUnmetConditions.


Effect Asset Pointer to Effect Assets

An effect to play upon successfully crafting.


InputItems list of Blueprint Input Items

Required ingredients/supplies needed to craft this blueprint.


Map string ""

Name of a map that this blueprint is restricted to. The blueprint will only be visible while on this map. For other maps, the blueprint is hidden from view.


Name string ""

Optional case-sensitive identifier in list of blueprints. Can be used, for example, to reference this blueprint from a context menu action or a list of prohibited blueprints.


Operation EBlueprintOperation None

Controls what blueprint does with input items.


OutputItems list of Blueprint Output Items

Items created by this blueprint.


RequiresNearbyCraftingTags list of Asset Pointer to Tag Assets

Tag Assets that must be available from nearby crafting tag providers (workstations).

For example, to require both Chemical Mixing and Workbench:

RequiresNearbyCraftingTags
[
        // Chemical Mixing
        99896da563a748148460c67b9962874f

        // Workbench
        7b82c125a5a54984b8bb26576b59e977
]

Rewards Rewards

NPC rewards granted when crafting this blueprint.


Searchable bool true

When true, this blueprint is visible in the search results even when the player lacks the required items. This property can be used to hide blueprints intended for debugging that are not acquirable through normal gameplay.


Skill EBlueprintSkill None

The player must have leveled the specified skill in order to craft this blueprint. This property is used in conjunction with Skill_Level.


Skill_Level int32 0

If the blueprint requires a skill, its level must be greater than or equal to this value. This property is used in conjunction with Skill.


StateTransfer bool false

Transfer the current state the first input item to the product, when applicable. For example, some states that can be transferred include: amount (e.g., rounds in an ammunition box), quality percentage, selected firing mode, or fuel units (e.g., from a gas can).


StateTransfer_DeleteAttachments bool false

If true and StateTransfer is enabled, any output guns will have all of their attachments deleted.


Type EBlueprintType

Should not be used. Type acted as both a hardcoded category and modified behavior of crafting. These have been separated into the CategoryTag and Operation properties instead.


VisibleWithUnmetConditions bool false

If true, blueprint can become visible in the crafting list even when NPC conditions are not met. This should typically only be enabled if all conditions are configured to be visible in the details panel. Otherwise, the default “conditions unmet” label isn’t very informative for players.