
Better Ping Display [Fabric] — Minecraft Java Edition 1.15.2 - 1.21.11+
Зависимости: · Загрузчик: Fabric, Quilt · Версия Minecraft: 1.15.2 - 1.21.11+ · Версия мода: 1.2.0 · Обязательные зависимости: Fabric API…
Зависимости: · Загрузчик: Fabric, Quilt · Версия Minecraft: 1.15.2 - 1.21.11+ · Версия мода: 1.2.0 · Обязательные зависимости: Fabric API Стандартный интерфейс Minecraft отображает задержку подключения игроков в меню се
Зависимости:
· Загрузчик: Fabric, Quilt
· Версия Minecraft: 1.15.2 - 1.21.11+
· Версия мода: 1.2.0
· Обязательные зависимости: Fabric API
Стандартный интерфейс Minecraft отображает задержку подключения игроков в меню сетевого списка (клавиша TAB) в виде графической иконки из пяти вертикальных столбиков. Такой подход не даёт точной информации о стабильности соединения, поскольку одна и та же иконка может соответствовать задержке как в 80 миллисекунд, так и в 140 миллисекунд. В соревновательном геймплее, PvP-сражениях или при администрировании крупных игровых серверов точные показатели пинга критически важны. Модификация Better Ping Display [Fabric] решает эту проблему, заменяя абстрактные графические полоски точным числовым значением задержки в миллисекундах непосредственно в меню списка игроков.
Технический принцип работы и ограничения стандартного рендеринга задержки
Для передачи информации о пинге сервер Minecraft отправляет пакеты обновления списка игроков (в современных версиях игры за это отвечает пакет ClientboundPlayerInfoUpdatePacket). Каждая запись в пакете содержит целочисленный параметр задержки (latency), выраженный в миллисекундах. Клиентская часть игры получает эти данные и хранит их в памяти как свойство объекта PlayerInfo (в ранних версиях известного как NetworkPlayerInfo).
При рендеринге списка игроков на экране ванильный класс интерфейса PlayerListHud (или PlayerTabOverlay в маппингах Yarn) перебирает всех подключённых пользователей и определяет уровень задержки. За отображение иконки отвечает внутренний метод renderLatencyIcon (или renderPingIcon). Этот метод сравнивает целое число миллисекунд с фиксированными порогами:
· Значение меньше 0 отображает иконку отсутствия соединения (красный крестик).
· Значение меньше 150 миллисекунд соответствует максимальным пяти столбикам.
· Диапазон от 150 до 299 миллисекунд отображает четыре столбика.
· Диапазон от 300 до 599 миллисекунд показывает три столбика.
· Диапазон от 600 до 999 миллисекунд выводит два столбика.
· Задержка от 1000 миллисекунд отображает один столбик.
Таким образом, точные числовые значения отбрасываются непосредственно перед выводом на экран, а вместо них рисуется соответствующий спрайт из файла текстур icons.png.
Better Ping Display вносит изменения в этот процесс с помощью системы Mixin. Класс инъекции модифицирует поведение PlayerListHud в момент отрисовки строки каждого игрока. Модификация перехватывает вызов отрисовки графических столбиков и блокирует его выполнение (или выполняет параллельно в зависимости от конфигурации). Вместо этого выполняется вызов для получения точного значения latency через объект PlayerInfo. Далее мод передаёт это число в текстовый рендерер клиента Font, который динамически рисует символы на экране с учётом настроенного стиля и позиционирования элементов интерфейса.
Основные функции: цифровое отображение, цветовая шкала и графические столбики
Мод расширяет информативность интерфейса сетевой статистики за счёт следующих функциональных возможностей:
· Числовой показатель в реальном времени: Отображает точную величину задержки в миллисекундах. Игрок видит фактическое состояние соединения каждого участника без необходимости наводить курсор или вводить диагностические команды в чат.
· Автоматическая цветовая маркировка: По умолчанию модификация окрашивает текст пинга в зависимости от качества связи. Низкая задержка (менее 100 миллисекунд) подсвечивается зелёным цветом, средняя (от 100 до 299 миллисекунд) приобретает жёлтый или оранжевый оттенок, а высокая задержка (от 300 миллисекунд и более) окрашивается в красный цвет. Это помогает мгновенно выявить игроков с нестабильным подключением.
· Совмещённый режим отображения: Пользователь может включить одновременный вывод числовых значений и оригинальных ванильных полосок пинга. В этом случае текст рисуется слева от графической иконки, сохраняя привычный визуальный стиль Minecraft.
· Клиентская архитектура: Модификация работает исключительно на стороне клиента. Она не требует установки на сервер и не отправляет серверу дополнительных запросов. Мод считывает лишь ту информацию о трафике, которую сервер Minecraft передаёт по умолчанию всем подключённым клиентам. Благодаря этому Better Ping Display работает на любых серверах, включая официальные серверы Realms и публичные серверы без поддержки модификаций.
Настройка, совместимость и экосистема
Конфигурирование параметров отображения осуществляется через редактирование файла betterpingdisplay.json, который автоматически создаётся в директории config после первого запуска игры. Файл содержит следующие настройки:
· autoColorPingText – логический флаг (true/false). При значении true цвет пинга меняется автоматически от зелёного к красному в зависимости от скорости соединения. Если указано false, цвет становится статическим и определяется следующим параметром.
· pingTextColor – текстовое поле для установки шестнадцатеричного кода цвета (например, #A0A0A0 для светло-серого). Этот цвет используется только тогда, когда автоматическая цветовая маркировка отключена.
· renderPingBars – логический флаг, который управляет рендерингом стандартных ванильных столбиков задержки рядом с цифровым показателем.
· pingTextFormatString – строка форматирования текста. По умолчанию установлено значение %dms, где символ %d является обязательным техническим маркером, который при рендеринге заменяется на текущее число миллисекунд задержки.
В версии мода 1.2.0 и новее появилась поддержка графического интерфейса настроек непосредственно в меню игры. Для доступа к визуальному меню конфигурации в списке модификаций необходимо установить два дополнительных вспомогательных компонента: библиотеку YetAnotherConfigLib (YACL) и мод Mod Menu. При их наличии в игре появляется удобное окно с переключателями и ползунками для изменения параметров Better Ping Display.
Модификация совместима с большинством клиентских оптимизаторов (таких как Sodium, Lithium, FerriteCore) и графических улучшений (Iris Shaders). Она не вызывает конфликтов во время игры на серверах с кастомными плагинами на списки игроков, поскольку изменяет лишь этап локального рендеринга на клиенте, не влияя на структуру сетевых пакетов.
Параметр | Значение | Описание |
| TRUE | Автоматический цвет текста. Если включено (true), цвет чисел будет автоматически меняться в зависимости от качества соединения (например, зелёный для низкого пинга, красный — для высокого). |
| FALSE | Отображение полос пинга. Определяет, показывать ли стандартные ванильные полосы (палочки) качества связи. В этом случае они отключены (false), чтобы освободить место для текста. |
| "#A0A0A0" | Цвет текста. Статический цвет отображения (в формате HEX-кода, тут это светло-серый). Он применяется в том случае, если автоматическое окрашивание (autoColorPingText) будет отключено. |
| "%dms" | Формат отображения. Шаблон для вывода текста на экран. Переменная %d автоматически заменяется на текущее числовое значение вашего пинга, а ms добавляет приписку «миллисекунды» (результат будет выглядеть как «45ms»). |
Заключение
Better Ping Display [Fabric] – это компактная и эффективная клиентская модификация, которая исправляет существенный недостаток стандартного списка игроков Minecraft. В отличие от аналогичных решений вроде Numeral Ping или Ping Display, этот мод имеет простую интеграцию с библиотекой YACL для настройки параметров прямо в игре и позволяет сохранять ванильные иконки задержки. Главным ограничением является зависимость частоты обновления чисел от настроек самого сервера (по умолчанию сервер Minecraft отправляет обновление статистики пинга раз в несколько секунд, поэтому мгновенные колебания задержки не будут отображаться сразу). Мод идеально подходит для игроков сетевых режимов и администраторов серверов, которым нужен чёткий контроль сетевых параметров без лишней нагрузки на систему.
Установка
Базовая установка занимает около 5 минут. Общий процесс одинаков, отличается только лоадер и совместимый билд.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











