Crafting Recipes
In addition to custom recipe types, TFC also adds several recipe types that can be used for custom crafting recipes. TFC adds the following crafting recipe types:
- Advanced Shaped Crafting
- Advanced Shapeless Crafting
- Casting
- Damage Inputs
- Extra Products
- Food Combining
Advanced Shaped Crafting
An advanced shaped crafting recipe is a shaped crafting recipe with some additions to support the output using an Item Stack Provider. It has the following properties:
type:tfc:advanced_shaped_craftinggroup,pattern,key, andconditionsare the same as a usual shaped recipe.resultis an Item Stack Provider, which is the output of the recipe. The “input” stack to the item stack provider is determined by the belowinput_rowandinput_column.input_rowis an integer.input_columnis an integer.
In a crafting recipe, the input_row and input_column are zero indexed positions in the pattern where the input stack is to be taken from. For example, in the following pattern:
{
"pattern": [
"ABC", // Row 0
"DEF" // Row 1
// 0 1 2 Columns
],
// ...
In order to use the F item as the “input” item stack, the following would be required:
{
"input_row": 1,
"input_column": 2
// ...
Advanced Shapeless Crafting
An advanced shaped crafting recipe is a shapeless crafting recipe with some additions to support the output using an Item Stack Provider. It has the following properties:
type:tfc:advanced_shapeless_craftinggroup,ingredients, andconditionsare the same as a usual shapeless recipe.resultis an Item Stack Provider, which is the output of the recipe.primary_ingredientis an Ingredient, which identifies which slot of the recipe is used as the “input” stack for the result.
Casting
This is a crafting recipe which acts as a unified recipe for all Casting Recipes. It is used when placing a filled, solidified mold in the crafting grid. This recipe will then query a casting recipe, and if a valid one is found, it will produce the output of the casting recipe. It has no configurable options by itself.
type:tfc:casting_crafting
Damage Inputs
These recipes are used for recipes which want to damage tool inputs, such as knives, axes, etc. when crafted, instead of consuming them. There are two different variants for shaped and shapeless recipes.
type:tfc:damage_inputs_shapeless_craftingortfc:damage_inputs_shaped_craftingrecipe: The crafting recipe which this applies to. Must be the same shaped/shapeless type as the type of the damage inputs recipe.
Example
// Reference: data/tfc/recipes/crafting/rock/marble_brick.json
// This recipe damages the chisel used rather than consuming it
{
"type": "tfc:damage_inputs_shapeless_crafting",
"recipe": {
"type": "minecraft:crafting_shapeless",
"ingredients": [{
"item": "tfc:rock/loose/marble"
}, {
"tag": "tfc:chisels"
}],
"result": {
"item": "tfc:brick/marble"
}
}
}
Extra Products
This is a recipe type which wraps a normal crafting recipe, but it’s used for producing extra products in addition to the normal recipe products. Any extra products are given directly to the player when they craft the recipe. There are two different variants for shaped and shapeless recipes.
type:tfc:extra_products_shapeless_craftingortfc:extra_products_shaped_craftingextra_products: An Array of Item Stacks. Each item stack is a single extra product.recipe: The crafting recipe which this applies to. Must be the same shaped/shapeless type as the type of the damage inputs recipe.
Example
// Reference: data/tfc/recipes/crafting/maize_cutting.json
// This recipe uses nested recipe types, both producing extra products (straw) and damaging the knife used
{
"type": "tfc:extra_products_shapeless_crafting",
"extra_products": [{
"item": "tfc:straw"
}],
"recipe": {
"type": "tfc:damage_inputs_shapeless_crafting",
"recipe": {
"type": "minecraft:crafting_shapeless",
"ingredients": [{
"item": "tfc:food/wheat"
}, {
"tag": "tfc:knives"
}],
"result": {
"item": "tfc:food/wheat_grain"
}
}
}
}
Food Combining
This is a crafting recipe which merges foods of the same traits, but with different creation dates. It has no configurable options by itself.
type:tfc:food_combining