Identica

Первоначальная настройка

Измените значения по умолчанию, которые любой сети нужно поменять до того, как зайдут игроки.

Файлы, которые Identica создаёт при первом запуске, работают и без изменений, но в них указаны примеры серверов и имён хостов. Выполните эти шаги при остановленном прокси, затем запустите его и зайдите на сервер.

В примерах используется YAML. Каждая настройка подробно описана в разделе Конфигурация.

Настройте Identica

Выберите провайдеры и задайте их порядок

Откройте providers/providers.yml. Каждая запись настраивает один установленный провайдер:

providers:
  - id: "credential"
    displayName: "Credential"
    enabled: true
    priority: 50
    entrypoints: []

  - id: "premium"
    displayName: "Premium"
    enabled: true
    priority: 100
    entrypoints: []
  • enabled включает или выключает провайдер. Выключите провайдер, который ваша сеть не должна предлагать.
  • priority решает между провайдерами, у которых одинаково веские причины обслужить игрока; побеждает большее значение. Большинству сетей нужен Premium раньше Credential: игрок с лицензионным аккаунтом входит через него.
  • entrypoints перечисляет имена хостов, которые выбирают провайдер, например premium.example.com. Сгенерированные записи — лишь примеры: замените их своими именами хостов или очистите списки, если все игроки заходят по одному адресу.

Порядок выбора подробно описан на странице Как выбирается провайдер.

Выберите, как игроки входят

Откройте engine.yml. У каждого сценария есть choice — кто выбирает, как игрок входит или регистрируется, когда это может сделать больше одного провайдера.

  • AUTOMATIC: выбирает Identica, а у игрока запрашивает только то, что нужно выбранному провайдеру, например пароль.
  • PROMPTED: провайдер выбирает игрок. Если выбирать можно только из одного провайдера, никого не спрашивают.

Для регистрации проще начать с PROMPTED. При AUTOMATIC новому игроку, который заходит с пиратского (офлайн) клиента, но с ником лицензионного аккаунта, сначала предлагается лицензионный вход. Его клиент не может его пройти, поэтому при первом входе игрока отключает с сообщением о недействительной сессии. При PROMPTED тот же игрок вместо этого сам выбирает провайдер. Способ определения CLIENT_PROFILE провайдера Premium избавляет от такого отключения для клиентов 1.19.1 и новее в обоих случаях.

scenarios:
  registration:
    choice: "PROMPTED"

Оба значения подробно описаны на странице Выбор провайдера.

Направьте маршрутизацию на свои серверы

Откройте routing.yml. Пока Identica ждёт игрока — например, ввода пароля, — она отправляет его на цель step, а после входа — на цель complete. Значения по умолчанию, auth и survival, — лишь примеры. Укажите имена серверов из конфигурации вашего прокси:

defaults:
  step:
    target: "auth"
  complete:
    target: "lobby"

Отдельный сервер для входящих игроков держит их подальше от остальной сети, пока они не закончат вход. Если хостинг ограничивает число серверов, которые можно запустить, целью step может стать лёгкий лимбо-сервер, например PicoLimbo, — без полноценного сервера.

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

Не выпускайте игроков из процесса входа

Блокируйте команды и чат, пока игроки не вошли

Identica определяет, кто такой игрок. Она не мешает игроку, который ещё не вошёл, вводить команды — например, переходить на другой сервер — и видеть чат. Используйте плагин, который сдерживает их, пока игрок не войдёт.

Identica-CommandBlocker и Identica-ChatBlocker делают именно это и пропускают собственные команды Identica. См. Аддоны от сообщества.

Передвижение и ломание блоков на сервере step — забота бэкенда; на лимбо-сервере этой проблемы нет, потому что там нет мира, который можно изменить.

Проверьте остальное

Несколько значений по умолчанию стоит проверить до того, как придут игроки:

Запустите прокси и зайдите на сервер

Запустите прокси и зайдите на сервер. Новому игроку предложат зарегистрироваться; после регистрации его отправят на цель complete.

После последующих изменений /identica admin reload перечитывает файлы без перезапуска. Что требует перезапуска, описано в разделе Перезагрузка.

Если что-то работает не так, как ожидалось, загляните на страницу Решение проблем или попросите помощи, как описано на странице Поддержка.

На этой странице