> For the complete documentation index, see [llms.txt](https://wiki.zeroworlds.ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.zeroworlds.ru/informaciya-zw6/fishki-servera/optimizirovannye-zhiteli.md).

# Оптимизированные жители

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">VillagerLobotimizer</mark>

{% hint style="info" %} <mark style="background-color:$info;">VillagerLobotimizer</mark> — плагин на оптимизацию жителей на сервере: если житель **находится в замкнутом пространстве и полностью ограничен в движении**, он переводится в “оптимизированное” состояние. Это снижает лаги от больших трейд-холлов и ферм с жителями.
{% endhint %}

#### <mark style="color:$primary;">Что меняется?</mark>

* Жители в трейд-холлах **перестают нагружать сервер**, когда они заперты и не могут ходить.
* Торговля при этом **работает как обычно** (вы по-прежнему открываете окно торговли и меняете предметы).
* Жители могут выглядеть более “статичными” — это нормально, так и задумано.

***

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">Когда житель становится оптимизированным</mark>

Житель будет оптимизирован, если выполнены условия:

1. Он находится в **замкнутой ячейке** (условия трейд-холла).
2. Его движение **полностью ограничено** (он не должен свободно перемещаться).
3. В трейд-холле он должен быть **заперт сверху** (потолок/блок над ним).

> Проще всего: **ячейка 1×1 + потолок сверху** — и всё работает правильно.

***

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">Как сделать жителя “обычным”</mark>

Если вам нужно, чтобы конкретный житель **всегда оставался обычным**, просто **назовите его**: **`alwaysbrain` с помощью бирки**

* Регистр обычно не важен (можно `AlwaysBrain`, `ALWAYSBRAIN` и т.д.).
* После переименования житель будет вести себя как обычный (не будет оптимизироваться).

> Правилами сервера разрешено использовать это только там, где реально нужно: например, если вы делаете жителя-НПС “для декора” и он должен активно двигаться.

***

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">Рекомендации по трейд-холлам</mark>

Чтобы трейд-холл был **и удобным, и лагал как можно меньше**:

* Делайте жителям **ячейки 1×1** (или эквивалентное полное ограничение движения).
* **Обязательно закрывайте сверху** (блок/плита/потолок — главное, чтобы житель был заперт сверху).
* Не делайте “прогулочных” комнат для жителей в торговых залах — это резко увеличивает нагрузку.

***

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">Частые вопросы</mark>

<details>

<summary>Почему житель стоит и почти не двигается?</summary>

Потому что он оптимизирован — это нормально и полезно для производительности.

</details>

<details>

<summary>Торговля будет работать?</summary>

Да, торговля рассчитана на то, чтобы работать с оптимизированными жителями.

</details>

<details>

<summary>Я хочу, чтобы житель снова был обычным</summary>

Сначала убедитесь, не нарушаете ли вы [правила](https://wiki.zeroworlds.ru/informaciya-zw6/pravila) сервера.&#x20;

Затем назовите его `alwaysbrain` (см. выше) **или** перестройте яму/ячейку так, чтобы он не считался “запертым” (но это **запрещено** в трейд-холлах).

</details>

***

### <mark style="color:$primary;">▌</mark><mark style="color:$primary;">Запрещено разблокирование жителей в трейд-холлах</mark>

> В трейд-холлах **запрещено** “анблокать” жителей — то есть делать так, чтобы они могли свободно ходить/перемещаться.

#### <mark style="color:$primary;">Требования к жителям в трейд-холлах</mark>

* Жители должны быть **полностью ограничены в передвижении** (без возможности ходить туда-сюда).
* Жители должны быть **заперты сверху** (обязателен потолок/блок сверху).

#### <mark style="color:$primary;">Почему так?</mark>

Трейд-холлы с “гуляющими” жителями сильно нагружают сервер и вызывают лаги у всех. Оптимизация жителей работает корректно только при правильной конструкции трейд-холла.
