GeyserMC/GeyserConnect
GeyserConnect позволяет клиентам Bedrock легко подключаться к любым серверам Java Edition без необходимости что-либо запускать у себя.
Открыть на GitHub ↗Разделение Bedrock и Java Edition всегда было одной из самых неловких особенностей Minecraft. Вы играете на Switch или в версии Bedrock для Windows, а ваши друзья создали сервер на Java Edition. Они не смогут пригласить вас без установки прокси, с которым большинство обычных игроков не захочет разбираться. GeyserConnect полностью устраняет эту проблему: игроки Bedrock могут заходить на Java-серверы через простое меню, ничего не устанавливая.
Что делает GeyserConnect
GeyserConnect - это прокси-сервер, который на лету преобразует подключения Bedrock Edition в протоколы Java Edition. Его можно представить как мост между протоколами: игроки Bedrock подключаются к экземпляру GeyserConnect, а тот перенаправляет их на Java-серверы. Главное преимущество здесь в простоте. Игрок видит меню серверов прямо в Bedrock, выбирает нужный и появляется в игровом мире. Никаких команд в терминале, загруженных на компьютер экземпляров Geyser и лишних сложностей.
Проект создан на базе Geyser, который выполняет основную работу по преобразованию пакетов между двумя изданиями. GeyserConnect дополняет его удобным интерфейсом и системой меню с несколькими серверами, благодаря которой BedrockConnect стал популярен несколько лет назад, но предлагает активную поддержку и полноценную совместимость с Bedrock.
Зачем это настраивать
Если у вас есть Java-сервер и вы хотите открыть его для игроков Bedrock, это самый простой путь. Моды не нужны ни на сервере, ни на стороне клиента. На сервере запускается один прокси, к которому подключаются клиенты Bedrock. Вот и все.
Владельцам серверов особенно нравится этот подход благодаря его масштабируемости. Хотите запустить пять Java-серверов и позволить игрокам Bedrock выбирать между ними через единую точку входа? GeyserConnect управляет всем через один файл конфигурации. Обслуживание выполняется в одном месте, а игроки получают удобное меню вместо необходимости запоминать несколько IP-адресов.
Если вы уже запускаете Java-серверы на собственном оборудовании, половина дела сделана. Остается запустить всего одно дополнительное приложение.
Как работает подключение
Игрок Bedrock запускает игру и добавляет ваш экземпляр GeyserConnect в качестве сервера. Затем он видит настроенный вами список Java-серверов, у каждого может быть название, описание и даже счетчик игроков. Достаточно выбрать один из них. GeyserConnect преобразует подключение и переносит игрока на выбранный Java-сервер.
В фоновом режиме пакеты постоянно преобразуются. Команды перемещения, сообщения чата, взаимодействия с блоками и сражения переводятся из формата Bedrock в формат Java и обратно. Игрок этого процесса не видит, все работает совершенно прозрачно. Можно добывать ресурсы, создавать предметы, участвовать в PvP и строить механизмы из редстоуна точно так же, как при прямом подключении к Java-серверу. Чанки загружаются как обычно, а мобы ведут себя привычно. Если сервер работает на ванильной версии или использует качественные плагины, игра ощущается естественно.
Есть один важный нюанс: некоторые возможности Java нельзя точно воспроизвести средствами Bedrock. Сложные моды или совсем новые функции Java могут вызывать графические ошибки или работать не полностью. Но обычные Java-серверы, включая ванильные серверы с популярными плагинами вроде Essentials или LiteBans, работают стабильно.
Важные возможности
Самая очевидная функция - списки серверов. Клиенты Bedrock получают графический интерфейс вместо терминала, а несколько серверов отображаются в одном месте. Для каждого можно показать описание, MOTD и задержку соединения. Игроку остается выбрать сервер и подключиться. Это похоже на работу миров Bedrock Realms, поэтому интерфейс выглядит знакомо.
Консольные команды упрощают управление. Команда `/geyserconnect messageall` отправляет сообщение всем подключенным игрокам Bedrock, что удобно для объявлений. Команда `/geyserconnect transferall` одним действием переносит всех на другой сервер. Это пригодится, если сервер нужно отключить для обслуживания или объединить игроков в часы низкой активности.
Также поддерживается перенаправление DNS. Если вы хотите, чтобы игроки подключались по доменному имени, а не по IP-адресу, в репозитории есть конфигурации bind9. Большинство пользователей выбирают IP-адреса, но для крупных игровых сетей доступен и такой вариант.
Кроме того, каждый сервер можно настроить отдельно. У любого Java-сервера в списке могут быть собственные параметры, поэтому вам не придется использовать одинаковую конфигурацию для всех.
Как запустить GeyserConnect
Для настройки потребуются базовые знания Java. Клонируйте репозиторий GitHub, соберите проект по приложенной инструкции, укажите список серверов в файле YAML и запустите файл JAR. Конфигурация проста: для каждого сервера нужно задать IP-адрес, порт и название.
После запуска передайте IP-адрес или домен прокси игрокам Bedrock. Они добавят его как сервер и сразу смогут подключиться. Никакого ожидания, конфликтов зависимостей или настройки на стороне клиента.
Рекомендую сначала провести проверку на двух или трех серверах. Убедитесь, что клиенты Bedrock подключаются, игроки могут перемещаться и общаться в чате, а команды работают. Когда все будет готово, добавьте остальные серверы в список.
Нюансы, о которых стоит знать
Клиенты Bedrock активно кешируют списки серверов. После добавления или удаления сервера игроки могут видеть устаревшие данные, пока полностью не закроют и не запустят клиент заново. Это не ошибка, а особенность обработки автономного обнаружения в Bedrock. Если игроки не видят нужный сервер, попросите их полностью перезапустить игру.
Сетевая задержка суммируется. Если соединение между прокси и настоящими Java-серверами медленное, игроки Bedrock могут ощущать задержку сильнее, чем игроки Java. Расположение имеет значение. Размещение в одном дата-центре будет идеальным вариантом. Если серверы находятся на другом конце света, игроки это заметят.
Аутентификация по IP-адресу становится сложнее. Все подключения Bedrock выглядят так, будто исходят с IP-адреса прокси, а не с настоящего адреса игрока. Если вы используете строгие белые списки или блокировки по IP, потребуется другая стратегия аутентификации. В GeyserConnect предусмотрены подходящие механизмы, обычно это проверка по имени игрока или UUID, но их нужно настроить отдельно.
Также учитывайте, что не у каждого игрока Bedrock установлена последняя версия. Некоторые используют более старые сборки, что может вызывать проблемы совместимости с новыми функциями Java-сервера. Обычно все работает нормально, но ванильные серверы справляются с этим лучше, чем модифицированные серверы на самых свежих версиях.
Когда стоит выбрать альтернативу
Поддержку Bedrock на Java-серверах можно реализовать и другими способами. Например, Geyser можно запустить как серверный плагин, чтобы прокси работал непосредственно внутри Java-сервера. Этот вариант работает, но требует настройки на стороне сервера и увеличивает нагрузку. Если нужен максимальный контроль, существуют отдельные прокси Geyser. Они дают больше гибкости, но требуют более сложной настройки для игроков.
Раньше эту задачу решал BedrockConnect, и решение действительно было элегантным. GeyserConnect фактически представляет собой современное и активно поддерживаемое развитие этой идеи, созданное на базе Geyser.
Для владельцев нескольких Java-серверов, которые хотят принимать игроков Bedrock, GeyserConnect станет оптимальным выбором. Его легко запустить, он предлагает хороший набор функций и поддерживается активным сообществом.
Если вы хотите узнать, как работают ваши Java-серверы, используйте инструмент проверки состояния серверов Minecraft для отслеживания задержки и времени доступности. А игроки Bedrock, желающие изменить внешний вид персонажа, найдут много интересного в коллекции скинов Minecraft.



