Enshrouded — игра в жанре RPG-фэнтези с открытым миром и возможностью кооперативного прохождения (одновременно до 16 игроков на сервере). Имеет крайне положительные обзоры на Stream (86%).
Плюсы:
Минусы:
Сюжет (погружение в историю — это чтение записок, сбор предметов)
Прохождение в одиночном режиме или компанией будет давать совершенно разный опыт и эмоции. На мой взгляд, разработчики делают упор именно на многопользовательскую игру на собственных серверах.
Актуальная версия на момент написания статьи — v0.8.0.1.
Минимальные требования:
В этой инструкции мы будем использовать облачный сервер Timeweb Cloud c фиксированной конфигурацией:
После создания сервера и подключения к нему нужно обновить пакеты и установить 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)».
dedic
Создадим 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 до 4playerManaFactor: 1
— Коэффициент маны от 0.25 до 4playerStaminaFactor: 1
— Коэффициент выносливости от 0.25 до 4enableDurability: true
— Включить износ снаряжения enableStarvingDebuff: false
— Включить голодfoodBuffDurationFactor: 1
— Действие эффектов еды от 0.5 до 2fromHungerToStarving: 600000000000
— Время до голода, от 300000000000 (5 минут) до 1200000000000 (20 минут)shroudTimeFactor: 1
— Коэффициент времени в пелене от 0.5 до 2tombstoneMode: "AddBackpackMaterials"
— Сохранение предметов при смерти enableGliderTurbulences: true
— Влияние ветра при планированииweatherFrequency: "Normal"
— Частота изменений погоды (Disabled
/Rare
/Normal
/Often
)miningDamageFactor: 1
— Коэффициент добычи руды от 0.5 до 2plantGrowthSpeedFactor: 1
— Коэффициент роста растений от 0.5 до 2resourceDropStackAmountFactor: 1
— Коэффициент добычи ресурсов от 0.5 до 2 factoryProductionSpeedFactor: 1
— Коэффициент времени производства от 0.5 до 2 perkUpgradeRecyclingFactor: 0.5
— Коэффициент рун при разборке оружия от 0 до 1 perkCostFactor: 1
— Коэффициент стоимости рун для улучшения 0.5 до 2experienceCombatFactor: 1
— Коэффициент опыта в бою 0.25 до 2experienceMiningFactor: 1
— Коэффициент опыта при добыче руды 0 до 2experienceExplorationQuestsFactor: 1
— Коэффициент опыта за исследования 0.25 до 2randomSpawnerAmount: "Normal"
— Количество врагов (Few
/Normal
/Many
/Extreme
)aggroPoolAmount: "Normal"
— Количество врагов, которые могут атаковать одновременно (Few
/Normal
/Many
/Extreme
)enemyDamageFactor: 1
— Коэффициент урона врагов, кроме боссов, от 0.25 до 5enemyHealthFactor: 1
— Коэффициент жизни врагов, кроме боссов, от 0.25 до 4enemyStaminaFactor: 1
— Коэффициент выносливости врагов, кроме боссов, от 0.25 до 2enemyPerceptionRangeFactor: 1
— Дальность обнаружения врагов, кроме боссов, от 0.25 до 2bossDamageFactor: 1
— Коэффициент урона боссов от 0.25 до 5bossHealthFactor: 1
— Коэффициент жизни боссов от 0.25 до 5threatBonus: 1
— Частота вражеских атак, кроме боссов, от 0.25 до 4pacifyAllEnemies: 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 в меню «Вид» → «Игровые серверы».
Выбираем вкладку «Избранное».
Выбираем игру по названию из выпадающего списка справа — Enshrouded.
Нажимаем внизу кнопку «+» и вводим внешний IP-адрес: порт
(15637), который получили при создании сервера.
В дальнейшим при запуске игры в разделе «Присоединиться» будет доступен ваш сервер Enshrouded.
Для обновления сервера игры необходимо подключиться к нему и перезапустить контейнер.
cd /opt/satisfactory
docker compose down
docker compose up -d
Разверните Enshrouded на своем сервере
Enshrouded — это уютная игра, которая позволяет расслабиться, отдохнуть и погрузиться в мир исследований и приключений.
Детальная конфигурация сервера дает возможность настроить игровой процесс под свои предпочтения. Например, можно упростить монотонные действия по добыче ресурсов или усилить силу противников, а творческих людей особо порадуют возможности строительства.
Игра может понравится широкому кругу пользователей, вне зависимости от возраста и пола. Попробуйте поиграть с друзьями, своей второй половинкой или детьми старше 12 лет.