Structure

Make the recipe require a structure to be formed around the machine

Structure requirement is used to make the recipe need a structure around the machine to be processed.

The structure can be any size but blocks in unloaded chunks will not be found and the recipe will not start.

To make a structure requirement without headache use the in game "Structure Creator" tool.

The requirement type of structure requirement is : "custommachinery:structure".

Properties

The structure requirement has 3 mandatory properties.

Mandatory properties

"type": "custommachinery:structure" //Mandatory to define a structure requirement.
Pattern

Name : pattern

Description :

A list of list of string. Each character of the String represent a block, starting from the left and going to the right. Each String in the List represent a row, starting from the back and going to the front. Each List of String in the list represent a floor, starting from the bottom and going to the top.

All String must have the same number of characters, and each floot must have the same number of String

The pattern must have exactly one 'm' character, representing the machine position.

Example :

"pattern": [
    ["aaa"], 
    ["ama"], 
    ["aaa"]
]

A 3x3x1 vertical ring structure of the same block, around the machine block.

Keys

Name : keys

Description :

A map of type : "character": "block".

The character key must be unique and can't be 'm' (reserved for the machine block).

The block is described the same way as in the "/setblock" command : namespace:id[property1=value,property2=value...]{tag1:value,tag2:value...}

The [properties] and {tag} are optional.

The character 'm' is already taken by the machine block and can't be used for anything else.

Example :

"keys": {
    "a": "minecraft:stone"
}

Example

How to define a structure requirement:

{
    "type": "custommachinery:structure",
    "pattern": [
        [
            "sssss",
            "s   s",
            "s   s",
            "s   s",
            "sssss",
            "  m  "
        ]
    ],
    "keys": {
        "s": "minecraft:stone"
    }
}

Last updated