> For the complete documentation index, see [llms.txt](https://models.advancedplugins.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://models.advancedplugins.net/models-and-guides/model-interactions.md).

# Model Interactions

## What Are Interaction Types?

Interaction Types allow you to add special behaviors to your custom models. This means players can do things like sit on a chair model, use a custom furnace, or open storage directly from your model.

#### Available Interaction Types:

* **SIT**: Allows players to sit on the model.
* **FURNACE**: Turns the model into a working furnace.
* **STORAGE**: Gives the model storage capabilities like a chest.
* **CRAFT**: Makes the model act as a crafting table.
* **ENDER\_CHEST**: Provides access to the player's Ender Chest.
* **COMMAND**: Executes a command when the model is interacted with.
* **CONSOLE\_COMMAND**: Executes a command from console (can use %player%)
* **LIGHT**: Create a toggleable light. Right click the model to turn it on and off.
* **REPLACE\_ITEM**: Create a replaceable displayed item in model (material must be AIR), will drop item when broken or replaced by another item

<div align="left"><figure><img src="https://i.imgur.com/YHzQJf0.png" alt=""><figcaption><p>Put a cooked steak</p></figcaption></figure> <figure><img src="https://i.imgur.com/eSDKO43.png" alt=""><figcaption><p>Right click with empty hand to remove</p></figcaption></figure> <figure><img src="https://i.imgur.com/sRGVP72.png" alt=""><figcaption><p>Or put anything else</p></figcaption></figure></div>

{% hint style="warning" %}
**Important Note**: You can assign **only one interaction** per model.
{% endhint %}

{% hint style="info" %}
There is a \~200 interactive models limit per chunk.&#x20;
{% endhint %}

## How to Use Interaction Types

#### General Guidelines

* **Assigning Interactions**: Interactions are assigned to specific parts of your model in Blockbench.
* **SIT Interaction**: The part you assign the `SIT` interaction to matters because players will sit on that exact part.
* **Other Interactions**: For interactions like `FURNACE`, `STORAGE`, etc., it doesn't matter which part you assign them to; interacting with any part will trigger the function.

## Examples

### Command Interaction

{% code lineNumbers="true" %}

```yaml
parts: 
  base: # Part name from model
    material: DEEPSLATE_BRICKS # Minecraft Material
    interaction: CONSOLE_COMMAND # Interaction type
    value: "msg %player% Hi" # Command, ran by console, allows %player% variable
```

{% endcode %}

### Light

{% code overflow="wrap" lineNumbers="true" %}

```yaml
parts: 
  light: # Usually light is an invisible part without textures, just sets actual light location
    interaction: LIGHT
```

{% endcode %}
