Привязка аккаунта Nightbreak и токены
Загрузки контента, управляемого Nightbreak, используют общий токен аккаунта через MagmaCore. Привяжите сервер один раз, и каждый совместимый плагин MagmaGuy на нём будет использовать тот же токен.
Привязка сервера через браузер
- Выполните
/nightbreakloginбез токена — в игре или из консоли. - Сервер выведет ссылку на nightbreak.io и код, например
K7QF-9XMB. В игре ссылка кликабельна. - Откройте ссылку, войдите или создайте бесплатный аккаунт Nightbreak, убедитесь, что на странице показан тот же код, что и на сервере, и одобрите сервер.
- Через несколько секунд сервер сохранит токен вашего аккаунта, сообщит, к какому аккаунту он теперь привязан, и напомнит, что
/nightbreaklogoutотвязывает его. - Перезапустите сервер, чтобы завершить настройку.
Срок действия ссылки истекает через 30 минут. Если срок истёк или ссылка отклонена, выполните /nightbreaklogin снова, чтобы получить новую. Запуск новой привязки отменяет предыдущую.
На странице одобрения указаны сервер, плагин и версия Minecraft, от которых пришёл запрос. Если сервер находится в другой сети, а не в той, к которой привязан ваш токен, страница предупреждает, что привязка лишает доступа ваши серверы в старой сети на срок до 48 часов.
Одобрение передаёт серверу токен, который уже есть у вашего аккаунта, поэтому ранее привязанные серверы продолжают работать. Аккаунту без токена выдаётся новый. Если ваш токен был создан до появления привязки серверов, страница предлагает заменить его. Замена отключает все серверы, использовавшие старый токен, пока вы не привяжете их снова.
Сервер, у которого уже есть работающий токен, сам не переключается на другой аккаунт. После одобрения он оставляет старый токен и просит вас выполнить /nightbreaklogin confirm в течение 5 минут, чтобы переключиться. Если Nightbreak отклонил сохранённый токен, одобренная ссылка заменяет его сразу.
Вариант Recommended Setup в меню первоначальной настройки BetterStructures, FreeMinecraftModels, EternalTD, CannonRTP и ResurrectionChest запускает привязку за вас, если сервер ещё не привязан.
Если сервер не может связаться с nightbreak.io или привязка недоступна, команда сообщает об этом и направляет вас к способу с токеном ниже.
Как сгенерировать токен и привязать его к серверу
Способ с токеном по-прежнему работает, например для автоматизированных установок или когда привязку не удаётся запустить.
- Откройте страницу своего аккаунта Nightbreak.
- Сгенерируйте серверный токен, нажав кнопку Generate New Token.
- Скопируйте команду со страницы аккаунта и выполните её в игре:
/nightbreaklogin <token>
- Перезапустите сервер, чтобы завершить настройку токена.
Generate New Token заменяет предыдущий токен и делает его недействительным; это же действие используется для отзыва раскрытого токена. Существующие токены скрыты, и повторно скопировать их нельзя. Сохраните новую команду в безопасном месте и обновите каждый сервер, который использовал старый токен, или привяжите каждый из них снова с помощью /nightbreaklogin.
После сохранения токена — через привязку по ссылке или этой командой — совместимые плагины MagmaGuy на том же сервере смогут использовать его для проверок доступа и загрузок Nightbreak.
Сообщение об успешном входе подтверждает только локальное сохранение токена. Команда не выполняет немедленную проверку доступа с аутентификацией. Откройте меню контента или запросите разрешённую загрузку, чтобы убедиться, что Nightbreak принимает токен, а привязанный аккаунт имеет доступ к пакету.
Каждый загруженный плагин при следующем обращении к токену проверяет время изменения общего файла токена, поэтому он замечает новый токен без перезапуска. Перезапуск всё же остаётся рекомендуемым завершающим шагом, потому что часть работы при старте плагина — включая автоматические загрузки обновлений — выполняется только во время его включения.
Общее разрешение, зарегистрированное MagmaCore для этой команды — nightbreak.login, которое по умолчанию доступно операторам сервера, если администратор не изменит это.
Токены, выдаваемые Nightbreak, начинаются с nbk_. Если вы вставите что-то другое, команда предупредит и всё равно сохранит значение. Пустые значения и буквальный плейсхолдер YOUR_TOKEN_HERE отклоняются сразу.
Отвязка сервера
Чтобы отвязать сервер от его аккаунта Nightbreak, выполните:
/nightbreaklogout
Она использует то же разрешение nightbreak.login, что и вход. Она полностью удаляет plugins/MagmaCore/nightbreak.yml, а не обнуляет значение, поэтому в файле не остаётся копии токена. Загруженные плагины видят исчезновение файла при следующей проверке токена и без перезапуска возвращаются к поведению без привязки.
Используйте это перед передачей сервера кому-то другому, перед загрузкой копии сервера куда-либо или если подозреваете утечку токена. Выход убирает токен только с этого сервера — если он мог быть скомпрометирован, отзовите его ещё и на странице аккаунта Nightbreak.
Как привязать аккаунт Patreon или Itch к аккаунту Nightbreak
- Откройте страницу своего аккаунта Nightbreak.
- Прокрутите до раздела Linked Accounts и нажмите кнопку Link для сервиса, который хотите привязать.
- Вас перенаправит на сайт сервиса, где вам предложат войти, если вы ещё не вошли, а затем сразу откроется окно авторизации с запросом разрешить Nightbreak доступ к данным, необходимым для привязки аккаунтов.
- После привязки аккаунтов у вас должен появиться доступ к контенту, полученному через этот сервис, — как в аккаунте Nightbreak, так и в игре, если токен был настроен правильно.
Где хранится токен
Токен хранится в:
plugins/MagmaCore/nightbreak.yml
под ключом token, а не в приватной папке каждого плагина.
Это означает:
- вам не нужно регистрировать токен отдельно для каждого плагина
- переустановка одного плагина не обязательно приведёт к потере токена
- удаление общей конфигурации MagmaCore может потребовать повторной регистрации токена
Что разблокирует токен
Привязанный токен используется для:
- проверки доступа серверного аккаунта к пакету контента
- проверки метаданных удалённых версий для управляемых пакетов
- загрузки контента напрямую в папки импорта плагинов
- обнаружения устаревших установленных пакетов
- включения состояний меню настройки с поддержкой Nightbreak
- скачивания jar-файлов плагинов в игре — как обновлений плагинов, так и отсутствующих плагинов из
/nightbreak plugins. Nightbreak разрешает такие загрузки только сторонникам. Для обновлений плагинов это означает активную подписку сторонника на Patreon
Он не обходит специфичные для плагина требования, такие как:
- установка ресурс-пака
- включение пакета контента в меню настройки
- поддержание установленных зависимостей
Замечания по безопасности
- Храните токен как секретные данные для доступа к серверу.
- Не публикуйте его в общем чате, скриншотах или логах поддержки.
- Если вы считаете, что он был скомпрометирован, выполните
/nightbreaklogout, затем отзовите его на странице аккаунта Nightbreak и сгенерируйте новый. - MagmaCore предупреждает, если токен не начинается с
nbk_, но всё равно пытается его сохранить. - Одобряйте только те ссылки, которые вы запросили сами, и проверяйте, что код на странице совпадает с кодом вашего сервера. Любой, кто увидит код ссылки, может одобрить привязку этого сервера к своему собственному аккаунту, а ссылка, которую вам прислал кто-то другой, подключила бы его сервер к вашему аккаунту.
- Чтобы отменить привязку, выполните
/nightbreaklogoutна этом сервере. Чтобы лишить доступа сервер, который вы больше не контролируете, сгенерируйте новый токен на странице аккаунта. Старый токен тогда перестанет работать везде, поэтому снова привяжите свои серверы.
Устранение неполадок
"No token registered"
Плагин ещё не обнаружил действительный общий токен Nightbreak. Привяжите сервер снова командой /nightbreaklogin или /nightbreaklogin <token> и убедитесь, что plugins/MagmaCore/nightbreak.yml теперь содержит реальный токен, а не отсутствующее или заполнительное значение. Если файла вообще нет, значит токен либо никогда не регистрировался, либо кто-то выполнил /nightbreaklogout.
"The saved account token needs to be updated"
Nightbreak отклонил сохранённый токен, например потому, что его заменил более новый токен. Консоль записывает первый отказ с ответом сервера и скрывает последующие ошибки токена. Пока вы не зарегистрируете новый токен, загрузки контента, загрузки обновлений плагинов и установки плагинов в игре останавливаются с этим сообщением. Выполните /nightbreaklogin и одобрите ссылку, что сразу заменит отклонённый токен, или сгенерируйте новый токен на странице аккаунта Nightbreak и выполните /nightbreaklogin <token>.
/nightbreaklogin просит токен
Команду /nightbreaklogin регистрирует тот плагин Nightbreak, который загружается первым, а на этом сервере он вышел до появления привязки серверов, поэтому команда принимает только токен. Обновите плагины Nightbreak или воспользуйтесь способом с токеном.
Сервер не может начать привязку
Команда не смогла связаться с nightbreak.io, привязка сейчас недоступна, или сервер запросил слишком много ссылок за несколько минут. Сообщение называет причину и показывает способ с токеном. Подождите несколько минут и повторите попытку либо привяжите сервер с помощью токена.
Срок действия ссылки истёк или она отклонена
Выполните /nightbreaklogin снова, чтобы получить новую ссылку. Ссылка действует 30 минут, а сервер перестаёт ждать, как только кто-то отклонит её на странице.
Ссылка одобрена, но сервер сохранил старый аккаунт
У сервера уже был работающий токен. Выполните /nightbreaklogin confirm в течение 5 минут после одобрения, чтобы переключиться на новый аккаунт, или проигнорируйте это, чтобы оставить старый.
"You don't have access to this content"
Токен действителен, но привязанный аккаунт Nightbreak в данный момент не разблокирует этот пакет.
Один плагин работает, другой нет
Проверьте страницу настройки конкретного плагина. Некоторым плагинам всё ещё необходимо:
- завершить меню первоначальной настройки
- перезагрузка после импорта
- шаг установки ресурс-пака
- необязательная зависимость, такая как FreeMinecraftModels или ResourcePackManager