Gold Плагин Защита LiteBans [2.16.5]

  • Исправлена ошибка импорта H2->MySQL LiteBans из-за исправления часовых поясов в версии 2.11.5.

Улучшения:​

  • Добавлено завершение вкладок для диапазонов сервера.
  • Добавлена опция безопасности (ipban_command: 1, включена по умолчанию), ограничивающая возможность выполнения запретов по IP-адресу (например, "/ban 192.168.1.*") только консолью.
  • Добавлена опция безопасности (ipban_command: 2, по умолчанию не включена) для ограничения команд /ipban и /ipmute только консолью.

Исправления:​

  • Исправлено отображение пустых страниц в /banlist, когда установлено banlist_show_active_only: true и есть недавно истекшие наказания.
  • Исправлено, что игроки с двумя или более активными отключениями (из-за серверных диапазонов и/или IP отключений) считались полностью отключенными, если только одно из их отключений было удалено.
  • Исправлено некорректное применение неглобальных отключений на серверах Bungee/Velocity, если на внутренних серверах не установлен LiteBans (не связано с проблемой, когда подписи чата в версии 1.19 не позволяют отключениям работать как положено в Velocity).
  • Исправлены некоторые шестнадцатеричные имена пользователей, вызывающие ошибки при /checkban или /checkmute, начиная с версии 2.11 (другие команды не затронуты).
  • Исправлено удаление и повторное добавление истории входа в консоль в базу данных при каждом запуске, когда установлено значение delete_previous_history: true.
  • Исправлено действие команды /unban на недавно истекшие наказания, что дает заслугу тому, кто использовал /unban вместо истечения срока действия.
  • Исправлена ошибка при использовании /litebans timezone для изменения часового пояса на разных серверах.

Незначительные улучшения:​

  • messages.yml: Добавлено форматирование полной длительности для сообщений о свертывании (например, "вам нужно подождать 20 дней, 5 часов, 25 минут") с помощью переменной "$duration".
  • messages.yml: Добавлена переменная $playerServer для указания сервера онлайн-игрока.
  • Импортированные запреты теперь будут использовать область видимости сервера по умолчанию вместо глобальной, и они будут наследовать происхождение сервера импортирующего сервера.
  • Когда происходит наказание, у игроков больше не будет записываться их логин, если их сервер настроен на ignored_iphistory_servers.

Мелкие исправления:​

  • Исправлено отсутствие очереди уведомлений об оффлайн предупреждениях, если установлено значение "sync_notifications: false" и игрок получает предупреждение, находясь онлайн на другом сервере.
  • Исправлено двойное логирование "LiteBans будет использовать сообщения по умолчанию, пока ошибки не будут исправлены."
  • Исправлена ошибка контрольной суммы GeoIP при новых конфигурациях.
  • Исправлена ошибка инициализации GeoIP, если файл базы данных (GeoLite2-Country.mmdb) был загружен вручную.
  • Исправлено предложение шаблонов в результатах вкладки complete для /unban, /unmute и /unwarn.
  • Исправлена инициализация рандомизированных идентификаторов при запуске вместо инициализации по требованию, начиная с версии 2.11.2.
IdRandom

Улучшения:​

  • Добавлены рандомизированные идентификаторы наказаний ($idRandom), с настраиваемым seed и уникальным алгоритмом. Эти обратимые и непредсказуемые ID могут быть использованы в /checkban, /checkmute, или вы можете использовать "/litebans reveal" для преобразования случайного ID в реальный ID. Эта функция практически не нагружает серверы, не использующие ее, так как в базе данных хранится только последовательный ID, а ресурсы сервера (CPU/память), необходимые для скрытия этих номеров, требуются только при использовании этой функции.
  • Добавлена поддержка unban/unmute/unwarn по ID (пример: /unban 1234). Это поддерживает обычные идентификаторы наказаний, но также напрямую поддерживает рандомизированные идентификаторы, которые были добавлены в этом обновлении.
  • Добавлена возможность запускать команды при нажатии на сообщения. Переменные, включенные в команду, также будут заменены. Пример: "Test {run: /команда $playerName}".
  • Добавлена возможность открывать URL-адреса при нажатии на сообщения. Пример: "Test {url: https://example.com/}". Это поддерживается только для сообщений чата, так как эквивалентный JSON в сообщениях разъединения не будет иметь никакого эффекта при нажатии - увы, ограничение на стороне клиента.
  • Добавлена опция шаблона "expire_ladder". Каждый шаблон любого типа теперь может иметь длительность лестницы. Это позволяет вам точно установить, как долго будет действовать лестница шаблона. Например, если вы зададите expire_ladder: 50d, все наказания старше 50 дней больше не будут учитываться в лестнице шаблона. Это отдельно от истечения срока действия наказаний - когда срок действия лестницы шаблона истекает, все выданные наказания могут оставаться активными.
  • Добавлена команда /namehistory. Эта команда отображает имена пользователей и дату последнего входа в систему для каждого имени пользователя, связанного с каждой учетной записью. Ее также можно использовать для IP-адресов, чтобы получить список имен пользователей по IP (как /alts, но с датой входа для каждого имени пользователя).
  • Добавлена опция "punish_ip" в config.yml. Когда эта опция включена, все наказания по умолчанию будут основываться на IP-адресе, так что вы сможете банить игроков по IP-адресу с помощью команды /ban.
  • Добавлена автоматическая проверка контрольной суммы SHA-256 для всех библиотечных зависимостей. Обратите внимание, что все зависимости всегда загружались из официального репозитория Maven по HTTPS.
  • Добавлена поддержка импорта из LibertyBans (поддерживаются: временные баны, постоянные баны, IP-баны).
  • Завершение вкладки теперь будет работать для всех команд, даже если установлен Essentials, без дополнительной настройки в Spigot.

Исправления:​

  • Исправлены шаги шаблона с постоянной продолжительностью, создающие наказания, которые истекают мгновенно.
  • Исправлены шаблоны ударов, не поддерживающие цвета и переменные в сообщениях об ударах.
  • Исправлено, что разрешенные игроки (через "/litebans allow") могли присоединиться к серверу, даже если на их аккаунт непосредственно наложен бан. Для этого была предусмотрена проверка, но она срабатывала не так, как нужно.
  • Исправлено, что короткие значения длительности в конфигурации, указанные в днях (например, 30d), обрабатывались как 0 секунд. Другие единицы длительности не пострадали, а длинный формат (например, 30 дней) не пострадал.
  • Исправлены /staffrollback и /prunehistory, удаляющие все наказания пользователя, если была указана неверная длительность, вместо сообщения об ошибке.
  • Исправлена ошибка запуска PostgreSQL ("Произошло что-то необычное, что привело к отказу драйвера") из-за ошибки в драйвере базы данных (отрицательный таймаут, вызванный вычисляемым драйвером целочисленным переполнением).

Незначительные улучшения:​

  • Добавлена настройка локали в messages.yml. Этот параметр контролирует язык, на котором представляются даты, так что если на вашей хост-машине установлена другая системная локаль, чем вы хотели, и вы не можете изменить эту системную локаль, вы можете установить ее вручную.
  • Шаблоны без опции длительности теперь позволяют указать длительность вручную через команду.
  • В Bungee и Velocity отключение звука в конфигурации теперь позволяет внутренним серверам обрабатывать команды отключения звука. Это может послужить обходным решением проблемы, когда отключенные игроки получают кик, если они пытаются общаться в чате в отключенном состоянии в версии 1.19.2+, если вам все еще нужно, чтобы LiteBans был установлен под прокси.

Мелкие исправления:​

  • Уменьшено количество ненужных запросов к API Mojang по требованию.
  • Исправлено /ipban, требующее разрешения litebans.ban в дополнение к litebans.ipban.
  • Исправлено, что JSON hover text не работает в сообщениях, когда hover text настроен на новую строку без пробелов после новой строки.
  • Исправлена проверка несоответствующих разрешений /tempbanip и /tempmuteip (litebans.tempbanip вместо litebans.ipban) в Bungee & Velocity.
  • Исправлено разрешение обхода mutechat, применяемое только при отправке сообщений чата, а не при использовании команд из черного списка.
  • Исправлена ошибка, которая могла возникнуть именно под BungeeCord, если другой плагин останавливал сервер, в то время как сервер еще не загрузился, а LiteBans пытался загрузиться.
  • Исправлены наказания одного и того же типа, поданные в одно и то же время, которые могли сообщать неправильные ID в сообщениях сразу после наказания (например, трансляции).
  • Снова исправлена ошибка "временных игроков" в Spigot - эта ошибка не имеет побочных эффектов и должна встречаться крайне редко.
  • Исправлены ошибки, вызванные тем, что настроен неверный формат длительности. Предупреждение будет записано в журнал, и если формат длительности недействителен, будет использоваться формат по умолчанию.
  • Исправлены ошибки в конфигурациях, вызывающие ошибки в определенных случаях.
  • Исправлены два типа ошибок запуска с неизвестными причинами, которые не удалось воспроизвести. Ни одна из этих ошибок не возникала в Bungee или Velocity.

2.11.1:​

Исправления:​

  • Исправлено неправильная обработка ударов, соответствующих ignored_kick_messages (удар транслировался и не добавлялся в базу данных, но игрок не получал удар).
  • Изменения API:
  • Исправлено, что идентификаторы наказаний устанавливались в -1 в API событий. Записи в базе данных не пострадали.

2.11.2:​

Улучшения:​

  • Добавлена поддержка установки часовых поясов (/litebans timezone) в локальной базе данных H2.
  • Обновлен драйвер базы данных: MariaDB (3.0.7 => 3.1.2). Примечательно, что в версии 3.1.2 исправлена ошибка драйвера ArrayIndexOutOfBoundsException.
  • Исправления:
  • Исправлен самоимпорт MySQL->H2 для поиска несуществующих таблиц в верхнем регистре (H2->MySQL не затронут).
  • Исправлена некорректная работа шаблонов с именами, состоящими из цифр.
  • Исправлена ошибка, при которой импортированные запреты не отображались в истории персонала до тех пор, пока персонал не присоединился к серверу в первый раз после импорта.
  • Исправлено некорректное обновление obscure_seed при использовании /litebans reload.
  • Мелкие исправления:
  • Уменьшено количество ненужных запросов к API Mojang по требованию.
  • Попытка исправления ошибки с неизвестными причинами, которую не удалось воспроизвести.
  • Исправлена ошибка, которая могла случайно возникать при выключении ("Прервано во время получения соединения").
  • Исправлено то, что длительность в коротком формате, указанная в днях (например, "30d"), не работала с опцией expire_after в config.yml. Длинный формат используется по умолчанию ("7 дней").
Оптимизация кода :)
  • Лайк 0
Реакции:1 пользователя
  • Вырезана лицензия.
IdRandom

Улучшения:​

  • Добавлены рандомизированные идентификаторы наказаний ($idRandom), с настраиваемым seed и уникальным алгоритмом. Эти обратимые и непредсказуемые ID могут быть использованы в /checkban, /checkmute, или вы можете использовать "/litebans reveal" для преобразования случайного ID в реальный ID. Эта функция практически не нагружает серверы, не использующие ее, так как в базе данных хранится только последовательный ID, а ресурсы сервера (CPU/память), необходимые для скрытия этих номеров, требуются только при использовании этой функции.
  • Добавлена поддержка unban/unmute/unwarn по ID (пример: /unban 1234). Это поддерживает обычные идентификаторы наказаний, но также напрямую поддерживает рандомизированные идентификаторы, которые были добавлены в этом обновлении.
  • Добавлена возможность запускать команды при нажатии на сообщения. Переменные, включенные в команду, также будут заменены. Пример: "Test {run: /команда $playerName}".
  • Добавлена возможность открывать URL-адреса при нажатии на сообщения. Пример: "Test {url: https://example.com/}". Это поддерживается только для сообщений чата, так как эквивалентный JSON в сообщениях разъединения не будет иметь никакого эффекта при нажатии - увы, ограничение на стороне клиента.
  • Добавлена опция шаблона "expire_ladder". Каждый шаблон любого типа теперь может иметь длительность лестницы. Это позволяет вам точно установить, как долго будет действовать лестница шаблона. Например, если вы зададите expire_ladder: 50d, все наказания старше 50 дней больше не будут учитываться в лестнице шаблона. Это отдельно от истечения срока действия наказаний - когда срок действия лестницы шаблона истекает, все выданные наказания могут оставаться активными.
  • Добавлена команда /namehistory. Эта команда отображает имена пользователей и дату последнего входа в систему для каждого имени пользователя, связанного с каждой учетной записью. Ее также можно использовать для IP-адресов, чтобы получить список имен пользователей по IP (как /alts, но с датой входа для каждого имени пользователя).
  • Добавлена опция "punish_ip" в config.yml. Когда эта опция включена, все наказания по умолчанию будут основываться на IP-адресе, так что вы сможете банить игроков по IP-адресу с помощью команды /ban.
  • Добавлена автоматическая проверка контрольной суммы SHA-256 для всех библиотечных зависимостей. Обратите внимание, что все зависимости всегда загружались из официального репозитория Maven по HTTPS.
  • Добавлена поддержка импорта из LibertyBans (поддерживаются: временные баны, постоянные баны, IP-баны).
  • Завершение вкладки теперь будет работать для всех команд, даже если установлен Essentials, без дополнительной настройки в Spigot.

Исправления:​

  • Исправлены шаги шаблона с постоянной продолжительностью, создающие наказания, которые истекают мгновенно.
  • Исправлены шаблоны ударов, не поддерживающие цвета и переменные в сообщениях об ударах.
  • Исправлено, что разрешенные игроки (через "/litebans allow") могли присоединиться к серверу, даже если на их аккаунт непосредственно наложен бан. Для этого была предусмотрена проверка, но она срабатывала не так, как нужно.
  • Исправлено, что короткие значения длительности в конфигурации, указанные в днях (например, 30d), обрабатывались как 0 секунд. Другие единицы длительности не пострадали, а длинный формат (например, 30 дней) не пострадал.
  • Исправлены /staffrollback и /prunehistory, удаляющие все наказания пользователя, если была указана неверная длительность, вместо сообщения об ошибке.
  • Исправлена ошибка запуска PostgreSQL ("Произошло что-то необычное, что привело к отказу драйвера") из-за ошибки в драйвере базы данных (отрицательный таймаут, вызванный вычисляемым драйвером целочисленным переполнением).

Незначительные улучшения:​

  • Добавлена настройка локали в messages.yml. Этот параметр контролирует язык, на котором представляются даты, так что если на вашей хост-машине установлена другая системная локаль, чем вы хотели, и вы не можете изменить эту системную локаль, вы можете установить ее вручную.
  • Шаблоны без опции длительности теперь позволяют указать длительность вручную через команду.
  • В Bungee и Velocity отключение звука в конфигурации теперь позволяет внутренним серверам обрабатывать команды отключения звука. Это может послужить обходным решением проблемы, когда отключенные игроки получают кик, если они пытаются общаться в чате в отключенном состоянии в версии 1.19.2+, если вам все еще нужно, чтобы LiteBans был установлен под прокси.

Мелкие исправления:​

  • Уменьшено количество ненужных запросов к API Mojang по требованию.
  • Исправлено /ipban, требующее разрешения litebans.ban в дополнение к litebans.ipban.
  • Исправлено, что JSON hover text не работает в сообщениях, когда hover text настроен на новую строку без пробелов после новой строки.
  • Исправлена проверка несоответствующих разрешений /tempbanip и /tempmuteip (litebans.tempbanip вместо litebans.ipban) в Bungee & Velocity.
  • Исправлено разрешение обхода mutechat, применяемое только при отправке сообщений чата, а не при использовании команд из черного списка.
  • Исправлена ошибка, которая могла возникнуть именно под BungeeCord, если другой плагин останавливал сервер, в то время как сервер еще не загрузился, а LiteBans пытался загрузиться.
  • Исправлены наказания одного и того же типа, поданные в одно и то же время, которые могли сообщать неверные ID в сообщениях сразу после наказания (например, трансляции).
  • Снова исправлена ошибка "временных игроков" в Spigot - эта ошибка не имеет побочных эффектов и должна встречаться крайне редко.
  • Исправлены ошибки, вызванные тем, что настроен неверный формат длительности. Предупреждение будет записано в журнал, и если формат длительности недействителен, будет использоваться формат по умолчанию.
  • Исправлены ошибки в конфигурациях, вызывающие ошибки в определенных случаях.
  • Исправлены два типа ошибок запуска с неизвестными причинами, которые не удалось воспроизвести. Ни одна из этих ошибок не возникала в Bungee или Velocity.

2.11.1:​

Исправления:​

  • Исправлено неправильная обработка ударов, соответствующих ignored_kick_messages (удар транслировался и не добавлялся в базу данных, но игрок не получал удар).
  • Изменения API:
  • Исправлено, что идентификаторы наказаний устанавливались в -1 в API событий. Записи в базе данных не затронуты.
  • Лайк 0
Реакции:1 пользователя
ВерхНиз