DGuard

ViaVersion: как пускать игроков с других версий Minecraft

Клиенты новее сервера — ViaVersion. Старее — ViaVersion и ViaBackwards. Совсем старые 1.7–1.8 — ещё и ViaRewind. Если на сервере есть античит, ставьте Via на игровой сервер, а не на прокси.

Команда DGuard5 мин

Сервер Minecraft пускает только клиентов своей версии. ViaVersion переводит протокол на лету и пускает клиентов новее сервера. Чтобы заходили клиенты старее сервера, рядом ставят ViaBackwards, для 1.7.x–1.8.x — ещё и ViaRewind. Все три — плагины одной команды разработчиков, ставятся в plugins/ и работают без настройки.

Какой плагин нужен

Игроки заходят с…Что поставить
Версий новее сервераViaVersion
Версий старее сервера, вплоть до 1.9ViaVersion + ViaBackwards
1.7.x–1.8.xViaVersion + ViaBackwards + ViaRewind
По README ViaVersion. ViaBackwards не работает без ViaVersion, ViaRewind — без них обоих.

Пример: сервер на 1.21.11. Чтобы заходили игроки с 26.x, хватит ViaVersion. Чтобы пускать ещё и клиентов 1.21.4, нужен ViaBackwards. Не уверены, что ставить, — у разработчиков есть подборщик: выбираете версию сервера и клиентов, он называет плагины.

Установка

  1. 1

    Скачайте с Hangar

    Официальные релизы плагинов — на Hangar: ViaVersion, ViaBackwards, ViaRewind. Dev-сборки лежат на Jenkins разработчиков, но для боевого сервера берите релизы.

  2. 2

    Положите в plugins/ и перезапустите

    Именно перезапуск: разработчики прямо пишут, что перезагрузка через /reload хуже, а с менеджерами плагинов Via корректно работать не будет. Подробно — как установить плагин.

  3. 3

    Проверьте лог и игроков

    Прочитайте лог запуска на ошибки. /viaversion list покажет, кто из игроков с какой версии зашёл. Права на команды — viaversion.admin.

Нужна Java 17 или новее; разработчики предупреждают, что позже потребуется Java 21. Для Paper это не проблема: 1.21.x и так требует Java 21, а 26.x — Java 25.

На сервер или на прокси

В сети с прокси Via ставят либо на прокси, либо на серверы за ним — не туда и туда сразу. Базовый ViaVersion работает на Paper и Velocity; для BungeeCord у разработчиков отдельный проект ViaBungee.

Выбор не нейтральный. Документация ViaVersion предупреждает: если поставить его на прокси, античиты могут работать хуже, потому что перевод протокола происходит на другом уровне. Поэтому на сети с античитом ставьте Via на каждый игровой сервер — туда же, где стоит античит. Как устроена сеть — в статьях Velocity или BungeeCord и настройка Velocity.

Что переводится не идеально

  • Новые блоки на старом сервере. Игрок с новым клиентом не сможет ставить блоки, которых нет в версии сервера, — разработчики прямо пишут, что это не задача ViaVersion.
  • Старый клиент на новом сервере. Старый клиент не знает новых блоков, предметов и мобов, поэтому ViaBackwards показывает ему замену. Часть контента такой игрок видит иначе, чем остальные.
  • Задержка после релиза Minecraft. ViaVersion выходит через несколько дней после обновления игры, если изменения протокола не тривиальные. Ранний доступ есть у спонсоров проекта. Обновляете сервер — сверьтесь, вышла ли нужная версия Via.
  • Ограничитель пакетов. Во ViaVersion встроен лимит пакетов против эксплойтов; изредка он срабатывает на честных игроках — как его настроить, описано в документации.
  • Плагины, завязанные на версию. Если плагин отправляет клиенту что-то, чего нет в его версии, результат зависит от перевода. Проверяйте важные механики со старого и нового клиента.

Полезные команды

КомандаЧто делает
/viaversion listСписок игроков по версиям клиента
/viaversion player <ник>Подробности о подключении игрока
/viaversion ppsСколько пакетов в секунду шлёт каждый игрок
/viaversion dumpСсылка с данными о сервере для поддержки Via
/viaversion dontbugmeВыключить напоминания об обновлениях
/viaversion reloadПеречитать конфиг (часть настроек — только после перезапуска)
Все команды — с правом viaversion.admin; в новых версиях можно выдавать по одной: viaversion.command.<подкоманда>.

Переход сервера на новую версию

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

  1. 1Вышла ли сборка ядра под новую версию — Paper или Leaf.
  2. 2Вышли ли релизы ViaVersion и ViaBackwards с её поддержкой.
  3. 3Поддерживают ли её ваши плагины — особенно те, что работают с пакетами.
  4. 4Есть ли новая версия в списке поддерживаемых у античита: для DGuard — страница версии Minecraft; и стоит ли последний релиз PacketEvents.
  5. 5Сделан ли бэкап мира и плагинов перед обновлением.

ViaVersion и античит DGuard

DGuard работает на Paper и Leaf версий 1.21–26.3; основная — 1.21.11: на ней DGuard тестируется и стоит на боевых серверах, остальные поддерживаются, но на боевых серверах ещё не проверялись. Игроки с клиентов 1.21–26.x, зашедшие через ViaVersion, проверяются одинаково — так же, как игроки с родной версией сервера.

Ставьте Via на тот же игровой сервер, что и DGuard: это следует и из документации ViaVersion. На сети с BungeeCord или Velocity DGuard тоже ставится на каждый игровой сервер, у каждого свой ключ. Если пускаете клиентов старше 1.21 через ViaBackwards или ViaRewind, уточните в поддержке, как DGuard работает с ними: заявлены клиенты 1.21–26.x. Таблица версий — на странице версии Minecraft.

Частые вопросы

Как зайти на сервер Minecraft со старой версии?

Владелец сервера должен поставить ViaVersion и ViaBackwards (для 1.7–1.8 — ещё ViaRewind). Сам игрок ничего ставить не должен.

Нужно ли ставить ViaVersion и на прокси, и на серверы?

Нет, только в одно место: либо на прокси, либо на серверы за ним. С античитом лучше на игровые серверы — на прокси античиты могут работать хуже.

Почему после обновления Minecraft ViaVersion не пускает новую версию?

Поддержка новой версии выходит через несколько дней после релиза игры. Обновите ViaVersion, когда появится релиз с её поддержкой.

Видят ли игроки со старых версий новые блоки?

Нет, старый клиент их не знает, и ViaBackwards показывает ему замену. Игрок с новым клиентом на старом сервере, наоборот, не сможет ставить блоки, которых нет на сервере.

Нужен ли ViaVersion, если сервер на самой новой версии?

Да, если хотите пускать игроков со старых клиентов: ViaBackwards работает только вместе с ViaVersion. Если все играют на версии сервера, Via не нужен.

Работает ли античит с игроками через ViaVersion?

DGuard проверяет игроков с клиентов 1.21–26.x, зашедших через ViaVersion, так же, как остальных. Via ставьте на тот же игровой сервер, что и античит.

Источники

Все разделы
Плагины5 минPacketEvents: что это и как обновитьPacketEvents — плагин-библиотека, через который другие плагины читают и отправляют пакеты Minecraft. Сам он ничего не меняет в игре, но без него не запустятся плагины, которые на него опираются, — например, античит DGuard. Обновление: скачать последний релиз, заменить jar, перезапустить.ЧитатьПлагины7 минКак установить плагин на сервер MinecraftСкачайте .jar с официальной страницы, положите его в plugins/ и перезапустите сервер — не через /reload. Ниже — как проверить совместимость, что делать с зависимостями и почему плагин не загружается.ЧитатьПлагины6 минЛучшие плагины для сервера Minecraft: что поставить в первую очередьКостяк под любой режим: права — LuckPerms, античит — DGuard, логи и откат — CoreProtect, приваты — WorldGuard, вход с других версий — ViaVersion. Ниже — по задачам, с официальными страницами и тем, чего ставить не стоит.Читать

Поставьте лучший античит для современного Minecraft

DGuard ловит все 47 видов читов из нашего сравнения — у ближайшего соперника, Intave, 27. Полная защита на любом тарифе, до 30 игроков онлайн — бесплатно.