SERVER / DEPLOYMENT

Руководство по настройке сервера

Полное руководство по TOKEN, переменным окружения, видимости в лобби и примерам запуска сервера.

Это руководство собирает наиболее важные переменные окружения, порядок запроса TOKEN и правила видимости в лобби при запуске сервера. Всё содержимое взято из существующего документа по настройке сервера и адаптировано для чтения на сайте.

1. Обзор

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

Внимание: любая переменная GAME_, тип которой является флагом наличия, считается включённой уже потому, что она определена, независимо от её значения. Чтобы отключить такую функцию, удалите строку полностью или не задавайте переменную.

2. Подготовка

  • Обязательно: запросите действительный TOKEN авторизации игры (GAME_TOKEN) у официальной команды. Без TOKEN нельзя запустить публичный сервер (авторизованный или официальный).
  • Подготовьте сервер с публичным IP-адресом или компьютер в локальной сети, если вам нужен только LAN-режим.
  • Установите Docker и Docker Compose (рекомендуется) либо убедитесь, что среда выполнения соответствует требованиям игры.
  • Отправьте запрос на TOKEN по адресу team@nextindie.cn.

Шаблон запроса TOKEN

Тема: Запрос TOKEN - IP: 127.0.0.1 (замените на ваш публичный IP)
Текст письма:
UID пользователя: ID вашей игровой учётной записи (должен быть указан точно, чтобы ускорить проверку)
Публичный IP: ваш публичный IP-адрес (он должен отвечать на ping, иначе запрос будет отклонён)
Назначение: укажите, для чего нужен сервер (например: личный сервер, сервер сообщества)
Регион сервера: укажите, где размещён сервер (например: Азия, Северная Америка)

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

3. Все настраиваемые параметры

3.1 Базовые настройки и авторизация

ПеременнаяТипПо умолчаниюОписание
GAME_NAMEСтрокаThe MesozicНазвание сервера, которое игроки видят в списке лобби
GAME_TOKENСтрокаПустоTOKEN авторизации игры. Его необходимо запросить у официальной команды. Без действительного TOKEN сервер не может быть зарегистрирован как публичный (авторизованный или официальный). Подробности см. в разделе 4.
GAME_AUTO_RESTARTФлаг наличияНетПри включении сервер автоматически перезапускается раз в сутки для повышения стабильности при длительной работе
GAME_ADMINSСтрокаНетID пользователей-администраторов сервера, разделённые запятыми, например 100001,10002,100003.

3.2 Сеть и тип подключения

ПеременнаяТипПо умолчаниюОписание
GAME_IPСтрока127.0.0.1Публичный IP-адрес сервера. Укажите его правильно, иначе другие игроки не смогут подключиться
GAME_HOSTФлаг наличияНетТолько для режима LAN. Если переменная задана, сервер автоматически определит локальный IP машины и проигнорирует GAME_IP. Сервер станет LAN-сервером и не появится в публичном списке
GAME_PORTЦелое число26666Порт прослушивания сервера (UDP). Убедитесь, что он открыт в брандмауэре
GAME_MAX_PLAYERSЦелое число64Максимальное количество игроков онлайн одновременно
GAME_GLOBALБулевоtrueОпределяет использование глобального узла матчмейкинга. Обычно следует оставлять true
GAME_PUBLICФлаг наличияfalseОпределяет, будет ли сервер публичным. Если переменная не задана, сервер остаётся приватным (с паролем или видимым только друзьям). Если задана, сервер станет публичным и появится в лобби при соблюдении требований TOKEN и Link
GAME_LINKФлаг наличияfalseПринудительно делает сервер приватным сервером (PRIVACY). Используйте это, если хотите создать приватную комнату с паролем. Приватные серверы обычно не публикуются или видны лишь ограниченному кругу игроков
GAME_NODEСтрокаASРегиональный узел, отображаемый игрокам для оценки задержки. Допустимые значения: AS (Азия), CN (Китай), NA (Северная Америка), SA (Южная Америка), EU (Европа), ME (Ближний Восток)

Приоритет типов подключения и их комбинации

Если задан GAME_LINK, сервер становится приватным сервером (PRIVACY). Даже если одновременно включён GAME_PUBLIC, сервер всё равно существует только как приватная комната с паролем.

Если ни одна из этих специальных переменных не задана, а GAME_PUBLIC включён вместе с действительным GAME_TOKEN, сервер регистрируется как авторизованный сервер (AUTHORIZE). Это основной способ для обычных игроков запустить публичный сервер.

Если GAME_PUBLIC не задан, сервер остаётся приватным независимо от наличия TOKEN и не отображается в публичном списке.

3.3 Игровые правила

ПеременнаяТипПо умолчаниюОписание
GAME_DEAD_TIMEЦелое число (секунды)1800Через сколько времени труп сгнивает и исчезает
GAME_START_GROWTHЧисло с плавающей точкой0.1Начальное значение роста нового персонажа (0.0 ~ 1.0)
GAME_MAX_GROWTHЧисло с плавающей точкой1.0Максимальное значение роста персонажа
GAME_SPEED_GROWTHЧисло с плавающей точкой1.0Множитель скорости роста
GAME_TEAMЦелое число6Максимальный размер команды
GAME_CHILDЦелое число0Сколько потомков или спутников игрок может иметь одновременно. 0 полностью отключает потомство
GAME_SAFEЦелое число (секунды)0Длительность защиты после появления нового персонажа
GAME_TEAM_DAMAGEФлаг наличияВключеноВключает урон по союзникам. Удалите переменную, если не хотите дружественный огонь
GAME_HATCHФлаг наличияВключеноРазрешает приглашённое вылупление и совместное размножение с другими игроками
GAME_EVOLФлаг наличияВключеноРазрешает эволюцию через яйца, то есть переход между стадиями через яйцо
GAME_PKФлаг наличияВыключеноВключает добровольные PvP-дуэли между игроками
GAME_ALT_TURNФлаг наличияВключеноРазрешает разворот на месте
GAME_MALE_REBIRTHФлаг наличияВключеноРазрешает возрождение через мужских персонажей
GAME_SINGLE_BREEDФлаг наличияВыключеноРазрешает одиночное вылупление без партнёра
GAME_ERA_REBIRTHФлаг наличияВыключеноРазрешает межэпоховое возрождение (поколенческое возрождение)
GAME_DOWNGRADE_REBIRTHФлаг наличияВыключеноРазрешает возрождение с откатом на более низкую стадию эволюции
GAME_LEARNФлаг наличияВключеноРазрешает изучение генов
GAME_CHILD_ATTRIBUTE_INHERITФлаг наличияВыключеноОпределяет, наследуют ли потомки характеристики родителей (это может привести к неограниченному росту параметров)

3.4 ИИ и экосистема

ПеременнаяТипПо умолчаниюОписание
GAME_MAX_AIФлаг наличияВключеноОпределяет, будут ли появляться динозавры экосистемы под управлением ИИ. Если отключить, на карте останутся только игроки
GAME_AI_MATEФлаг наличияВыключеноРазрешает ли спутнику под управлением ИИ следовать за игроком и помогать ему

3.5 Гены и мастерство

ПеременнаяТипПо умолчаниюОписание
GAME_CRAZYФлаг наличияВключеноРазрешает появление берсерк-генов
GAME_GENE_SKILLFULФлаг наличияВключеноВключает систему мастерства генов
GAME_KILL_SKILLFULФлаг наличияВыключеноОпределяет, даёт ли убийство других игроков мастерство

3.6 Игровые режимы (выберите один)

ПеременнаяТипОписание
GAME_MODE_SANDBOXФлаг наличияРежим песочницы: игроки свободно выбирают виды, а берсерк-гены отключены
GAME_MODE_EVOLФлаг наличияРежим эволюции: стартовые виды ограничены, эволюция через яйца принудительно включена, а более сильные существа открываются постепенно
GAME_MODE_PRIMEVALФлаг наличияПервобытный режим: берсерк-гены, откатное возрождение и одиночное вылупление принудительно включены, а мастерство генов отключено

Включайте только один режим. Если определить несколько режимов, более поздний перекроет предыдущие.

3.7 Настройки сложности

ПеременнаяТипПо умолчаниюОписание
GAME_SIMPLEФлаг наличияВыключеноВключает простую сложность (поколенческое возрождение, откатное возрождение и одиночное вылупление включены, приглашённое вылупление отключено)
GAME_NORMALФлаг наличияВыключеноВключает обычную сложность (включено только поколенческое возрождение)
GAME_HARDЦелое число0Напрямую задаёт уровень сложности и перекрывает две предыдущие переменные. Допустимые значения: 0=обычная, 1=простая, 2=очень лёгкая, 3=сложная, 4=хардкор

3.8 PVP / PVE (выберите один)

ПеременнаяТипОписание
GAME_PVPФлаг наличияВключает PVP-режим (игроки могут атаковать друг друга)
GAME_PVEФлаг наличияВключает PVE-режим (урон между игроками запрещён, но дуэли разрешены)

Выберите только один из этих режимов. Одновременное использование обоих не рекомендуется.

3.9 Карта

ПеременнаяТипПо умолчаниюОписание
GAME_MAPСтрокаTag первой встроенной карты игрыИдентификатор карты, например Oasis. Список доступных карт смотрите в официальной документации

3.10 Загрузка MOD

ПеременнаяТипПо умолчаниюОписание
GAME_MODSСтрокаНетНазвания MOD, которые нужно загрузить, перечисляются через запятую, например ModA,ModB. Убедитесь, что эти MOD правильно установлены в каталог сервера Data/Mods

4. Типы серверов и видимость в лобби

Тип сервераНеобходимые переменные окруженияОсобенности
LAN-сервер (LAN)Задайте GAME_HOSTПодключение доступно только в локальной сети. Сервер не отображается в публичном лобби
Приватный сервер (PRIVACY)Задайте GAME_LINK. TOKEN не требуетсяДля входа нужен пароль. Сервер по умолчанию остаётся приватным, хотя друзья могут подключаться напрямую другими способами. В публичном списке лобби он не отображается
Авторизованный сервер (AUTHORIZE)Задайте GAME_PUBLIC и укажите действительный GAME_TOKEN. Не задавайте GAME_HOST, GAME_LINK и GAME_OFFICIALЭто основной способ запустить публичный сервер. Сервер появится в лобби и будет помечен как авторизованный, сразу после официальных серверов

Ключевые напоминания

  • Если вы хотите, чтобы сервер отображался в лобби и был доступен для поиска всем игрокам, должны одновременно выполняться три условия: 1) включён GAME_PUBLIC, 2) указан действительный GAME_TOKEN и 3) не включены GAME_HOST и GAME_LINK.
  • Публичный сервер без действительного TOKEN будет заблокирован при регистрации и сообщит, что TOKEN сервера недействителен или истёк.
  • После запуска сервер отправляет heartbeat в лобби каждые 90 секунд, чтобы оставаться в списке. Если heartbeat прекращаются, сервер удаляется из списка, но уже подключённые игроки продолжают играть.

5. Пример конфигурации

5.1 Публичный авторизованный сервер (рекомендуется для личного хостинга)

# Базовые настройки
GAME_TOKEN=TOKEN_ЗАПРОШЕННЫЙ_У_ОФИЦИАЛЬНОЙ_КОМАНДЫ
GAME_NAME=The Mesozoic Dawn
GAME_AUTO_RESTART=1
GAME_ADMINS=100001,100002

# Сеть: публичный IP и порт
GAME_IP=203.0.113.10
GAME_PORT=26666
GAME_MAX_PLAYERS=100
GAME_PUBLIC=1
GAME_NODE=AS

# Правила (изменяйте по своему усмотрению)
GAME_CHILD=2
GAME_SAFE=30
GAME_TEAM=4
GAME_DEAD_TIME=1200
GAME_EVOL=1
GAME_AI_MATE=1

# Режим: песочница
GAME_MODE_SANDBOX=1

# Карта
GAME_MAP=Oasis