Как мы все, вероятно, знаем, BungeeCord более не является перспективным и развивающемя ****** сервером. Его форки поддерживаются с куда более меньшей активностью, а Paper перешел на поддержку более развитого в этом плане ****** сервера - Velocity. По этому настало время создать гайд по Velocity и его настройке, в котором будут описаны все основные правила его использования, а также будет рассказано, как подключить к нему антибот систему, которая встроена во всеми известный форк банжи - BotFilter, а также о важных аспектах при работе с данным ****** сервером. ⦁ Пункт 1 - устанавливаем и запускаем Тут проблем возникнуть не должно, т.к. тут процесс схож с установкой обычного ядра сервера или банжи. 1) Качаем Velocity с сайта PaperMc (разработчиков), или же с официального сайта velocitypowered. 2) Положите скачанный вами .jar файл в определенную папку, после чего создайте в ней файл start.txt, в котором напишите следующее: java -Xmx2G -Xms2G -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar velocity.jar (Учтите, что ваш jar файл должен называться именно velocity! А также вам потребуется Java версии 11 или выше!) 3) Переименуйте start.txt в start.bat и запустите его. После этого дождитесь, когда все папки и файлы будут созданы и после сообщения по типу "Done (2,2s)!" закрывайте открывшееся окно консоли. Запустите его вновь уже после полной настройки. ⦁ Пункт 2 - настройка Velocity Velocity имеет один файл конфигурации - velocity.toml. Его можно открыть при помощи любого текстового редактора, но я рекомендую Notepad++. Специально для вас я перевел данный файл. Ознакомиться со всеми его значениями можете ниже: Спойлер: velocity.toml Теперь перейдем непосредственно к настройке. В первую очередь давайте определимся с типом "пересылки IP адресов" Если вы держите сервер на версиях 1.13+ - то как и указано, используйте режим player-info-forwarding-mode = "modern". Если же вы держите сервер на версиях 1.12 и ниже - вам НАСТОЯТЕЛЬНО рекомендуется использовать режим player-info-forwarding-mode = "bungeeguard". Указываем это значение соответственно тому, что для вас подходит. Далее нам нужно придумать ключ и указать его в файле, который указан в графе forwarding-secret = "forvarding.secret" (по умолчанию там уже будет сгенерирован ключ, но я рекомендую ставить свой) Если вы выбрали режим modern, то данный ключ нужно будет выставить в paper.yml (paper-global.yml для новых версий), найдя поле velocity-support, после чего активировав его, поставив enabled: true, после чего найти поле secret:, в нем поле default: '' и вставить в кавычки придуманный вами ключ. Если вы выбрали режим bungeeguard - вам необходимо будет скачать плагин BungeeGuard, установить его на игровые сервера и вставить придуманный вами код в его конфиг в поле allowed-tokens: Важное примечание: В файле spigot.yml есть строка bungeecord: false Если вы настроили player-info-forwarding-mode = "modern" и в paper.yml (paper-global.yml для новых версий) включили поддержку велосити - данное поле должно оставаться false. Если же вы имеете значение bungeeguard - оно должно стоять на true! Далее нам нужно настроить сервера. Тут всё просто. В разделе servers у вас есть примеры настроенных серверов. Вам лишь нужно подставить свои значения и при необходимости переименовать сервера под себя. Просто укажите имя_сервера = "IP сервера:порт сервера" (порт сервера находится в server.properties и его можно менять). После того как добавили все нужные вам сервера - укажите сервер, на который будет подключать игрока сразу после захода в графе try = Теперь разберемся с некоторыми настройками, которые вы вероятно будете менять. 1) tcp-fast-open = false - поставьте на true, если вы запускаете сервер на Lunix, тоесть на VDS/VPS сервере. 2) announce-proxy-commands = true - поставьте на false, если не хотите, чтобы табкомплит выдавал игрокам команды вашего ******. 3) ping-passthrough = "description" - поставьте значение на DISABLED, если хотите увидеть зеленую галочку совместимости с модами на клиенте. Я не знаю как это точно работает, но у меня работает. 4) force-key-authentication = true - поставьте его на false если ваш сервер на оффлайн моде (тоесть без лицензии). ⦁ Пункт 3 - Команды Velocity. По умолчанию Velocity имеет 4 команды: /velocity (version|plugins|reload|dump) - показывает версию велосити|плагины велосити|перезагружает ******|выгружает дамп с информацией о ****** соответственно /end - выключает ****** /glist - показывает, сколько игроков находится на ******. /glist all - показывает, сколько игроков где находятся /server - позволяет перемещаться между серверами Права можете посмотреть тут: https://docs.papermc.io/velocity/built-in-commands ⦁ Пункт 4 - Полезные утилиты: Тут я хочу рассказать о том какие утилиты вам практически необходимы при работе с Velocity и зачем они вам нужны. 1) Наверное самой важной частью является защита от ботов. Данную функцию может взять на себя такой плагин как Sonar. Там имеется как и стандартная капча, так и продвинутые проверки, коих нет в других анти-ботах, что поможет для защиты от ботов, способных обходить капчи. 2) Важно задуматься об ограничении игроков в использовании команд ****** сервера, т.к. если вы будете невнимательны - ваша авторизация будет пройдена а вы взломаны! Всем игрокам по умолчанию на Velocity доступна команда /server. Заблокировать её так просто не получится, по этому вам нужно будет снять права с игроков на её использование. С этим справляется плагин LuckPermsVelocity. Как только установите его на ****** сервер - Пропишите /lpv group default permission set velocity.command.server false. Эта команда выдаст отрицательное право на команду /server всем игрокам и тем самым запретит её использование. 3) Довольно полезным может оказаться для вас плагин CommandSync. С недавних пор в него добавили поддержку велосити, что сделало его вновь актуальным. Если кратко - он нужен для того, чтобы выполнять с ****** команды на серверах. Очень удобно, если вы не можете использовать базу данных, но у вас есть несколько игровых режимов. 4) Также стоит задуматься о блокировке команд. Если вам необходимо ограничить прочие команды на ****** сервере - вам рекомендуется использовать плагин CommandWhitelist. По названию, как я думаю, ясно, что он делает. ⦁ Пункт 5 - Полезные ссылки. https://docs.papermc.io/velocity - оф. вики велосити Источник и автор статьи