Проблемы с кластерами серверов ARK: Survival Evolved
Кластер в ARK: Survival Evolved — штука капризная: всё вроде настроено одинаково на всех картах, а обелиск на трансфере то зависает, то съедает половину инвентаря, то вообще не видит соседний сервер. Обычно дело не в проклятии Уайлдкард, а в паре конкретных параметров запуска, которые либо не совпадают между серверами, либо указывают не туда. Разберём по порядку, что чаще всего ломается и как это чинится руками, а не перезапуском "на всякий случай".
Содержание
- Как вообще работает кластер в ARK
- ClusterID: главная причина, почему сервера не видят друг друга
- -ClusterDirOverride: общая папка, без которой трансфер физически невозможен
- Трансферы не проходят: чек-лист диагностики
- Потеря дино и предметов при переносе: почему это случается
- Пошаговая настройка кластера с нуля
Как вообще работает кластер в ARK
Кластер — это не отдельный режим сервера, а просто договорённость нескольких независимых инстансов ARK о том, что они пускают друг к другу игроков через обелиски (или Cross-ARK трансфер-комнаты на некоторых картах) с сохранением персонажа, приручённых дино и инвентаря. Технически это работает так: при трансфере сервер-источник сохраняет данные игрока во временный файл в общей папке, а сервер назначения читает этот файл при следующем входе игрока. Никакой магии, никакого общего процесса — только файлы в общем каталоге и совпадающий идентификатор кластера.
Отсюда и все типовые проблемы: если оба сервера не видят одну и ту же папку, или идентификатор кластера у них разный хотя бы на один символ, трансфер либо не начнётся, либо данные потеряются где-то между "сохранил" и "прочитал".
ClusterID: главная причина, почему сервера не видят друг друга
ClusterID — это строка-пароль кластера, которая передаётся в параметрах запуска сервера. Все сервера, которые должны обмениваться персонажами и дино, обязаны запускаться с абсолютно одинаковым значением, включая регистр букв.
Пример запуска для карты The Island:
TheIsland?listen?SessionName=MyCluster_TheIsland?Port=7777?QueryPort=27015 -server -log -ClusterID=maat_cluster -ClusterDirOverride="ArkClusterTransfer" -NoTransferFromFiltering
И для второй карты (Ragnarok), которая входит в тот же кластер:
Ragnarok?listen?SessionName=MyCluster_Ragnarok?Port=7778?QueryPort=27016 -server -log -ClusterID=maat_cluster -ClusterDirOverride="ArkClusterTransfer" -NoTransferFromFiltering
Обратите внимание: ClusterID=maat_cluster одинаковый в обоих случаях, а SessionName, Port и QueryPort — разные, потому что это разные сервера. Частая ошибка новичков — скопировать строку запуска с одного сервера на другой и забыть поменять порты, но оставить старый ClusterID от тестового кластера. В логах это никак явно не помечается как ошибка — сервер просто запустится и будет жить в своём изолированном кластере, а трансфер молча откажется работать, потому что для игры это будет "чужой" кластер.
Если у вас несколько кластеров на одной инфраструктуре (например, PvE-кластер отдельно от PvP), убедитесь, что ClusterID у них действительно разные — иначе получите обратную проблему: сервера из разных пулов начнут принимать трансферы друг от друга, а это обычно не то, что задумывалось.
Поднять сервер ARK: Survival за пару минут
Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.
Создать сервер-ClusterDirOverride: общая папка, без которой трансфер физически невозможен
-ClusterDirOverride="ИмяПапки" задаёт каталог, куда сервер пишет и откуда читает файлы трансфера (.arktribe, .arkprofile и файлы приручённых дино). По умолчанию, без этого параметра, ARK использует системную временную папку, и на большинстве хостингов, где каждый инстанс сервера живёт в изолированном окружении, соседний сервер физически не может до неё достучаться — трансфер зависает на экране загрузки или откатывает игрока обратно.
Что нужно проверить:
- Путь у всех серверов кластера должен указывать на реально общий каталог — либо на одной машине с несколькими серверами это может быть относительный путь рядом с
ShooterGame/Binaries/Win64/, либо на распределённой инфраструктуре — общий сетевой диск или примонтированный shared-каталог. - Учётная запись/процесс, от которого запущен сервер, должна иметь права на запись в этот каталог. На Linux-сборках через SteamCMD это частая причина: сервер стартовал от другого пользователя, чем при первом создании папки, и не может туда писать.
- Если сервера крутятся в отдельных Docker-контейнерах или на разных физических машинах без общего тома —
-ClusterDirOverrideсам по себе не поможет, нужен именно смонтированный общий storage (NFS, сетевая папка) на все инстансы.
Проверить, что папка реально используется, просто: зайдите на трансфере, откройте лог сервера (ShooterGame/Saved/Logs/ShooterGame.log) и поищите строки со словом Cluster — рабочий сервер при старте явно пишет, какой ClusterID и директорию он использует.
Трансферы не проходят: чек-лист диагностики
Если игрок заходит в обелиск, но трансфер зависает, откатывает или пишет ошибку — проходите по пунктам по порядку, обычно причина находится в первых трёх:
- Сверить
ClusterIDпосимвольно на всех серверах кластера — опечатка или разный регистр ломают всё молча. - Сверить
-ClusterDirOverride— путь должен физически указывать на одну и ту же папку с обеих сторон. - Проверить права на запись в эту папку у процесса сервера.
- Проверить версию игры и модов — сервера должны быть на одной версии ARK и с идентичным набором Workshop-модов (тот же порядок и те же ID в
-mods=), иначе трансфер данных, зависящих от контента модов, будет отбрасываться. - Проверить настройки трансфера в
GameUserSettings.ini— секция[ServerSettings]:PreventDownloadSurvivors,PreventDownloadItems,PreventDownloadDinosне должны быть выставлены вTrue, если вы хотите разрешить перенос соответствующих сущностей. - Убедиться, что оба сервера онлайн в момент трансфера — если сервер назначения лежит, клиент застревает на загрузке, а не получает внятную ошибку.
Отдельно стоит проверить -NoTransferFromFiltering — этот параметр отключает проверку "разрешён ли трансфер именно с этой карты", она полезна, если у вас нестандартная топология кластера (например, звезда вместо привычной цепочки карт), но по умолчанию можно обойтись и без неё.
Потеря дино и предметов при переносе: почему это случается
Даже когда кластер настроен верно, иногда трансфер "съедает" часть контента. Самые частые причины по опыту эксплуатации:
- Обрыв соединения в момент записи файла трансфера. Файл
.arktribeпишется не мгновенно, и если сервер-источник упал или перезапустился ровно в этот момент, файл может оказаться битым или неполным. Тут не поможет ничего, кроме бэкапов — регулярно сохраняйтеShooterGame/Saved/SavedArks(или отдельно каталог кластера) по расписанию, до трансфера, а не после. - Разные версии модов на серверах кластера. Если дино приручен с использованием мода (например, кастомная порода из модовой карты), а на сервере назначения этого мода нет — игра просто не знает, что делать с сущностью, и она теряется или превращается в "битого" дино без нужных данных.
- Лимиты по количеству переносимых существ и предметов. В
GameUserSettings.iniестьClusterDinoTransferLimit*— если у вас выставлены лимиты по классу дино, часть каравана вагонов может не поместиться и остаться на исходном сервере (что тоже выглядит как "потеря", хотя формально ничего не сломано). - Переполненный инвентарь на сервере назначения. Если у персонажа/дино на входе нет свободных слотов, часть предметов может не примениться при синхронизации — это больше похоже на баг клиента, чем на проблему кластера, но он воспроизводится стабильно на некоторых сборках игры.
Если пропажа систематическая, а не разовая — почти наверняка это версия/моды, а не баг трансфера как такового. Разовые потери чаще всего связаны с падением сервера или сети именно в момент переноса.
Пошаговая настройка кластера с нуля
Если вы разворачиваете кластер впервые, порядок действий такой:
- Определитесь с
ClusterID— любая уникальная строка без пробелов, напримерmycluster2026. - Создайте общий каталог для трансферов (или убедитесь, что он доступен на запись всем серверам).
- Пропишите одинаковый
-ClusterIDи-ClusterDirOverrideв строке запуска каждого сервера кластера. - Убедитесь, что все сервера на одной версии ARK и с одинаковым набором модов (сверьте
-mods=построчно). - В
GameUserSettings.iniкаждого сервера проверьте секцию[ServerSettings]— трансфер-настройки (PreventDownloadSurvivors/Items/Dinos) должны быть согласованы с тем, что вы хотите разрешить. - Перезапустите все сервера кластера и протестируйте перенос тестовым персонажем через ближайший обелиск, прежде чем открывать вход игрокам.
Таблица частых параметров запуска, которые чаще всего путают:
| Параметр | За что отвечает | Должен ли совпадать между серверами |
|---|---|---|
-ClusterID | Идентификатор кластера | Да, точно |
-ClusterDirOverride | Папка для файлов трансфера | Да, физически одна папка |
-mods= | Список модов и их порядок | Да, полностью |
SessionName | Имя сервера в списке | Нет, у каждого своё |
Port / QueryPort | Сетевые порты | Нет, у каждого свои |
Если разворачиваете несколько карт на одном арендованном сервере под одним IP, не забудьте развести порты — иначе вторая карта просто не поднимется из-за занятого сокета. Базовые шаги по запуску одиночного сервера ARK разобраны в статье Как поднять сервер ARK: Survival, а если проблема именно в крашах на трансфере между картами — там свои нюансы, разобранные в Краш при телепортации между картами.
Поднять сервер ARK: Survival за пару минут
Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.
Создать серверЧастые вопросы
Можно ли объединить в кластер сервера ARK: Survival Evolved и ARK: Survival Ascended?
Нет, это технически разные игры с несовместимым форматом сохранений — трансфер работает только внутри одной версии игры.
Обязательно ли все карты кластера держать на одном физическом сервере?
Нет, если у вас есть общий доступный на запись каталог (сетевой диск, shared-том) для всех инстансов — но на практике проще и надёжнее держать кластер на одной машине или у одного провайдера, чтобы не ловить задержки и обрывы сети на самом чувствительном месте — записи файла трансфера.
Почему трансфер работает у одних игроков и не работает у других на том же кластере?
Обычно это локальный кэш модов на клиенте — попросите игрока проверить в Steam Workshop, что подписка на все моды кластера активна и файлы не битые, либо попробовать переподписаться.
Как понять, что кластер настроен правильно, ещё до открытия сервера игрокам?
Создайте тестового персонажа, дойдите до обелиска, сделайте трансфер туда и обратно — если персонаж и инвентарь возвращаются без потерь дважды подряд, конфигурация рабочая.
Нужно ли перезапускать оба сервера при смене ClusterID?
Да, изменение вступает в силу только при следующем запуске — "горячей" смены параметров запуска в ARK не бывает.