# Fuel

Fuel requirement is used to make the recipe need a fuel to be processed (like a furnace).

The fuel item must be provided with an [Item Component](https://frinn.gitbook.io/custom-machinery-1.21/creating-custom-machines/machine-components/item-component) with the `"variant": "custommachinery:fuel"` property.

This requirement will only check if the machine is burning fuel. The check occurs every tick so if the machine run out of fuel during a process it will stop and wait for the player to add some fuel.

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

### Properties

The fuel requirement has 1 mandatory property and 1 optional property.

#### Mandatory property

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

#### Optional property

<details>

<summary>Amount</summary>

#### Name : `amount`

#### Description :&#x20;

A positive integer that define the amount of fuel burn each tick of the recipe process.

If the machine don't have enough burn time remaining a fuel item will be consumed and it's corresponding burn time will be added. If no fuel item is found the machine will stop and error.

#### Default : 1&#x20;

The requirement will consume 1 burn time each recipe process tick (same as the vanilla furnace).

#### Example :&#x20;

```json
"amount": 2
```

The requirement will consume 2 burn time each tick, meaning the fuel will be consumed 2 times faster than in a vanilla furnace.

</details>

### Example

How to define a fuel requirement:

```json
{
    "type": "custommachinery:fuel"
}
```
