# Characters

Declaring characters is really simple!

First, you need an identifier, this is what you'll use for the "Say" and "Show" commands. We'll choose the identifier "e" for this tutorial.

```javascript
var characters = {
    "e":{

    }
}
```

Each character has many properties, like the name that is shown to the player, and the color for it.

```javascript
var characters = {
    "e": {
        "Name": "Evelyn", // The name that will be shown when this character speaks.
        "Color": "#00bfff" // It could also be an rgb or rgba value.
    }
}
```

Since we are building visual novels, we also need images for our characters! You need the Directory inside the img directory where your files will be placed, and assign a simple identifier to each file.

```javascript
var characters = {
    "e": {
        "Name": "Evelyn",
        "Color": "#00bfff",
        "Directory": "Evelyn", // Optional*
        "Images":{ // Images Identifier for the "Show" statement.
            "Normal": "normal.png",
            "Mad": "hmph!.png",
            "Doubt": "uhh.png",
            "Disappointed":"ngggg....png",
            "Happy": "hehehehe.png"
        },
        "Face": "face.png", // Optional, side image to show every time the character speaks.
        "Side": { // Side images identifiers to show on dialogs when the character speaks with a colon and side image name, like e:Smiling
             "Smiling": "smiling.png"
        }
    }
}
```

* The directory attribute is a subdirectory of characters where the images will be pulled, if no Directory is given, it will be assumed to be the characters directory itself.


---

# 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://developers.monogatari.io/documentation/1.4.1-1/script/characters.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.
