> For the complete documentation index, see [llms.txt](https://docs.bestway.com.ua/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bestway.com.ua/animation/animation-system-for-actor/animation-selection-setup/human-movement-animation-selection.md).

# Human movement animation selection

The logic for selecting walking and running animations for the **human** actor is stored in `\properties\animation_selector\`**`human_walk_selector.set`**

The system operates on the same principle as a standard **Animation Selector**.\
It processes requests whose names correspond to the **movement mode names**: `slow` , `normal`, `fast`, `walk`, `bow`, `assault`, `spot`, `sneak`.

### Movement Animation Selector configuration

For each request, the corresponding animations are selected using `if`-block conditionals and defined in the `{walk}` block.

Animation selection can also be performed using the FSM counter `walk`.

Animations may be defined either as a single full‑body animation (`anm_single`) or as a set of two animations: `anm_up` — torso (head and arms); `anm_down` — pelvis and legs.

> **Movement Animation Selector template**
>
> ```
> {request_name_movement_mode
>     {if <condition>
>         {walk wind [single "<anm_single>" | "<anm_up>" "<anm_down>"]}
>     }
>     [...]
> }
> [...]
> ```

The `wind` parameter is optional and specifies that the animation should be rewound.

<details>

<summary>Example: movement selection with specified animations</summary>

```
{if human_stuff holding "2hands"
    {walk single "walk_2hand"}
}
```

</details>

<details>

<summary>Example: selecting by FSM counter <code>walk</code></summary>

```
{if human_stuff holding "rifle"
    {switch_by_counter "walk"
        {pick 1
            "run_rifle_up" "run_rifle_down"
        }
        {pick 2
            single "run_rifle"
        }
    }
}
```

</details>
