Skip to content

Recipe System ​

MBD2 21.1.1

An MBDRecipeType groups MBD recipes. A machine selects one recipe type; recipe logic finds a matching recipe by asking its traits to handle each input and output capability.

MBD2 Recipes editor showing the recipe type, a built-in wiki_smelting recipe, and recipe-type Inspector fields
A Recipe Type project owns its built-in recipes, fuel settings, proxy sources, and viewer visibility.

Recipe contents ​

Each entry has a direction (input or output) and a RecipeCapability. Entries can also be:

FieldMeaning
perTickConsume or produce while the recipe works instead of at its boundary
chanceBase probability for this entry
tierChanceBoostAdditional probability per machine level
slotNameLimit handling to Traits advertising that slot name
uiNameBind display to a named recipe-viewer widget

duration defaults to 100 ticks in the KubeJS builder. priority orders candidates — lower values are tried first. Use KubeJS recipes for runnable builder examples.

Conditions and custom data ​

Conditions are evaluated before work begins and again while the recipe works. Recipe custom data is an NBT compound available to machine logic, blueprints and event integrations; it does not create a Trait or change behaviour on its own.

Changing a recipe at runtime ​

WantUse
Scale amounts, duration or parallelRecipe modifiers on the machine's recipe logic
Change what a recipe tradesA blueprint on Recipe Modify (Before), or KubeJS
Reject a candidateA RecipeCondition, not an event

Next: Capabilities and conditions.

Released under the MIT License.