# Dimension

Dimension requirement is used to make the custom machine recipe work only in some dimensions of the world.

The dimension requirement is an input only requirement, meaning that you don't have to define the "mode" property. It is used only to restrict or allow the usage of a recipe in certain dimensions of the world.

The type of dimension requirement is : `"custommachinery:dimension"`.

### Properties

The dimension requirement has 2 mandatory properties and 1 optional property.

#### Mandatory properties

```json
"type": "custommachinery:dimension" //Mandatory to define a dimension requirement.
```

<details>

<summary>Filter</summary>

#### Name : `filter`

#### Description :

A single or array of dimensions ID to check if the machine is in or not.\
The dimensions ID must mus be like "minecraft:overworld" or any custom dimensions.\
This list may be a whitelist or a blacklist depending of the "blacklist" property.

#### Default : `empty`

Any biomes will be allowed if the filter is a whitelist.

#### Example :

```json
"filter": ["minecraft:overworld"]
```

The recipe will only run if the machine is in the overworld.

</details>

#### Optional properties

<details>

<summary>Blacklist</summary>

#### Name : `blacklist`

#### Description :

A Boolean value used to define if the "filter" property should be a blacklist instead of a whitelist.

#### Default : `false`

The "filter" property will act as a whitelist.

#### Example :

```json
"blacklist": true
```

The "filter" property will act as a blacklist.

</details>

### Example

A dimension requirement that will make the recipe works in all dimensions but the overworld :

```json
{
    "type": "custommachinery:dimension",
    "filter": "minecraft:overworld",
    "blacklist": true
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://frinn.gitbook.io/custom-machinery-1.18/recipes/requirements/dimension.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
