Table Recipes

Extended Crafting allows you easily add your own Extended Crafting Table recipes using both Datapacks and CraftTweaker.

Datapacks

Prerequisites
  • You can learn more about using vanilla datapacks here.
  • You can learn more about creating recipe JSON files here.

The Recipe File

This section will go over the values available to use in a Table Crafting recipe. Syntax can be inferred from the example jsons below.

Shaped

FieldRequiredDescription
typeThe recipe type must be extendedcrafting:shaped_table.
tierThe tier of table required for this recipe. If omitted the recipe will work for all tables with enough grid space.
patternThe recipe pattern.
keyThe recipe key, for specifying which item each character represents.
resultThe item that this recipe will output when crafted.

Shapeless

FieldRequiredDescription
typeThe recipe type must be extendedcrafting:shapeless_table.
tierThe tier of table required for this recipe. If omitted the recipe will work for all tables with enough grid space.
ingredientsAn array of 1-81 input items.
resultThe item that this recipe will output when crafted.

Example Files

Shaped

Tier 1 (3x3)

{
  "type": "extendedcrafting:shaped_table",
  "pattern": [
    "XXX",
    "X X",
    "XXX"
  ],
  "key": {
    "X": {
      "tag": "c:ingots/gold"
    }
  },
  "result": {
    "id": "minecraft:apple"
  }
}

Tier 2 (5x5)

{
  "type": "extendedcrafting:shaped_table",
  "pattern": [
    "XXXXX",
    "X   X",
    "X   X",
    "X   X",
    "XXXXX"
  ],
  "key": {
    "X": {
      "tag": "c:ingots/gold"
    }
  },
  "result": {
    "id": "minecraft:apple"
  }
}

Tier 3 (7x7)

{
  "type": "extendedcrafting:shaped_table",
  "pattern": [
    "XXXXXXX",
    "X     X",
    "X     X",
    "X     X",
    "X     X",
    "X     X",
    "XXXXXXX"
  ],
  "key": {
    "X": {
      "tag": "c:ingots/gold"
    }
  },
  "result": {
    "id": "minecraft:apple"
  }
}

Tier 4 (9x9)

{
  "type": "extendedcrafting:shaped_table",
  "pattern": [
    "XXXXXXXXX",
    "X       X",
    "X       X",
    "X       X",
    "X       X",
    "X       X",
    "X       X",
    "X       X",
    "XXXXXXXXX"
  ],
  "key": {
    "X": {
      "tag": "c:ingots/gold"
    }
  },
  "result": {
    "id": "minecraft:apple"
  }
}

Shapeless

{
  "type": "extendedcrafting:shapeless_table",
  "ingredients": [
    {
      "item": "minecraft:coal"
    },
    {
      "item": "minecraft:coal"
    }
  ],
  "result": {
    "id": "minecraft:apple"
  }
}

CraftTweaker

Extended Crafting comes with CraftTweaker support built-in. You can make use of CraftTweaker to easily manage Table Crafting recipes.

Recipe Manager Support

CraftTweaker integration supports Recipe Managers! Access all applicable methods using <recipetype:extendedcrafting:table>!

Adding A Shaped Recipe

<recipetype:extendedcrafting:table>.addShaped(name, <output>, [[<>, <>, <>], [<>, <>, <>], [<>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, <output>, [[<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, <output>, [[<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, <output>, [[<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>]]);  

<recipetype:extendedcrafting:table>.addShaped(name, tier, <output>, [[<>, <>, <>], [<>, <>, <>], [<>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, tier, <output>, [[<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>], [<>, <>, <>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, tier, <output>, [[<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>]]);  
<recipetype:extendedcrafting:table>.addShaped(name, tier, <output>, [[<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>], [<>, <>, <>, <>, <>, <>, <>, <>, <>]]);
FieldRequiredDescription
nameA unique name for this recipe. Must be all lower case and have no spaces.
tierThe required crafting table tier. The tiers are 1-4, or 0 for any that are big enough. Not adding this parameter will make the tier 0.
outputThe output item of this recipe.
<>An input ingredient for the slot shown.

The input arrays work in the same way as the normal crafting recipes, check out the CraftTweaker wiki for more information.

Example

<recipetype:extendedcrafting:table>.addShaped("test_shaped", 2, <item:minecraft:stick>, [
  [<tag:item:c:ingots/iron>, <item:minecraft:air>, <item:minecraft:air>], 
  [<tag:item:c:ingots/gold>, <tag:item:c:ingots/gold>, <item:minecraft:air>], 
  [<tag:item:c:ingots/gold>, <item:minecraft:air>, <item:minecraft:air>]
]);

Adding A Shapeless Recipe

<recipetype:extendedcrafting:table>.addShapeless(name, <output>, [<input>, <input>]); 
<recipetype:extendedcrafting:table>.addShapeless(name, tier, <output>, [<input>, <input>]);
FieldRequiredDescription
nameA unique name for this recipe. Must be all lower case and have no spaces.
tierThe required crafting table tier. The tiers are 1-4, or 0 for any that are big enough. Not adding this parameter will make the tier 0.
outputThe output item of this recipe.
inputAn array of 1-81 items required to make the recipe.

Example

<recipetype:extendedcrafting:table>.addShaped("test_shaped", 2, <item:minecraft:stick>, [
  <tag:item:c:ingots/iron>, <tag:item:c:ingots/iron>, <tag:item:c:ingots/iron>, <tag:item:c:ingots/iron>
]);

Removing Recipes

<recipetype:extendedcrafting:table>.remove(<output>);
FieldRequiredDescription
outputThe item to remove all recipes for.