# 🔰IDs

IDs are Scriptable Objects with an Int value to easily identify or assign an *unique* identifier to States, Stances, Modes, Stats, Actions.

To Find all the IDs use the Menu **\[Tools -> Malbers Animations -> Show All IDs]**

<figure><img src="/files/aZAnskasamlGKmtQbqIh" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/gzb7KjSd6BemoG5ilKlY" alt=""><figcaption></figcaption></figure>

They are here to make your life easier and you don't have to remember which is the value of the **Locomotion** [State](/animal-controller/main-components/manimal-controller/states.md), The **Action** [Mode ](/animal-controller/main-components/manimal-controller/modes.md).. or the **Combat** [Stance](/animal-controller/main-components/manimal-controller/stances.md).

Here are the Name of the ID Values of each IDs created for the Animal Controller; in case you need to know them for each ID created for the Controller:

### [**State IDs**](/animal-controller/scriptable-architecture/scriptables/scriptable-ids.md#states-ids) **|** [**Mode IDs**](/animal-controller/scriptable-architecture/scriptables/scriptable-ids.md#modes-ids) **|** [**Stance IDs**](/animal-controller/scriptable-architecture/scriptables/scriptable-ids.md#stances-ids) **|** [**Stat IDs**](/animal-controller/scriptable-architecture/scriptables/scriptable-ids.md#stats-ids) **|** [**Actions**](/animal-controller/scriptable-architecture/scriptables/scriptable-ids.md#actions)

## <img src="/files/-LznfSAWqO5CDzHp9Qel" alt="" data-size="line"> States IDs

| Name       |  ID |
| ---------- | :-: |
| Idle       |  0  |
| Locomotion |  1  |
| Jump       |  2  |
| Fall       |  3  |
| Swim       |  4  |
| Underwater |  5  |
| Fly        |  6  |
| Climb      |  7  |
| Grab Ledge |  8  |
| Slide      |  9  |
| Death      |  10 |
| Glide      |  11 |

{% hint style="success" %}
To Create a new **State ID** go to Assets > Create > Malbers Animations > ID > **State ID**
{% endhint %}

{% hint style="info" %}
You can also access these values via script using **`StateEnum`** static class.

&#x20;E.g. : **`StateEnum.Fly`**
{% endhint %}

## <img src="/files/-LznkgOcVOr66y6E5DdS" alt="" data-size="line"> Modes IDs

| Name                            |  ID |
| ------------------------------- | :-: |
| Attack1 (Main Attack)           |  1  |
| Attack2 (Secondary Attack)      |  2  |
| Damaged                         |  3  |
| Action                          |  4  |
| Dodge                           |  5  |
| Air Attack (Aerial Main Attack) |  6  |

{% hint style="info" %}
You can also use the **Ability Status** of any  Mode as IDs to change it at run time
{% endhint %}

| Mode Ability Status |  ID |
| ------------------- | :-: |
| Play one Time       |  0  |
| Hold by Input       |  1  |
| Hold by Time        |  2  |
| Toggle              |  3  |

{% hint style="success" %}
To create a new **Mode ID** go to Assets > Create > Malbers Animations > ID > **Mode ID**
{% endhint %}

{% hint style="info" %}
You can also access these values via script using **`ModeEnum`** static class.

&#x20;E.g. : **`ModeEnum.Action`**
{% endhint %}

## <img src="/files/-Lznl8qCcWOvgU_JSmnZ" alt="" data-size="line"> Stances IDs

| Name    |  ID |
| ------- | :-: |
| Default |  0  |
| Sneak   |  1  |
| Combat  |  2  |
| Wounded |  3  |
| Stand   |  4  |
| Roll    |  6  |
| Crouch  |  7  |

{% hint style="success" %}
To create a new **Stance ID** go to Assets > Create > Malbers Animations > ID > **Stance ID**
{% endhint %}

## <img src="/files/-LznnfX-bZmSmJ7hQTc2" alt="" data-size="line"> Stats IDs

| Name    |  ID |
| ------- | :-: |
| Health  |  1  |
| Stamina |  2  |
| Mana    |  3  |
| Air     |  4  |
| Hunger  |  5  |
| Thirst  |  6  |
| Noise   |  7  |

{% hint style="success" %}
To create a new **Stat ID** go to Assets > Create > Malbers Animations > ID > **Stat ID**
{% endhint %}

## <img src="/files/-Lzno7gkMm6ZruB3tO-O" alt="" data-size="line"> Actions

| Name                    |  ID |
| ----------------------- | :-: |
| Stun                    |  1  |
| Eat                     |  2  |
| Pet                     |  3  |
| Level Up                |  4  |
| Talk                    |  5  |
| Sleep                   |  6  |
| Drink                   |  7  |
| Seat                    |  8  |
| Crawl Under             |  9  |
| Dig                     |  10 |
| Lie                     |  11 |
| Stand                   |  12 |
| Push Stand              |  13 |
| --                      |  -- |
| Enter Hole              |  15 |
| Roar Caw Howl           |  20 |
| Perching                |  21 |
| ----------------------- |  -- |
| Happy                   | 101 |
| Sad                     | 102 |
| Angry                   | 103 |
| Scared                  | 104 |
| Sick                    | 105 |
| Confuse                 | 106 |
| Say Yes                 | 107 |
| Say No                  | 108 |


---

# 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://malbersanimations.gitbook.io/animal-controller/scriptable-architecture/scriptables/scriptable-ids.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.
