Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.
Создание сервера Enshrouded
- CPU: 4
- RAM: 8 Gb
- Disk: 20 Gb
- Network: от 50 Мбит (главное при выборе — задержка ответа от сервера (ping) в идеале до 50)
- Ports: 15367 tcp/udp
В этой инструкции мы будем использовать облачный сервер Simple-Server 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Создадим директорию, в которой будут расположены файлы сервера:
В качестве готового Docker-образа будем использовать проект «Enshrouded Dedicated Server with autoupdate (supervisord)».
Создадим 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=Simple-Server
- UPDATE_CRON=*/30 * * * *При первом запуске скачаются все необходимые файлы и обновления, и сервер поднимется со стандартными настройками.
После этого остановим контейнер и перейдем к настройкам:
Отредактируем конфигурационные файлы сервера.
nano game/server/enshrouded_server.jsonПример конфигурации enshrouded_server.json:**
**
{
"name": "Simple-Server",
"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 до 2factoryProductionSpeedFactor: 1— Коэффициент времени производства от 0.5 до 2perkUpgradeRecyclingFactor: 0.5— Коэффициент рун при разборке оружия от 0 до 1perkCostFactor: 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=Simple-Server
- 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После завершения настроек повторно запускаем контейнер:
Добавление в избранное Steam
Для добавления сервера в избранное:
- Переходим в приложении Steam в меню «Вид» → «Игровые серверы».
Переходим в приложении Steam в меню «Вид» → «Игровые серверы».
-
Выбираем вкладку «Избранное».
-
Выбираем игру по названию из выпадающего списка справа — Enshrouded.
-
Нажимаем внизу кнопку «+» и вводим внешний
IP-адрес: порт(15637), который получили при создании сервера.
Выбираем вкладку «Избранное».
Выбираем игру по названию из выпадающего списка справа — Enshrouded.
Нажимаем внизу кнопку «+» и вводим внешний IP-адрес: порт (15637), который получили при создании сервера.
В дальнейшим при запуске игры в разделе «Присоединиться» будет доступен ваш сервер Enshrouded.
Для обновления сервера игры необходимо подключиться к нему и перезапустить контейнер.
cd /opt/enshrouded
docker compose down
docker compose up -dНужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.