Сервер The Isle Evrima - это бесплатная анонимная загрузка через SteamCMD, которую нужно брать из бета-ветки, настраивать через единственный Game.ini и регистрировать в Epic Online Services, прежде чем его хоть кто-то найдёт. Закладывайте 6 ГБ памяти для небольшого сервера и 12 ГБ и больше, если нужна сотня слотов, три порта и вечер за чтением имён классов. Всё остальное - детали, но именно детали решают, будет ли у вашего сервера через месяц тридцать постоянных игроков или пустая карта и Discord, где никто не пишет.
Почти всех подводят две вещи. Первая - флаг -beta evrima: без него SteamCMD скачает снятую с поддержки сборку Legacy, к которой не подключится ни один актуальный клиент. Вторая - правильно настроенный сервер может отработать несколько часов без сбоев и так и не появиться во внутриигровом браузере: регистрация в браузере идёт через EOS и никак не связана с тем, открыт ли ваш игровой порт.
Что такое выделенный сервер Evrima#
Evrima - это переписанная с нуля The Isle. Старая ветка Legacy снята с поддержки, и играют не на ней, так что сервер на её основе на практике невидим. Выделенный сервер - отдельное приложение Steam (app id 412680), бесплатное, скачивается через login anonymous и не требует аккаунта, владеющего игрой.
В отличие от сервера Valheim или Minecraft, этот действительно симулирует мир. Он отвечает за рост динозавров, таймеры голода и жажды, появление AI-животных и растений, погоду, зоны миграции и патрульные зоны хищников. Поэтому цифры по памяти и процессору ниже выше, чем принято ждать от игры со скромным лимитом игроков, и поэтому AIDensity - это настройка производительности, а не только геймплея.
Ещё два момента, которые стоит знать до любого планирования:
- Прогресс игроков хранится на сервере, по аккаунтам Steam. В актуальных сборках состояние каждого игрока пишется в отдельный файл в
TheIsle/Saved/Databases/с ключом SteamID64. Благодаря этому рост переживает перезапуск, так делается вайп и так можно вернуть одному игроку его динозавра, не трогая остальных. - Поддерживаемого загрузчика модов нет. Один community-сервер от другого отличают конфигурация, инструменты RCON и модерация, а не моды. Если вы пришли из игры, где сервер держится на плагинах, скорректируйте ожидания: здесь продукт - это конфиг и правила, которые вы соблюдаете.
Требования и потребление ресурсов#
Evrima - тяжёлый сервер на Unreal. Память растёт вместе с числом загруженных игроков, популяцией AI и долей затронутой карты; процессор - вместе с тем же самым, но упирается в один главный поток.
| Слоты | RAM | vCPU | Примечания |
|---|---|---|---|
| До 20, закрытая группа | 6 GB | 2 | Комфортно при стандартной плотности AI |
| 20-50, небольшое сообщество | 8 GB | 2.5 | Обычный случай для нового сервера |
| 50-80, загруженный публичный | 10-12 GB | 3 | Следите за плотностью AI и миграциями |
| 80-100, полный | 12-14 GB | 3.5 | В часы пик ждите нагрузки на тик |
- CPU: симуляция опирается на один поток, поэтому тактовая частота важнее числа ядер. Лишние ядра всё равно пригодятся для сохранения, сети и подгрузки ассетов. Если сервер вялый только в пик, сначала проверьте, что из двух действительно упирается в предел, а потом платите за добавку - как это определить, разобрано в статье CPU или RAM для игровых серверов.
- Диск: примерно 15 ГБ после установки, и с каждым патчем контента объём растёт, так что не берите диск ровно под сегодняшнюю установку. Папка databases по сравнению с этим мала: несколько мегабайт для загруженного сервера.
- Сеть: на игрока немного, но сотня игроков в джунглях - это непрерывный поток обновлений позиций. Для ощущения от игры задержка важнее пропускной способности; как их различать, читайте в статье задержка, джиттер и потеря пакетов.
Главный рычаг стоимости - MaxPlayerCount. Если поставить 100 только потому, что поле позволяет, на тарифе, рассчитанном на 30, получится сервер, который нормально работает в три часа ночи и непригоден в восемь вечера. Выберите число, которое вы реально потянете, и повышайте его, когда очередь стабильно полна.
Установка сервера через SteamCMD#
На вашей собственной Linux-машине:
$ steamcmd +force_install_dir /home/isle/server +login anonymous \ +app_update 412680 -beta evrima validate +quit$ cd /home/isle/server$ ./TheIsleServer.sh -log -Port=7777 -QueryPort=27015Дайте ему запуститься один раз, а затем остановите. Первый запуск создаёт дерево конфигурации, и именно там происходит всё остальное из этого руководства:
TheIsle/Saved/Config/LinuxServer/Game.iniTheIsle/Saved/Config/LinuxServer/Engine.iniTheIsle/Saved/Databases/В Windows те же файлы лежат в TheIsle/Saved/Config/WindowsServer/. На хостинге с панелью строку SteamCMD вводить вообще не нужно: ветка и аргументы запуска - это поля на вкладке Startup, а конфиги правятся в браузере или по SFTP. Если это ваш первый выделенный сервер Steam, app id, ветки и проверку целостности в общем виде разбирает статья SteamCMD простыми словами.
Game.ini: настройки, которые важны#
Всё живёт под двумя заголовками секций. Ошибитесь в заголовке на один символ - сервер не пожалуется, а молча вернётся к значениям по умолчанию, и потому люди клянутся, что выставили множитель роста, а он ничего не сделал.
[/Script/TheIsle.TIGameSession]ServerName=Northern Migration | EU | Semi-RealismMaxPlayerCount=60MapName=GatewayDiscord=https://discord.gg/examplebServerPassword=FalseServerPassword=bServerWhitelist=FalsebQueueEnabled=TrueQueuePort=10000bRconEnabled=TrueRconPort=8888RconPassword=change-thisGrowthMultiplier=2CorpseDecayMultiplier=1bEnableHumans=FalsebEnableMutations=TruebSpawnAI=TrueAIDensity=1AISpawnInterval=40bSpawnPlants=TruePlantSpawnMultiplier=1ServerDayLengthMinutes=45ServerNightLengthMinutes=20bServerDynamicWeather=TruebEnableMigration=TruebEnablePatrolZones=TrueИдентичность и доступ
| Ключ | По умолчанию | Что делает |
|---|---|---|
ServerName | пусто | Название в браузере. Впишите в него регион и набор правил |
MaxPlayerCount | 100 | Слоты. Соизмеряйте с тарифом, а не с полем |
MapName | Gateway | С учётом регистра. Gateway - текущая карта Evrima |
Discord | пусто | Показывается игрокам в игре; самый дешёвый способ набора людей |
bServerPassword | False | Должен быть True, чтобы ServerPassword действовал |
bServerWhitelist | False | Режим белого списка, работает по списку ID ниже |
bQueueEnabled | True | Держит игроков в очереди при заполнении, а не отказывает им |
Пара с паролем сбивает многих: одно только значение ServerPassword ничего не делает. Менять нужно оба ключа.
Рост, рацион и устройство игры
GrowthMultiplier - настройка, по которой игроки будут судить о вас. При 1 крупному динозавру нужно много часов реального времени, чтобы стать взрослым. Community-серверы обычно ставят от 2 до 5; рекомендация самих разработчиков - держать значение низким, а выше примерно 10 взрослые появляются быстрее, чем способны обеспечить системы еды и AI. Меняйте его по возможности только между вайпами: скачок с 1 до 5 посреди недели заставляет каждого, кто выгрызал свой рост, чувствовать себя обворованным.
| Ключ | По умолчанию | Что делает |
|---|---|---|
GrowthMultiplier | 1 | Скорость роста. 2-5 - обычный диапазон для сообществ |
CorpseDecayMultiplier | 1 | Как быстро гниют тела. Меньше значит больше еды на земле |
bEnableHumans | False | Играбельные люди, где сборка их поддерживает |
bEnableMutations | True | Система мутаций |
bAllowReplay | False | Запись повторов на стороне сервера |
AllowedClasses | все | По одной строке на каждый играбельный вид |
AllowedClasses - повторяющийся ключ, по одной строке на вид, с точными именами классов, которые уже перечислены в поставляемом Game.ini. Копируйте их из файла, а не набирайте то, как, по-вашему, называется динозавр: неверное имя игнорируется, и обычно в итоге в списке не хватает одного вида, а почему - никто объяснить не может. Удалите строку, чтобы убрать этот вид с экрана выбора. Если блока нет вовсе, разрешено всё.
AI, растения и погода
| Ключ | По умолчанию | Что делает |
|---|---|---|
bSpawnAI | True | AI-животные, кормовая база хищников |
AIDensity | 1 | Сколько их. Главный регулятор производительности |
AISpawnInterval | 40 | Секунд между проверками появления |
DisallowedAIClasses | пусто | Запретить отдельные виды AI |
bSpawnPlants | True | Появление растений, кормовая база травоядных |
PlantSpawnMultiplier | 1 | Плотность растений |
bUseRegionSpawning | False | Ограничить точки появления игроков регионами карты |
ServerDayLengthMinutes | 45 | Длительность дня |
ServerNightLengthMinutes | 20 | Длительность ночи, намеренно короче |
bServerDynamicWeather | True | Погода меняется со временем |
bEnableMigration | True | Зоны миграции видов |
MaxMigrationTime | 5400 | Сколько секунд длится зона миграции |
bEnableMassMigration | True | Миграционные события на весь сервер |
MassMigrationTime | 43200 | Секунд между ними, то есть двенадцать часов |
bEnablePatrolZones | True | Патрульные зоны AI-хищников |
Отключение AI делает сервер дешевле и игру заметно хуже: хищникам нечего есть, кроме друг друга и игроков, и карта пустеет не только буквально, но и в социальном смысле. Если не хватает процессора, снизьте AIDensity до 0.5, прежде чем думать о bSpawnAI=False.
Порты, EOS и появление в браузере#
| Порт | Протокол | Назначение |
|---|---|---|
7777 | UDP | Игровой трафик |
27015 | UDP | Запросы Steam |
8888 | TCP | RCON, по собственному протоколу |
10000 | TCP | Очередь на вход |
Игровой порт и порт запросов задаются в командной строке (-Port= и -QueryPort=); порты RCON и очереди берутся из Game.ini. Все четыре должны быть доступны, если вам нужны все четыре функции. Больше всего ошибаются с UDP: правило файрвола, разрешающее только TCP, даёт сервер, который запускается, бодро пишет в лог и никого не принимает. Зачем вообще нужен порт запросов и что ломается, когда открыт только один из пары, разобрано в статье порты игрового сервера.
Регистрация в браузере - отдельная история. Evrima регистрируется в Epic Online Services, и серверу нужны действительные учётные данные EOS для выделенного сервера в Engine.ini под заголовком [EpicOnlineServices], с DedicatedServerClientId и DedicatedServerClientSecret. Свежие сборки поставляются с рабочей парой; если у вас её нет или патч её аннулировал, в логе появляется ошибка входа в EOS, и сервер не попадает в список, хотя игроки всё ещё могут заходить другими способами. К тому же регистрация занимает несколько минут после старта, так что дайте свежему серверу пять минут, прежде чем считать его сломанным.
Админы, вайтлисты, VIP и очередь#
Списки доступа живут под другим заголовком, и это второе место, где опечатка стоит вам часа:
[/Script/TheIsle.TIGameStateBase]AdminsSteamIDs=76561198012345678AdminsSteamIDs=76561198087654321WhitelistIDs=76561198011112222VIPs=76561198033334444Каждый ключ повторяется, по одному SteamID64 на строку. 17-значный ID - это не имя профиля Steam и не короткий адрес профиля; надёжный способ его узнать - попросить человека один раз зайти и прочитать ID в логе сервера, куда записывается каждое подключение. RCON распознаёт админов, перечисленных здесь, так что пароль RCON без записи в списке админов даёт вам подключение и никаких полномочий.
bServerWhitelist=True вместе с заполненным блоком WhitelistIDs превращает сервер в закрытый, только по списку. Оставьте вайтлист включённым при пустом списке - и не сможет войти никто, включая вас. VIPs обходят очередь, и в этом практический смысл системы очереди: публичный сервер, который в пик заполнен, но всегда имеет место для тех, кто его поддерживает.
Чтобы добавить людей в эти списки, нужно остановить сервер, отредактировать файл и запустить снова. На загруженном сообществе это настолько неудобно, что большинство админов копят добавления в вайтлист и вносят их одним ежедневным перезапуском, а не по мере поступления. Вкладка Schedules на хостинге с панелью может запускать этот перезапуск по cron-выражению, чтобы он всегда приходился на один и тот же тихий час.
RCON и удалённое администрирование#
RCON в Evrima - не Source RCON. Он говорит на собственном протоколе, так что rcon-cli, mcrcon и инструменты для Source из ваших закладок подключатся, а потом не сделают ничего полезного. Нужен клиент, написанный именно для The Isle; есть несколько community-инструментов и Discord-ботов, и каждый приличный предоставляет один и тот же набор операций: объявление всем, личное сообщение игроку, список онлайна, кик, бан, сохранение, переключение вайтлиста и общего чата, а также настройку появления AI без перезапуска.
Последнее - причина вообще включать RCON. Возможность объявить перезапуск, выгнать нарушителя и сохранить сервер, не сбрасывая всех, - это разница между модерацией сервера и его перезагрузкой.
Относитесь к паролю RCON как к паролю root, потому что по сути им он и является. Задайте значение, которое никто не угадает, никогда не вставляйте его в канал Discord и, если получится, не выставляйте порт RCON на весь интернет. Виды отказов разобраны в статье RCON безопасно; коротко - открытый порт RCON со слабым паролем это самый частый способ, которым игровой сервер захватывают. Если права админа нужны нескольким людям, дайте каждому собственный аккаунт в панели с ограниченными правами, а не один общий пароль на всех - идея изложена в статье субпользователи и минимальные привилегии.
Сохранения, обновления и вайпы#
Evrima пишет состояние игроков достаточно непрерывно, чтобы штатная остановка не теряла ничего существенного, но жёсткое убийство всё же может застать сервер посреди записи. Останавливайте из панели или посылайте процессу обычный сигнал завершения, а не убивайте контейнер.
- Делайте бэкап папки databases, а не всей установки.
TheIsle/Saved/Databases/- это прогресс ваших игроков. 15 ГБ игровых файлов можно заново скачать через SteamCMD за минуты; databases - нельзя. - Отдельно делайте бэкап `Game.ini` и храните копию вне сервера. После патча сервер может пересоздать его со значениями по умолчанию, а конфиг, который вы настраивали три месяца, стоит больше, чем кажется.
- Обновляйте сервер, как только выходит патч клиента. The Isle требует совпадения версий, так что устаревший сервер отклоняет всех игроков, и ваши постоянные найдут себе на вечер другой сервер. Задача по расписанию, которая запускает обновление SteamCMD перед ночным перезапуском, решает это за вас; разумные схемы есть в статье задачи по расписанию, которые стоит завести.
- Вайп - это удаление папки. Остановите сервер, сделайте бэкап, удалите содержимое папки databases, запустите. Конфиг, вайтлист и админы уцелеют, потому что лежат в другом месте. Объявляйте его за неделю: неанонсированные вайпы губят сообщества быстрее, чем лаги.
Бэкап, который ни разу не восстанавливали, - это гипотеза, а не бэкап. Иногда разворачивайте его на втором сервере и по-настоящему заходите в игру; как сделать это, не рискуя живым миром, объяснено в статье проверка восстановления до того, как оно понадобится.
На RE:NODE кнопка Restart посылает чистую остановку, слоты бэкапов есть в каждом тарифе, а восстановление - одна кнопка, и вкладка Schedules умеет связать бэкап и перезапуск в фиксированный час. Если сервер упирается в лимит памяти, контейнер останавливается и запускается заново начисто, а не оставляется работать со swap, и это ещё одна причина держать MaxPlayerCount и AIDensity в разумных пределах.
Диагностика#
Сервер работает, но его нет в браузере. Сначала поищите в логе ошибку входа в EOS, потом подождите пять минут, потом убедитесь, что порт запросов открыт по UDP. Именно в таком порядке: почти всегда дело в EOS или в терпении, а не в файрволе.
Игроки получают "version mismatch" или вылетают на экране загрузки. Сервер собран старше клиента, либо вы скачали без -beta evrima. Запустите SteamCMD заново с флагом ветки и validate.
Настройки в `Game.ini` ничего не делают. Либо неверен заголовок секции, либо сервер перезаписал файл, потому что работал, когда вы его правили. Остановите сервер, откройте файл, убедитесь, что написание заголовка в точности совпадает с [/Script/TheIsle.TIGameSession], сохраните, запустите.
Никто не может зайти на сервер с вайтлистом. bServerWhitelist=True при пустом или неверно оформленном блоке WhitelistIDs. Каждая запись должна быть голым 17-значным SteamID64 на отдельном повторяющемся ключе.
RCON подключается, но команды отклоняются. Аккаунта, которым вы пользуетесь, нет в AdminsSteamIDs, либо ваш инструмент говорит на Source RCON с сервером, который его не понимает.
Память растёт весь день, и к вечеру сервер падает. Либо число слотов выше того, что тариф выдерживает в пик, либо слишком велик AIDensity. Ночной перезапуск прячет симптом и всё равно полезен; как назначить его так, чтобы не раздражать людей, читайте в статье расписания перезапусков, которые помогают.
Сервер сам перезапускается снова и снова. Прежде чем что-то менять, прочитайте консоль: последние двадцать строк перед сбоем обычно говорят прямо. Частые причины разобраны в статьях как читать консоль и почему ваш игровой сервер постоянно перезапускается.
FAQ#
Нужно ли владеть The Isle, чтобы запустить сервер?
Нет. Выделенный сервер - это приложение 412680, оно скачивается через login anonymous, так что установке через SteamCMD не нужен аккаунт, владеющий игрой. Игра нужна, чтобы на нём играть.
Почему нужно использовать бета-ветку evrima?
Потому что ветка этого приложения по умолчанию всё ещё указывает на снятую с поддержки сборку Legacy. Все нынешние игроки на Evrima, так что сервер Legacy на практике недоступен. Добавьте -beta evrima в строку app_update и заново выполните validate.
Сколько RAM нужно серверу Evrima?
Около 6 ГБ для закрытой группы из двадцати человек, 8 ГБ для небольшого сообщества и 12 ГБ и больше для полной сотни слотов. Объём определяют плотность AI и число загруженных игроков, а не сама карта.
Можно ли ставить моды на сервер Evrima?
Поддерживаемого загрузчика модов нет. Серверы отличаются друг от друга конфигурацией, инструментами RCON, интеграцией с Discord и модерацией, а не модами.
Как сделать вайп, не потеряв конфигурацию?
Остановите сервер, сделайте бэкап и удалите содержимое TheIsle/Saved/Databases/. Game.ini, список админов и вайтлист лежат в папке конфигов и остаются нетронутыми.
Почему изменение GrowthMultiplier расстраивает игроков?
Потому что рост - единственное долгосрочное вложение, которого требует игра. Повышение или понижение множителя посреди цикла меняет ценность каждого часа, который игроки уже потратили. Меняйте его при вайпе и предупреждайте заранее.




Комментарии
Полностью анонимно: без аккаунта, без почты, без cookie. Мы храним имя, которое вы ввели, текст и время - больше ничего. Количество ссылок ограничено, разметка не отображается.