Process Recipes

What is a Process Recipe?

These recipes are what define what a machine will do. Each recipe is made up of a list of requirements called "inputs" and a list of outcomes called "outputs".

NOTE: the current alpha and beta versions, are capable of simple inputs and outputs. There are plans for many more features around recipes for future versions.

The structure of recipes is quite important to understand. More specifically the structure of recipe entries. A recipe entry is an object inside the list of inputs or outputs. Recipe entries are essentially definitions of how to handle ingredients. They can also be seen as instructions for what is required and what will be output.

See more on specific recipe entries HERE.

How to create a Recipe?

{
  "structureId": "mypack:my_structure",
  "ticks": 60,
  "inputs": [
    // Some Input Recipe Entries
  ],
  "outputs": [
    // Some Output Recipe Entries
  ]
}
"structureId": "mypack:my_structure"

The "structureId" field defines which structure this reicpe is intended to be executed in.

Structure ids match the datapack location of the structure json file. For a structure located at: /data/mypack/mm/structures/my_structure.json would match the above example. Similarly a structure located at /data/mypack/mm/structure/some_folder/my_structure.json would require a structure id of mm:some_folder/my_structure.json

"ticks": 60

The "ticks" field defines how many in-game ticks a recipe is meant to run for. the above example should run for 3 seconds before completing.

"inputs": [
    // Input Recipe Entries
]

The "inputs" field should be a list of recipe entry JSON objects which are required to progress the recipe.

Similarly the "outputs" field should contain a list of output recipe entries.

Last updated