Top.Mail.Ru
Публичное облако на базе VMware с управлением через vCloud Director
Вход / Регистрация

Enshrouded: как создать сервер

Артур Акмалов
Артур Акмалов
Инженер по разработке
27 февраля 2025 г.
94
9 минут чтения
Средний рейтинг статьи: 4

Enshrouded — игра в жанре RPG-фэнтези с открытым миром и возможностью кооперативного прохождения (одновременно до 16 игроков на сервере). Имеет крайне положительные обзоры на Stream (86%).

Image1

Плюсы:

  • Атмосфера
  • Красивый открытый мир
  • Режим строительства (огромный простор для творчества)
  • Увлекательное совместное прохождение
  • Тонкие настройки игры (позволяют уменьшить гринд,  добавить голод, различные настройки окружения, противников, длительности времени дня и ночи)

Минусы:

  • Сюжет (погружение в историю — это чтение записок, сбор предметов)

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

Актуальная версия на момент написания статьи — v0.8.0.1.

Создание сервера Enshrouded 

Минимальные требования:

  • CPU: 4
  • RAM: 8 Gb
  • Disk: 20 Gb
  • Network: от 50 Мбит (главное при выборе — задержка ответа от сервера (ping) в идеале до 50)
  • Ports: 15367 tcp/udp

В этой инструкции мы будем использовать облачный сервер Timeweb Cloud c фиксированной конфигурацией:

  • ОС: Ubuntu 24.04
  • Регион: Москва (ping 28)
  • CPU:  4 x 3.3 ГГц
  • RAM: 8 ГБ
  • NVMe: 80 ГБ

После создания сервера и подключения к нему нужно обновить пакеты и установить Docker:

  
apt update && apt upgrade -y curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh

Создадим директорию, в которой будут расположены файлы сервера:

  
mkdir /opt/enshrouded

Перейдем в нее:

  
cd /opt/enshrouded

В качестве готового Docker-образа будем использовать проект «Enshrouded Dedicated Server with autoupdate (supervisord)».

Выделенные серверы

Выделенные серверы с готовыми и
индивидуальными конфигурациями.
Оборудование Supermicro, Intel, Gigabyte, ASRock,
дата-центры Tier III

Создадим compose.yaml со следующим содержанием:

  
services: enshrouded: container_name: enshrouded image: mornedhels/enshrouded-server:latest restart: unless-stopped stop_grace_period: 90s ports: - "15637:15637/udp" volumes: - ./game:/opt/enshrouded environment: - SERVER_NAME=Timeweb - UPDATE_CRON=*/30 * * * *

Запуск:

  
docker compose up -d

Проверка состояния:

  
docker compose ps

Проверка логов:

  
docker compose logs -f

При первом запуске скачаются все необходимые файлы и обновления, и сервер поднимется со стандартными настройками.

После этого остановим контейнер и перейдем к настройкам:

  
docker compose down

Отредактируем конфигурационные файлы сервера.

  
nano game/server/enshrouded_server.json

Пример конфигурации enshrouded_server.json:

  
{ "name": "TimeWeb", "saveDirectory": "./savegame", "logDirectory": "./logs", "ip": "0.0.0.0", "queryPort": 15637, "slotCount": 16, "voiceChatMode": "Proximity", "enableVoiceChat": false, "enableTextChat": false, "gameSettingsPreset": "Default", "gameSettings": { "playerHealthFactor": 1, "playerManaFactor": 1, "playerStaminaFactor": 1, "playerBodyHeatFactor": 1, "enableDurability": true, "enableStarvingDebuff": false, "foodBuffDurationFactor": 1, "fromHungerToStarving": 600000000000, "shroudTimeFactor": 1, "tombstoneMode": "AddBackpackMaterials", "enableGliderTurbulences": true, "weatherFrequency": "Normal", "miningDamageFactor": 1, "plantGrowthSpeedFactor": 1, "resourceDropStackAmountFactor": 1, "factoryProductionSpeedFactor": 1, "perkUpgradeRecyclingFactor": 0.5, "perkCostFactor": 1, "experienceCombatFactor": 1, "experienceMiningFactor": 1, "experienceExplorationQuestsFactor": 1, "randomSpawnerAmount": "Normal", "aggroPoolAmount": "Normal", "enemyDamageFactor": 1, "enemyHealthFactor": 1, "enemyStaminaFactor": 1, "enemyPerceptionRangeFactor": 1, "bossDamageFactor": 1, "bossHealthFactor": 1, "threatBonus": 1, "pacifyAllEnemies": false, "tamingStartleRepercussion": "LoseSomeProgress", "dayTimeDuration": 1800000000000, "nightTimeDuration": 720000000000 }, "userGroups": [ { "name": "Admins", "password": "secret1", "canKickBan": true, "canAccessInventories": true, "canEditBase": true, "canExtendBase": true, "reservedSlots": 1 }, { "name": "Friends", "password": "secret2", "canKickBan": false, "canAccessInventories": true, "canEditBase": true, "canExtendBase": true, "reservedSlots": 3 }, { "name": "Guests", "password": "secret3", "canKickBan": false, "canAccessInventories": false, "canEditBase": false, "canExtendBase": false, "reservedSlots": 0 } ] }

Рассмотрим параметры в блоке gameSettings (Настройки игры) подробнее:

  • playerHealthFactor: 1 — Коэффициент здоровья от 0.25 до 4
  • playerManaFactor: 1 — Коэффициент маны от 0.25 до 4
  • playerStaminaFactor: 1 — Коэффициент выносливости от 0.25 до 4
  • enableDurability: true — Включить износ снаряжения 
  • enableStarvingDebuff: false — Включить голод
  • foodBuffDurationFactor: 1 — Действие эффектов еды от 0.5 до 2
  • fromHungerToStarving: 600000000000 — Время до голода, от 300000000000 (5 минут) до 1200000000000 (20 минут)
  • shroudTimeFactor: 1 — Коэффициент времени в пелене от 0.5 до 2
  • tombstoneMode: "AddBackpackMaterials" — Сохранение предметов при смерти 
  • enableGliderTurbulences: true — Влияние ветра при планировании
  • weatherFrequency: "Normal" — Частота изменений погоды (Disabled/Rare/Normal/Often)
  • miningDamageFactor: 1 — Коэффициент добычи руды от 0.5 до 2
  • plantGrowthSpeedFactor: 1 — Коэффициент роста растений от 0.5 до 2
  • resourceDropStackAmountFactor: 1 — Коэффициент добычи ресурсов от 0.5 до 2 
  • factoryProductionSpeedFactor: 1 — Коэффициент времени производства от 0.5 до 2 
  • perkUpgradeRecyclingFactor: 0.5 — Коэффициент рун при разборке оружия от 0 до 1 
  • perkCostFactor: 1 — Коэффициент стоимости рун для улучшения 0.5 до 2
  • experienceCombatFactor: 1 — Коэффициент опыта в бою 0.25 до 2
  • experienceMiningFactor: 1 — Коэффициент опыта при добыче руды 0 до 2
  • experienceExplorationQuestsFactor: 1 — Коэффициент опыта за исследования 0.25 до 2
  • randomSpawnerAmount: "Normal" — Количество врагов (Few/Normal/Many/Extreme)
  • aggroPoolAmount: "Normal" — Количество врагов, которые могут атаковать одновременно (Few/Normal/Many/Extreme)
  • enemyDamageFactor: 1 — Коэффициент урона врагов, кроме боссов, от 0.25 до 5
  • enemyHealthFactor: 1 — Коэффициент жизни врагов, кроме боссов, от 0.25 до 4
  • enemyStaminaFactor: 1 — Коэффициент выносливости врагов, кроме боссов, от 0.25 до 2
  • enemyPerceptionRangeFactor: 1 — Дальность обнаружения врагов, кроме боссов, от 0.25 до 2
  • bossDamageFactor: 1 — Коэффициент урона боссов от 0.25 до 5
  • bossHealthFactor: 1 — Коэффициент жизни боссов от 0.25 до 5
  • threatBonus: 1 — Частота вражеских атак, кроме боссов, от 0.25 до 4
  • pacifyAllEnemies: false — Враги не будут атаковать игрока, если не напасть на них
  • tamingStartleRepercussion: "LoseSomeProgress" — Прогресс приручения домашних животных, если напугать
  • dayTimeDuration: 1800000000000 — Длительность дня от 2 до 60 минут
  • nightTimeDuration: 720000000000 — Длительность ночи от 2 до 60 минут

Настройки доступа и учетных записей необходимо указать в переменных в файле compose.yaml в блоке environment.

Основные переменные:

  • SERVER_NAME = "enshrouded" — Имя сервера.
  • SERVER_SLOT_COUNT = 16 — Максимальное количество игроков на сервере.
  • SERVER_QUERY_PORT = 15637 — Номер порта сервиса.
  • SERVER_IP = "0.0.0.0" — IP-адрес сервера.
  • SERVER_SAVE_DIR = "./savegame" — Директория сохранений.
  • SERVER_LOG_DIR = "./logs" — Директория логов.
  • SERVER_VOICE_CHAT_MODE = "Proximity" — Режим голосового чата. Proximity — будут слышать только игроки поблизости, Global — глобальный чат для всех игроков на сервере.
  • SERVER_ENABLE_VOICE_CHAT = false — Включить/выключить голосовой чат; по умолчанию выключен.
  • SERVER_ENABLE_TEXT_CHAT = false — Включить/выключить текстовый чат; по умолчанию выключен.
  • UPDATE_CRON = "" — Расписание обновлений мира, равносильно переоткрытию игру в одиночном режиме, восстановлению ресурсов, изменений на глобальной карте.
  • UPDATE_CHECK_PLAYERS = false — Проверять подключенных игроков перед обновлением; по умолчанию выключено.
  • BACKUP_CRON = "" — Расписание резервного копирования.
  • BACKUP_DIR = "./backup" — Директория для резервных копий.
  • BACKUP_MAX_COUNT = 0 — Максимальное количество хранимых резервных копий.

Пример файла docker-compose.yml с блоком environment:

  
services: enshrouded: image: mornedhels/enshrouded-server:latest container_name: enshrouded restart: unless-stopped stop_grace_period: 90s ports: - "15637:15637/udp" volumes: - ./game:/opt/enshrouded environment: - SERVER_NAME=Timeweb - SERVER_ROLE_0_NAME=Admins - SERVER_ROLE_0_PASSWORD=secret1 - SERVER_ROLE_0_CAN_KICK_BAN=true - SERVER_ROLE_0_CAN_ACCESS_INVENTORIES=true - SERVER_ROLE_0_CAN_EDIT_BASE=true - SERVER_ROLE_0_CAN_EXTEND_BASE=true - SERVER_ROLE_0_RESERVED_SLOTS=1 - SERVER_ROLE_1_NAME=Friends - SERVER_ROLE_1_PASSWORD=secret2 - SERVER_ROLE_1_CAN_ACCESS_INVENTORIES=true - SERVER_ROLE_1_CAN_EDIT_BASE=true - SERVER_ROLE_1_CAN_EXTEND_BASE=true - SERVER_ROLE_1_RESERVED_SLOTS=3 - SERVER_ROLE_2_NAME=Guests - SERVER_ROLE_2_PASSWORD=secret3

После завершения настроек повторно запускаем контейнер:

  
docker compose up -d

Добавление в избранное Steam

Для добавления сервера в избранное:

  1. Переходим в приложении Steam в меню «Вид» → «Игровые серверы».

Image3

  1. Выбираем вкладку «Избранное».

  2. Выбираем игру по названию из выпадающего списка справа — Enshrouded.

  3. Нажимаем внизу кнопку «+» и вводим внешний IP-адрес: порт (15637), который получили при создании сервера.

Image2

В дальнейшим при запуске игры в разделе «Присоединиться» будет доступен ваш сервер Enshrouded.

Обновление сервера

Для обновления сервера игры необходимо подключиться к нему и перезапустить контейнер. 

  
cd /opt/satisfactory docker compose down docker compose up -d

Разверните Enshrouded на своем сервере

  • Premium 3.3 ГГц
  • High CPU 5.5 ГГц
  • Dedicated CPU
Москва
Cloud MSK 15

300 ₽/мес

Процессор
1 x 3.3 ГГц
Память
1 ГБ
NVMe
15 ГБ
Канал
1 Гбит/с
Публичный IP
Cloud MSK 30

550 ₽/мес

Процессор
1 x 3.3 ГГц
Память
2 ГБ
NVMe
30 ГБ
Канал
1 Гбит/с
Публичный IP

Итоги

Enshrouded — это уютная игра, которая позволяет расслабиться, отдохнуть и погрузиться в мир исследований и приключений. 

Детальная конфигурация сервера дает возможность настроить игровой процесс под свои предпочтения. Например, можно упростить монотонные действия по добыче ресурсов или усилить силу противников, а творческих людей особо порадуют возможности строительства.

Игра может понравится широкому кругу пользователей, вне зависимости от возраста и пола. Попробуйте поиграть с друзьями, своей второй половинкой или детьми старше 12 лет.

Хотите внести свой вклад?
Участвуйте в нашей контент-программе за
вознаграждение или запросите нужную вам инструкцию
img-server
27 февраля 2025 г.
94
9 минут чтения
Средний рейтинг статьи: 4
  • Ваш комментарий
  • Предпросмотр
Пока нет комментариев
Произошла неизвестная ошибка
Мы используем на сайте куки.
В интернете без них никак