KVA
PROJECT

Создай свой Minecraft сервер

Регистрация на платформе KVA даёт твоему серверу:

  • Единый auth — игроки регистрируются один раз, заходят везде через KVA Launcher
  • Анти-чит из коробки — наш Java-agent встроен в лаунчер, детектит Wurst/Meteor/Sigma и десятки других, HWID-bans
  • Cryptographic защиту от cracked-клиентов — vanilla MC физически не пройдёт handshake
  • Discovery — попадаешь в публичный server-browser сразу после verification

Шаг 1 — Установи KVA Launcher и зарегистрируйся

Лаунчер качается с главной. Запусти, нажми «Регистрация» — твой аккаунт сразу даёт доступ к management-панели.

Шаг 2 — Создай instance в admin-панели

Открой /admin/instances/new, заполни:

  • ID — slug в URL (a-z, 0-9, дефис)
  • Название, описание, MOTD — это покажется игрокам
  • MC версия + loader (NeoForge / Fabric / Forge / Quilt / Vanilla)
  • Адрес сервера — публичный host:port, куда подключатся игроки
  • Discord / Website (опц.) — отображаются на странице сервера

После создания твой сервер будет в статусе pending — видно только тебе, но не в публичном browser'е.

Шаг 3 — Настрой свой MC server для нашего auth

На странице instance после создания будет полная инструкция (вкладка setup-guide). Кратко:

3.1. Скачай authlib-injector

wget https://auth.kva-project.ru/api/launcher/authlib-injector.jar

(положи в одну папку с server.jar)

3.2. server.properties

online-mode=true
enforce-secure-profile=false

3.3. start.sh

java \
  -javaagent:authlib-injector.jar=https://auth.kva-project.ru/yggdrasil \
  -Xms4G -Xmx8G \
  -XX:+UseG1GC \
  -jar server.jar nogui

3.4. Запусти и проверь логи

В первых строках должно быть:

[authlib-injector] [INFO] Version: 1.2.7
[authlib-injector] [INFO] Authentication server: https://auth.kva-project.ru/yggdrasil
[authlib-injector] [INFO] Transformed [com.mojang.authlib.HttpAuthenticationService] ...

Шаг 4 — Verification

Когда сервер работает и принимает игроков, открой страницу setup-guide и нажми «Проверить». Наш probe подключится к твоему серверу как vanilla-клиент с фейковым accessToken — если authlib-injector правильно направляет hasJoined на нас, probe увидит callback в течение 8 секунд → статус verified.

После verified твой сервер появляется в публичном browser'е и игроки могут его найти.

Шаг 5 — Загрузи модпак (опц.)

Если у тебя моды — игроки получат их автоматически через лаунчер. На странице instance → раздел «Моды» загрузи jar'ы, нажми «Пересобрать манифест». Лимит: 100MB/файл, 5GB суммарно на owner'а.

Часто задаваемые

Зачем нужен authlib-injector?

Он патчит Mojang authlib в JVM сервера во время запуска, направляя auth-запросы на наш yggdrasil вместо sessionserver.mojang.com. Это позволяет твоему серверу работать в online-mode=true с нашими аккаунтами вместо Mojang.

Что если сервер не пройдёт verification?

Сообщение «online-mode=true, но сервер не зовёт наш yggdrasil» = authlib-injector не подцепился. Проверь путь к jar в -javaagent:, проверь что URL без typo. «online-mode=false» = поправь server.properties.

Анти-чит работает автоматически?

Да. Лаунчер инжектит наш kva-anticheat.jar в JVM клиента при каждом запуске MC. Детектит ~50 известных cheat-клиентов + bytecode patterns. При обнаружении — игроку bullshit-out, HWID авто-бан. Серверу делать ничего не надо.

Я могу заблокировать конкретных игроков?

Используй стандартные MC tools: /ban <name>. Auth-уровень — наш; модерация в игре — твоя.

Можно ли использовать сторонние anti-cheat плагины (Polar/Karhu/Vulcan)?

Да, рекомендуется как доп.слой. Наш agent ловит cheat-клиенты в JVM, server-side плагин ловит подозрительное движение/пакеты. Оба независимы и складываются.

Ограничения / правила

  • Сервер должен реально использовать наш yggdrasil (verification обязательна)
  • Storage quota 5 GB суммарно на твои instances (через лимит upload mods)
  • 5 регистраций сервера в сутки на юзера (anti-spam)
  • SSRF: server_addr не может быть приватным IP / .local / localhost
  • Re-probe ежедневно: если ты отключишь authlib-injector — мы это поймаем и снимем verified

+ Зарегистрировать сервер