MAATRIX GAMES / Блог / Как поднять сервер Arma Reforger: пошаговая инструкция

Как поднять сервер Arma Reforger: пошаговая инструкция

MAATRIX GAMES

Надоело гонять Conflict или Game Master на чужих публичных серверах с рандомными админами и вечно занятыми слотами — логичный шаг завести свой. Только не путайте Arma Reforger с обычной Arma 3: это отдельная игра на новом движке Enfusion, у неё свой App ID, свой формат конфига в JSON вместо привычного .cfg, и даже система модов работает иначе. Разберём весь путь по шагам — от установки до автозапуска, без переноса привычек из старой Армы, которые тут просто не сработают.

Системные требования

Enfusion — движок молодой и всё ещё активно допиливается, поэтому требования к серверу чуть отличаются от привычной классики.

  • RAM: от 4 ГБ хватает для старта на камерных сценариях с небольшим числом игроков. На Conflict с активным ИИ, техникой и большой картой (Everon, Arland) закладывайте 6-8 ГБ — память там уходит не только на игроков, но и на симуляцию ботов и логику захвата точек.
  • CPU: как и большинство серверов Bohemia, Reforger слабо параллелится и упирается в частоту одного ядра быстрее, чем в их количество. Берите тариф с современным процессором и высокой одноядерной производительностью, а не просто побольше ядер.
  • Диск: SSD/NVMe обязателен. Сама игра с сервером весит заметно скромнее классической Arma 3 — ориентировочно от 15 ГБ с запасом под клиентские файлы, профили и логи (это ориентир, точный размер зависит от текущей версии и обновлений).
  • ОС: официально поддерживаются и Linux, и Windows Server. Ниже разберём Linux как более бюджетный и распространённый вариант у хостеров.
  • Сеть: белый IP обязателен — без него сервер не пройдёт регистрацию в бэкенде Bohemia и не появится в браузере серверов.

Если брать VPS у MAATRIX GAMES под Arma Reforger, тариф уже подобран под этот движок — не нужно на глаз прикидывать, хватит ли ресурсов под конкретный сценарий.

Установка сервера через SteamCMD

У дедик-сервера отдельный App ID — 1874900, он не совпадает с App ID самой игры (1874880) и качается независимо. Как и в большинстве серверов Bohemia, файлы дедика бесплатны и скачиваются анонимным логином в SteamCMD — покупать игру для хостинга не нужно.

Ставим SteamCMD и зависимости (Debian/Ubuntu):

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 curl unzip
useradd -m steam
su - steam
mkdir ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

Отдельный непривилегированный пользователь steam — та же логика, что и с любым другим игровым сервером на Linux: минимизирует ущерб, если через уязвимость доберутся до процесса.

Скачиваем сервер:

./steamcmd.sh +force_install_dir ~/reforger_server +login anonymous +app_update 1874900 validate +quit

Той же командой сервер обновляется после патчей — Bohemia катит апдейты Enfusion довольно часто, особенно пока движок обкатывается перед Arma 4, так что держите скрипт обновления под рукой и останавливайте сервис перед каждым app_update.

Поднять сервер Arma Reforger за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Базовая конфигурация config.json

В отличие от Arma 3 с текстовым server.cfg, здесь конфиг — обычный JSON-файл, который вы создаёте сами в корне папки сервера (например, ~/reforger_server/config.json).

{
  "bindAddress": "0.0.0.0",
  "bindPort": 2001,
  "publicAddress": "",
  "publicPort": 2001,
  "a2s": {
    "address": "0.0.0.0",
    "port": 17777
  },
  "rcon": {
    "address": "0.0.0.0",
    "port": 19999,
    "password": "supersecretpassword",
    "permission": "admin",
    "blacklist": [],
    "whitelist": []
  },
  "game": {
    "name": "Мой Arma Reforger сервер",
    "password": "",
    "passwordAdmin": "adminpassword",
    "admins": [],
    "scenarioId": "{ECC61978EDCC2B5A}Missions/23_Campaign.conf",
    "maxPlayers": 32,
    "visible": true,
    "crossPlatform": false,
    "supportedPlatforms": ["PLATFORM_PC"],
    "gameProperties": {
      "serverMaxViewDistance": 2500,
      "serverMinGrassDistance": 50,
      "networkViewDistance": 1500,
      "fastValidation": true,
      "battlEye": true
    },
    "mods": []
  }
}

Что важно на старте:

  • bindPort / publicPort — базовый игровой UDP-порт, по умолчанию 2001. Если сервер сидит на VPS с публичным IP напрямую на интерфейсе (как обычно у игровых хостеров), publicAddress можно оставить пустым, а publicPort держать равным bindPort.
  • scenarioId — GUID сценария плюс путь к .conf-файлу миссии внутри аддона. В примере выше — официальный сценарий Conflict на карте Everon. Точные ID остальных официальных сценариев (Game Master, Combat Ops и другие карты) удобнее смотреть по актуальному списку сценариев или запросить у клиента флагом -listScenarios — не подбирайте GUID вручную, ошибётесь на один символ, и сервер просто не поднимет миссию.
  • passwordAdmin и rcon.password — обязательно меняйте дефолтные значения, RCON даёт полный доступ к управлению сервером.
  • crossPlatform / supportedPlatforms — если хотите пускать игроков с консолей вместе с ПК, включайте кроссплей и добавляйте PLATFORM_XBL/PLATFORM_PSN в список.
  • fastValidation — должен быть true для публичных серверов, иначе Bohemia может не показать сервер в общем браузере.
  • mods — массив с модами сервера, о нём отдельно ниже.

Запуск сервера и работа с модами

Бинарник сервера — ArmaReforgerServer на Linux (без расширения) или ArmaReforgerServer.exe на Windows. Запускается он с указанием пути к конфигу:

./ArmaReforgerServer -config /home/steam/reforger_server/config.json -maxFPS 60 -profile /home/steam/reforger_server/profile

Разберём ключи:

  • -config — путь к config.json, обязательный параметр.
  • -maxFPS — ограничение частоты тиков сервера. Без него сервер попытается выжать максимум CPU, что на VPS с соседями по хосту не лучшая идея — держите значение в диапазоне 60-120.
  • -profile — папка, куда пишутся логи и крэш-дампы, полезно выносить её отдельно от рабочей директории сервера.

Главное отличие от Arma 3 — моды. У Reforger собственный воркшоп, встроенный прямо в клиент игры, а не Steam Workshop. Мод идентифицируется не числовым ID, а GUID (modId), который берётся со страницы мода в игровом воркшопе. Прописываете его в массиве mods конфига:

"mods": [
  {
    "modId": "5DBBF50E75CFA00F",
    "name": "Название мода",
    "required": true
  }
]

Сервер сам скачает и обновит перечисленные моды при старте — руками через SteamCMD их тащить не нужно, в отличие от сервера Arma 3, где моды качаются отдельной командой под App ID клиента и требуют ручного размещения ключей подписи.

Проброс портов

У Reforger три отдельных UDP-порта, и с ними куда проще, чем с диапазоном из пяти портов в Arma 3.

ПортПротоколНазначение
2001UDPОсновной игровой трафик (bindPort/publicPort)
17777UDPA2S-запрос — отображение сервера в браузере
19999UDPRCON — удалённое администрирование

Открываем на VPS:

sudo ufw allow 2001/udp
sudo ufw allow 17777/udp
sudo ufw allow 19999/udp

Порт RCON наружу лучше не светить всем подряд — если хостер позволяет, ограничьте его правилом файрвола до своего IP. Логика в целом похожа на другие тактические шутеры с упором на реализм — например, в Squad тоже отдельный игровой порт и отдельный query-порт под браузер серверов, только диапазон другой.

Автозапуск через systemd

Ручной запуск через SSH-сессию — плохая идея: закрыли терминал, процесс оборвался вместе с ним. На Linux правильный путь — systemd-юнит с автоперезапуском.

Создаём /etc/systemd/system/reforger.service:

[Unit]
Description=Arma Reforger Dedicated Server
After=network.target

[Service]
User=steam
WorkingDirectory=/home/steam/reforger_server
ExecStart=/home/steam/reforger_server/ArmaReforgerServer -config /home/steam/reforger_server/config.json -maxFPS 60 -profile /home/steam/reforger_server/profile
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Включаем и запускаем:

sudo systemctl daemon-reload
sudo systemctl enable reforger
sudo systemctl start reforger

Проверка статуса и логов:

sudo systemctl status reforger
journalctl -u reforger -f

С таким юнитом сервер сам поднимется после перезагрузки хоста или краша — не придётся вручную поднимать процесс, потому что в дискорде написали "сервер упал".

Поднять сервер Arma Reforger за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Частые вопросы

Нужно ли покупать Arma Reforger, чтобы поднять сервер?

Нет, дедик-сервер (App ID 1874900) бесплатен и скачивается анонимным логином в SteamCMD. Игра нужна только тем, кто подключается как игрок.

Чем Reforger отличается от сервера Arma 3?

Другой движок (Enfusion вместо RV), конфиг в JSON вместо server.cfg, свой воркшоп с модами по GUID вместо Steam Workshop, и другой набор портов. Держать оба сервера одновременно — обычная практика, если группа играет и в классику, и в новую часть; см. инструкцию по Arma 3.

Можно ли пускать на сервер игроков с консолей?

Да, если включить crossPlatform: true и добавить нужные платформы в supportedPlatforms — Reforger поддерживает кроссплей между ПК, Xbox и PlayStation.

Как обновить сервер после патча?

Останавливаете сервис (sudo systemctl stop reforger), запускаете ту же команду SteamCMD с +app_update 1874900 validate, затем стартуете сервис обратно.

Почему сервер не отображается в браузере серверов?

Чаще всего не открыт порт A2S (17777 UDP) либо game.visible в конфиге стоит false. Проверьте оба пункта и подождите пару минут после старта — регистрация в бэкенде Bohemia не мгновенная.

Можно ли запустить сервер на Windows?

Да, используется ArmaReforgerServer.exe, установка через SteamCMD аналогична, а для автозапуска вместо systemd — служба Windows или сторонний менеджер вроде NSSM.