component CraftRecipe#

Hierarchy#

Valid Parent Blocks:

Required Child Blocks:

Possible Child Blocks:

ID Properties#

This block should not have an ID.

Parameters#

category#

(see category)

Type:

Any

The category under which the recipe will be listed in the crafting menu. Helps to organize and identify recipes in the crafting menu. Currently doesn’t support translations (confirmed last 42.15).

NeedToBeLearn#

Type:

Any

Whether the recipe needs to be learned before it can be crafted.

OnAddToMenu#

Type:

Any

No description

OnCreate#

(see OnCreate)

Type:

Any

The OnCreate parameter allows the referencing of a Lua function that will be called when the crafting recipe is finished. This can be used to add custom behavior to the crafting recipe when it gets finished. The Lua function needs to be a global function#Local_and_global), it can also be in a global table. The vanilla game OnCreate’s are stored in the Java.

The function should have the following structure:

function MyOnCreateFunction(craftRecipeData, character)
    -- your custom code here
end

The craftRecipeData is a java object that contains the data of the crafting recipe. The character is the player character who is crafting the recipe.

SkillRequired#

Type:

Any

Specifies the skill level required to perform this crafting action. It should be formated this way:

/* a single skill */
skillRequired = <skill name>:<level>,

/* multiple skills */
skillRequired = <skill1 name>:<level>;<skill2 name>:<level>,

For the list of available skills, see this.

For example:

skillRequired = Blacksmith:3;Tailoring:2,

tags#

(see tags)

Type:

array (array of string, separator: ‘;’) (required)

Specifies specific conditions which need to be respected to craft this item. At least one crafting bench tag is necessary for the craft to be recognized, such as AnySurfaceCraft. The syntax is as follows:

/* single tag */
Tags = tag1,

/* multiple tags */
Tags = tag1;tag2;...,

For example:

Tags = InHandCraft;CanAlwaysBeResearched,

A crafting bench tag can be created by adding a component CraftBench to an entity script, which can then be used in this tags parameter.

time#

(see time)

Type:

Any

Default:

50

The time it takes to craft the item, not using a specific unit of time.

timedAction#

Type:

Any

Refers to a timed action script block, used to trigger during the crafting process, for animations and/or sounds but also the calories burned and body heat generation.

Tooltip#

(see Tooltip)

Type:

Any

Description of the crafting which is shown in the crafting menu.

xpAward#

(see xpAward)

Type:

Any

Specifies the experience points awarded for crafting this item. The parameter should be formated this way:

/* a single skill */
xpAward = <skill name>:<xp amount>,

/* multiple skills */
xpAward = <skill1 name>:<xp amount>;<skill2 name>:<xp amount>,format

For the list of available skills, see this.

For example:

xpAward = Blacksmith:10;Tailoring:5,