> For the complete documentation index, see [llms.txt](https://book.denismakhortov.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://book.denismakhortov.com/ru/server/customization.md).

# Настройка сервера

В прошлом пункте мы запустили сервер. Отлично! Мы уже сейчас можем играть на стандартной версии сервера. Но я уверен, что вы теперь хотите настроить его под себя Выключим запущенный сервер (CTRL + C) Настроим время на ход

```
nano server_settings.lua
```

Оно указано в секундах и в текущих настройках по умолчанию равно 70. Давайте изменим на 210, чтобы было 3.5 минуты С помощью стрелок на клавиатуре дойдите до этого числа и измените его (но не набирайте цифры на Numpad, набирайте их с помощью цифр, расположенных над буквами) Отлично, изменили. Теперь нужно сохранить. Нажмите CTRL + X Потом y Потом enter Таким образом, вы можете редактировать файлы на сервере. Редактировать можно очень и очень многое. Запустим снова наш сервер Перейдем в основную папку сервера Запускаем сервер

```
./start.sh
```

Теперь мы можем смотреть на то, что происходит в консоли. Также мы можем свернуть текущее окно. Наберите на клавиатуре: CTRL + A CTRL + D Мы вышли из экрана сервера. При подключении к серверу после того, как отключитесь, вы будете в такой же ситуации. Чтобы снова загрузить экран сервера, пропишите

```
screen -r server1
```

## Добавление кастомного сценария

По умолчанию на сервере теперь запускается europe/millenium. Начальный выбор задаётся в scripts/scenario\_selection.lua.

Итак, мы хотим добавить свой сценарий на сервер. (если вы сейчас только подключились к серверу, то не забудь ввести команду screen -r server1 из прошлого пункта, чтобы перейти в экран сервера. В случае, если вы перейдете и сервер запущен, то выключите его командой CTRL + C)

Вначале вы должны были создать сценарий в редакторе сценариев и экспортировать его в виде файла .lua Полученный файл вам нужно закинуть на сервер в папку scripts/scenarios/<подходящая карта>

Дальше нужно определиться:

1. вы хотите, чтобы этот сценарий запускался при старте сценария
2. вы хотите, чтобы этот сценарий был одним из тех сценариев, которые автоматически начинаются после конца игры

Если первое, то вам нужно отредактировать файл scripts/scenario\_selection.lua:

```
nano scripts/scenario_selection.lua
```

Добавьте свой модуль в таблицу SCENARIOS по аналогии с существующими, например:

```lua
my_map = {
    demo = "scripts.scenarios.my_map.demo"
},
```

Затем запустите `luajit start.lua --map my_map --scenario demo`. Если используете start.sh, допишите эти аргументы в его строку запуска. Для сохранения файла, как обычно, CTRL + X, y, enter.

Если второе, то нам уже нужно отредактировать стандартный плагин game\_switch (вы тоже можете писать свои плагины, но это отдельная и достаточно сложная тема. Для того, чтобы писать плагины, нужно программировать. Но это открывает очень большие возможности) Переходим в core/server/plugins

```
cd core/server/plugins
```

Редактируем плагин game\_switch

```
nano game_switch.lua
```

Дописываем нужный сценарий по аналогии со сценариями, которые уже определены И по традиции CTRL + X Вводим y Жмем enter Переходим в папку сервера

```
cd ../../..
```

(вверх на три уровня)

После проделанных действий запускаем сервер ./start.sh

## Добавление кастомной карты

1. Создайте карту в редакторе карт.
2. Создайте на сервере папку maps.
3. Экспортированный пакет `.map` назовите `<ID карты>.map` и положите в папку `maps`. ID должен совпадать с полем `map` сценария. Старую папку `exported_map/` сначала преобразуйте текущим редактором; она больше не заменяет пакет.
4. Добавьте свой сценарий, сделанный на этой пользовательской карте, на сервер

Игрокам ничего устанавливать не надо, карта подгрузится автоматически при заходе в игру.
