1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [Antibot] BotFilter - Защити свой сервер от ботов | Update 07.06.2023 | 1.8-1.20

Тема в разделе "Неподтвержденные плагины", создана пользователем slavik123123123, 19 июл 2017.

  1. LIONED

    LIONED Активный участник

    Баллы:
    61
    ВАЖНО!!! Выявлен баг. Если на бот фильтре нажать "P" (Новая фича от Mojang в клиентах 1.16.х для взаимодействия с игроками), то клиента крашит.

    Баг был выявлен на версии 1.16.4-optifine c TLauncher через Mojang аккаунт при входе на BotFilter 3.8.4
    При этом в консоли:
    ... <-> BotFilter - IOException: Удаленный хост принудительно разорвал существующее подключение

    После прохождения фильтра (На подсерверах) "P" работает.
     
  2. MurlikMurlik

    MurlikMurlik Активный участник Пользователь

    Баллы:
    96
    Информативнее был бы краш лог от клиента.
     
  3. Saharo4ek

    Saharo4ek Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    tin
    Я даже боюсь спросить, а какой уникум догадался "P" при проверке нажать?
     
  4. JonBoss

    JonBoss Активный участник Пользователь

    Баллы:
    76
    Skype:
    ya_narik1
    Имя в Minecraft:
    Jon
    А зачем делать подмену uuid для премиум игроков через PlayerSetUUIDEvent?

    Я юзаю PreLoginEvent и работает нормас:
    Код:
    @EventHandler
    public void on(PreLoginEvent event){
        if (isPremiumPlayer(event.getConnection())) {
            event.getConnection().setOnlineMode(true);
        }
    }
    Банга делает запрос в mojang и сама получает uuid.
     
  5. Автор темы
    slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    и в итоге для спигот сервера это новый игрок, тк теперь вместо офлайн ууид у него онлайн ууид, тоесть другой. и для плагинов которые через ууид получают инфу, тоже это новый игрок
     
  6. JonBoss

    JonBoss Активный участник Пользователь

    Баллы:
    76
    Skype:
    ya_narik1
    Имя в Minecraft:
    Jon
    хм. на банге будет новый uuid да
    но разве на бакките будет? там ведь offline-mode: false
     
  7. MrJarousek

    MrJarousek Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    RitaSister
    будет online uuid Для баккит, у меня стоит на сервере FastLogin и на бакките и при входе ВЕЗДЕ меняются UUID, даже на тех где не стоял плагин FastLogin.
     
  8. Автор темы
    slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Если ты не включал premiumUuid в конфиге то должен быть всегда оффлайн ууид
    Да, банжа передает ип игрока и его ууид серверу через Handshake пакет. Таким же образом и работает подмена ууид, когда игрок заходя с одного ника, у него может быть ууид от другого ника, например ника админа.

    Отключи игроку режим лицензии, и скорее всего у него на выживание будет другой инвентарь.


    Все плагины меняют UUID в LoginEvent через рефлексию, и с ботфильтром оно будет работать, но с некоторыми проблемами (Они возникают только тогда, когда игроку нужно пройти проверку, если не нужно то всё будет работать как и должно)
    1. Игрок не будет видеть свой скин (другие игроки будут видеть его скин)
    2. Могут быть баги со скорбоардами (в какойто версии после 1.12.2, сделали так что вместо ников теперь UUID используются)
    Эти две проблемы вытекают из-за того, что нужно отправить игроку пакет LoginSuccess с его ником и ууид, который клиент будет использовать у себя. Банжа отправляет этот пакет после того как плагины обработают LoginEvent, но ботфильтр вызывает этот евент только после успешной проверки на бота, но чтобы игрок мог пройти проверку, LoginSuccess нужно всё равно отправить, и поэтому если включить игроку онлайн мод, то ему отправиться LoginSuccess с онлайн мод ууид. Из-за этого и возникают эти проблемы. Клиент получает информацию о своем скине через Player Info пакет используя свой UUID, но свой ууид он никогда там на найдет. Тоже самое и со второй проблемой, игрок может не определить свою команду, т.к не сможет найти свой УУИД.

    Тоесть меняя UUID в LoginEvent, банжа будет отправлять серверу изменённый UUID, а затем сервер уже будет отправлять пакеты с этим именным UUID клиенту, но поскольку банжа отправила другой UUID игроку, то возникают эти проблемы.

    Для этого я и сделал PlayerSetUUIDEvent, чтобы можно было менять ууид до того как будет отправлен Login Success пакет.
     
  9. JonBoss

    JonBoss Активный участник Пользователь

    Баллы:
    76
    Skype:
    ya_narik1
    Имя в Minecraft:
    Jon
    Че за premiumUuid? Это в новых версиях добавили? У меня ядро 1.12.2
     
  10. Автор темы
    slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    опция из конфига FastLogin.
     
  11. JonBoss

    JonBoss Активный участник Пользователь

    Баллы:
    76
    Skype:
    ya_narik1
    Имя в Minecraft:
    Jon
    Только что проверил у себя. Uuid всегда одинаковый, вне зависимости от включенной лицензии. И он соответствует offline uuid, который вычисляется так:

    Код:
    UUID.nameUUIDFromBytes(("OfflinePlayer:" + name).getBytes(Charsets.UTF_8))
    у меня в paperspigot 1.12.2.

    FastLogin это в конфиге ядра spigot?
     
  12. Автор темы
    slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    это плагин
     
  13. MrJarousek

    MrJarousek Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    RitaSister
    с помощью плагина FastLogin можно сделать поддержку лицензий на пиратском сервере(offline mode)
     
  14. Автор темы
    slavik123123123

    slavik123123123 Старожил Пользователь

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Version 3.8.5 (12.02.2021, testing)
    • Собрано под последнюю версию BungeeCord
    • Исправлена поддержка RGB в скорбоардах
     
  15. AniMouse

    AniMouse Активный участник

    Баллы:
    61
    Имя в Minecraft:
    _AniMouse_
    Приветствую этот форк не работает с SkinRestorer у обычного банджи всё норм а у этого не робит есть фикс или как исправить ?!
     
  16. biklazhan

    biklazhan Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    4anomymous4
    поставь сам плагин на каждый сервер, а так же убедись что в spigot.yml стоит bungeecord: true (с такими вопросами реально может быть такое) и будет тебе счастье upload_2021-2-24_21-3-10.png
     
  17. AniMouse

    AniMouse Активный участник

    Баллы:
    61
    Имя в Minecraft:
    _AniMouse_
    Ну просто в обычном Bungee оно взаимосвязано
    а тут на каждый отдельно ну хз-хз
     
  18. biklazhan

    biklazhan Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    4anomymous4
    а в чём проблема? жалко 8мбайт? на самой странице плагина написано что везде надо ставить
     
  19. AniMouse

    AniMouse Активный участник

    Баллы:
    61
    Имя в Minecraft:
    _AniMouse_
    поменял скин на одном сервере на другом не поменялся это теряется а от этого я смысла не вижу крч не нравится
     
  20. biklazhan

    biklazhan Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    4anomymous4
    понимаю :good:
    когда не знаешь что такое база данных
     

Поделиться этой страницей