Minecolonies Logo

Data Packs - Recipes


Crafter Recipes

While Item Tags determine the recipes that workers can be taught, colonists can also automatically learn special Crafter Recipes. These recipes can be different than those available to the player or even reflect items that can't be made in any other way. Unlike Tags, Crafter Recipes can and must hold a large number of properties, some containing arrays or objects of properties themselves. Supported properties include:

Crafter Recipe Key NameTypeDescription
typeString"recipe" to add a recipe, and "remove" to disable one.
crafterStringThe name of the worker who will learn the recipe. Mandatory.
inputsArray Of ObjectsThe "item"s and "count"s of the required input items that will be consumed for the recipe.
inputs[].itemStringThe Resource Location identifier of an item consumed by the recipe.
inputs[].countIntegerThe number of that item consumed by default. If not present, defaults to 1.
resultStringThe Resource Location identifier of the item the recipe produces.
countIntegerThe count of "result" items that should be returned. If not present, defaults to 1.
loot-tableStringThe Resource Location of a loot table, used for outputs that require some randomization.
additional-outputObjectThe "item" and "count" of a single additional output item.
additional-output.itemStringThe Resource Location identifier of an item consumed by the recipe.
additional-output.countIntegerThe number of that item consumed by default. If not present, defaults to 1.
alternative-outputArray Of ObjectsContains the "item" and "count" of alternative output items. These consume the same inputs, share the same "loot-table", and return the same "additional-output" as the main recipe, but produce a different result on demand through the Request System.
alternative-output[].itemStringThe Resource Location identifier of an item consumed by the recipe.
alternative-output[].countIntegerThe number of that item consumed by default. If not present, defaults to 1.
intermediateStringThe Resource Location identifier of a block required to craft the item, typically a furnace.
research-idStringThe Resource Location identifier of a research that is automatically learned after the colony has a research completed, if all other requirements are met.
not-research-idStringThe Resource Location identifier of a research that automatically causes the recipe to be unlearned. Most commonly used to replace a default recipe.
min-building-levelIntegerThe minimum building level, inclusive, at which the recipe may be automatically learned, if all other requirements are complete.
max-building-levelIntegerThe building level where the recipe will be automatically unlearned, if the building meets or exceeds it.
must-existBooleanA special requirement. If a recipe matching the output exists, automatically adds all "alternative-output" as recipes.
show-tooltipBooleanIf true, displays the building that can craft the recipe, as well as any requirements to unlock the recipe, as a tooltip for the item.
recipe-id-to-removeStringA Resource Location of a different crafter recipe to remove, preventing buildings from learning it. Requires "type":"remove". All other properties are ignored. Example: "recipe-id-to-remove": "minecolonies:blacksmith/platearmorchestplate".

On existing worlds, removing a Crafter Recipe through data packs will automatically remove it from existed constructed buildings that have learned it.

For example crafter recipes, and their canonical names, see GitHub here and here.

Player Recipes

Player Recipes can be added by data packs using vanilla features, by adding to the recipes Data Location. See the Official Wiki for details, and the GitHub for MineColonies default recipes.


If changes are needed or you think there is content missing, feel free to edit this page or submit an issue for us to make edits. - MineColonies Wiki Team