Сайт и OAuth

Профиль и S3

Java runtime

Проверьте S3 дерево:
Если Java уже скачана, но проверка падает, удалите только конкретный каталог {storageRoot}/runtimes/{runtimeId} и повторите запуск. Текущий storageRoot показан в настройках лаунчера. Не удаляйте весь userData, пока не сохранены пользовательские данные.

Classpath и аргументы

Custom authlib должна находиться в manifest/classpath Minecraft-сборки. Не добавляйте её через -javaagent: Guardian намеренно запрещает agents.

Guardian

Частая причина ложного нарушения — штатная native DLL отсутствует в build/runtime manifest. Добавьте файл в исходный каталог, пересоздайте manifest и опубликуйте оба объекта атомарно.

Minecraft завершился сразу

Проверьте последовательно:
  1. game.error и exit code на странице подготовки.
  2. Debug console launcher.
  3. logs/latest.log и crash-reports внутри каталога клиента.
  4. Полноту classpath.
  5. Соответствие Java версии.
  6. Наличие LWJGL natives и их DLL в manifest.
  7. Корректность mainClass и clientArgs.
  8. Работу custom authlib endpoint’ов.
GAME_EXIT_<code> означает, что Guardian работал, но Minecraft завершился с ненулевым кодом. Это не обязательно нарушение Guardian.

Игра не подключается к online-mode серверу

  • проверьте, что custom authlib JAR реально входит в classpath;
  • убедитесь, что launcher передал правильные username, UUID и access token;
  • проверьте /api/authlib/join и /api/authlib/hasJoined на backend;
  • сравните системное время клиента и сервера;
  • не используйте Microsoft endpoint’ы в собственной authlib сборки;
  • не пытайтесь исправить это добавлением -javaagent.

Остановка не работает

До запуска Java кнопка должна отменить BuildPreparationService. После события guardianStarted она завершает Guardian, а Job Object — всё дерево Minecraft. Если дочерний процесс остался, проверьте requireJobObject, событие guardianWarning и права Windows.

Auto-update launcher

  • приложение должно быть packaged;
  • GitHub repository публичный;
  • release соответствует выбранному releaseType;
  • версия release выше локальной;
  • приложены installer, .blockmap и latest.yml;
  • fallback S3 URL содержит generic update feed.

Что приложить к отчёту

  • версию launcher;
  • serverId, profile UUID и runtime ID;
  • текущие build/game status;
  • exit code Guardian и Minecraft;
  • безопасный фрагмент debug console;
  • соответствующие строки latest.log/crash report.
Удалите токены, cookie, HWID, signed URL query и персональные пути перед публикацией отчёта.