Krypton Reno
Krypton Reno - клиентский и серверный мод оптимизации сети Minecraft. Он сокращает лишнюю обработку пакетов и помогает эффективнее использовать ресурсы системы; поддержка загрузчиков и нативных библиотек зависит от версии и ОС.
Krypton Reno - мод для оптимизации сетевого стека Minecraft Java Edition. Он не добавляет новые блоки, предметы или механики: его задача - уменьшить лишние сетевые операции и нагрузку на обработку соединений, чтобы клиент и сервер работали эффективнее. Это утилита для тех, кто настраивает модифицированный сервер или хочет сократить сетевые издержки на клиенте.
Krypton Reno основан на Krypton Fabric, но включает и собственные оптимизации. Мод предназначен для NeoForge и Forge в совместимых версиях. Начиная с ветки 26.1 поддержка Forge прекращена, поэтому перед установкой важно сверить версию Minecraft и загрузчик.
Что меняет Krypton Reno
Оптимизации затрагивают обработку соединений и передачу данных между клиентом и сервером. В конфигурации есть настройки для уменьшения числа лишних пакетов движения, ускорения отслеживания сущностей, сокращения передачи частиц и пропуска невидимых блоков и секций освещения в пакетах чанков. На практике это может снизить сетевые накладные расходы, особенно на сервере с большим числом игроков или сущностей.
Мод также оптимизирует отдельные операции, связанные с соединениями, VarLong, шифрованием на клиенте и потоками входа игрока, фильтрации текста и загрузки. Эффект зависит от конкретной сборки и оборудования: Krypton Reno не увеличивает скорость интернет-соединения и не устраняет задержку, вызванную плохим маршрутом до сервера.
Для серверов на Fabric или Paper автор указывает отдельный вариант - KryptonReno Fabric. Для серверов Velocity предназначен VelocityNT Recast. Не устанавливайте несколько форков Krypton одновременно: в описании перечислены несовместимые моды, включая Krypton Reforged, Ceres, Pluto и другие.
RecastLib и поддержка систем
RecastLib - нативная библиотека на Rust, созданная для совместимости с Velocity Native JNI Bind. Она дополняет нативные оптимизации и помогает использовать их там, где Velocity Native не поддерживается. Совместимость устроена гибридно: разные библиотеки покрывают разные системы.
| Система и архитектура | RecastLib | Velocity Native |
|---|---|---|
| Windows x64 | Да | Нет |
| Windows ARM64 | Да | Нет |
| Linux x64 | Нет | Да |
| Linux ARM64 | Нет | Да |
| macOS ARM64, Apple Silicon | Нет | Да |
Для Windows предусмотрено ускорение через RecastLib, а на Linux и macOS используется Velocity Native. Android, 32-разрядные системы и другие архитектуры не заявлены как поддерживаемые. В некоторых случаях для загрузки нативной библиотеки нужны системные зависимости: на Windows автор указывает MSVC 170 и OpenSSL 3 Win32, на Linux - OpenSSL 3. Для macOS рекомендуется актуальная версия системы.
В актуальных ветках NeoForge требуется SpringLotus. Уточняйте требования именно для своей версии: совместимость Krypton Reno меняется между выпусками, а начиная с Minecraft 26.1 Forge больше не поддерживается. В проекте также тестировался Java FFM API для варианта Fabric на Java 22; эта возможность не относится к сборкам Forge и NeoForge.
Настройки
Ниже приведены основные параметры конфигурации. Большинство функций включено по умолчанию, но отдельные оптимизации можно отключить, если они вызывают несовместимость или нежелательное поведение.
mixin:
# Замена потока проверки входа игрока виртуальным потоком
loginVT: true
# Замена потока фильтрации текста виртуальным потоком
textFilterVT: true
# Замена потока загрузки виртуальным потоком
utilVT: true
# Оптимизированная реализация VarLong
bestVarLong: true
# Новые оптимизации шифрования на клиенте
clientEncrypt: true
# Оптимизированная реализация RconClient
rconClient: false
# Не отправлять пакеты движения, если сущность не двигалась;
# при одном лишь повороте отправлять пакет только с поворотом
serverEntityMoveOpt: false
# Сокращение выделения объектов и конкуренции за блокировки в Connection
connectionMicroOpt: true
# Сокращение потенциально лишних пакетов частиц; действует только на сервере
particlePacketOpt: true
# Оптимизация отслеживания сущностей: меньше выделений объектов,
# рассылка на основе массивов
trackedEntityOpt: true
fix:
issues128:
# Исправление статистики трафика
enabled: false
# Считать пропускную способность в потоке синхронизации,
# ближе к поведению ванильной игры
sync: true
culling:
# Умное отсечение сущностей на сервере
entity: true
# Умное отсечение блоков и блочных сущностей на сервере
block: true
# Заменять полностью скрытые блоки в пакетах чанков воздухом,
# чтобы экономить трафик
chunk_block: true
# Пропускать полностью пустые секции освещения,
# экономя 2 КиБ данных на секцию
chunk_light: true
compress:
# Уровень сжатия пакетов от 1 до 9
compressionLevel: 4
# Разрешить пакеты увеличенного размера
permitOversizedPackets: false
gui:
# Заменить интерфейс KReno в стиле Minecraft на OreUI
oreui: false
compatibility:
allow-wide-var-int: false
netty:
# Уменьшить стандартное выделение памяти Netty с 16 МиБ до 4 МиБ;
# лимит размера пакета Minecraft составляет 2 МиБ
allocatorMaxOrder: 9
# Использовать Happy Eyeballs (RFC 8305), чтобы параллельно проверять IPv6 и IPv4.
# Некоторые серверы, например Velocity, могут временно отклонять соединение
happyEyeballs: false
Параметр serverEntityMoveOpt по умолчанию выключен, как и несколько других точечных функций. Не включайте все параметры наугад на рабочем сервере: меняйте настройки по одной и проверяйте подключение, движение сущностей и статистику трафика. Так проще найти причину, если конкретная оптимизация конфликтует с другой частью сборки.
Переменная среды вместо аргумента JVM
Некоторые параметры можно задавать переменными среды. Например, для включения Linux Recast вместо аргумента JVM -Dvelocity.linux-recast-enabled=true можно использовать ENABLE_LINUX_RECAST=true:
java -Dvelocity.natives-disable=false -Dvelocity.linux-recast-enabled=true -jar neoforge_launcher.jar
Или:
ENABLE_LINUX_RECAST=true java -jar neoforge_launcher.jar
Совместимость и важные ограничения
Krypton Reno можно установить только на клиент или только на сервер: наличие мода на другой стороне обычно не требуется. Исключение - сервер с античитом, который проверяет список установленных модов и запрещает подключение с определёнными клиентскими модификациями.
Не используйте его вместе с другими форками Krypton. В список известных несовместимых проектов входят:
- Krypton Reforged
- Ceres
- Pluto
- KryptonFoxified
- Krypton Hybird
- Chionanthus
- Krypton Fabric with Connector
Также Krypton Reno не предназначен для серверов, сочетающих Bukkit API с Forge или NeoForge. Автор не гарантирует совместимость такой связки, поскольку Bukkit API не рассчитан на поддержку модов.
Отдельные оптимизации могут менять поведение обработки пакетов. Если после установки что-то работает иначе, проверьте конфигурацию и сначала отключите недавно включённые параметры. Сам мод не гарантирует уменьшение пинга: он может сократить задержки, связанные с нехваткой процессорных ресурсов и конкуренцией потоков, но не исправит слабое интернет-соединение или проблемы на маршруте до сервера.
Частые вопросы
Нужно ли устанавливать Krypton Reno и на клиент, и на сервер?
Нет. Обычно можно подключиться к серверу, даже если на одной стороне мод не установлен. Но античит сервера может ограничивать клиентские модификации, поэтому доступ зависит от его настроек.
Снижает ли Krypton Reno пинг?
Мод оптимизирует сетевую обработку и может помочь, если высокая задержка связана с нагрузкой на процессор. Если причина в качестве соединения или ограниченных ресурсах системы, заметного улучшения может не быть.
Совместим ли он с Forge и NeoForge?
Поддержка зависит от версии. Для новых веток, начиная с 26.1, Forge больше не поддерживается; актуальные сборки проекта рассчитаны на NeoForge. Старые версии могут иметь другой набор поддерживаемых загрузчиков, поэтому проверяйте требования конкретного файла. Для новых выпусков NeoForge также может потребоваться SpringLotus.
Что делать, если не загружается нативная библиотека?
Проверьте, что операционная система и архитектура входят в список совместимых, а необходимые системные библиотеки установлены. Для Windows нужны указанные автором компоненты MSVC 170 и OpenSSL 3 Win32, для Linux - OpenSSL 3. На macOS стоит обновить систему. На неподдерживаемых архитектурах нативное ускорение недоступно.
Использование в сборках модов и лицензия
Krypton Reno разрешено включать в сборки модов при соблюдении лицензии. При этом лицензия запрещает сборки, которые распространяют в одном архиве полный комплект Minecraft: игру, моды, настройки, шейдеры, ресурспаки, библиотеки и лаунчер.
Krypton Reno распространяется по LGPL-3.0 Only. Для RecastLib RecastXZ и RecastSSL указаны отдельные условия лицензирования: MPL-2.0 для исходного кода RecastXZ и BSD-3-Clause для RecastSSL. Для проекта также действует дополнительная ограничительная лицензия 404Setup Public License.
Связанные проекты
- Krypton Fabric
- Velocity
- VelocityNT Recast
- Paper
- RecastSSL
- RecastXZ
- SpringLotus
Скриншоты Krypton Reno
Часто задаваемые вопросы
Совместимость
Зависимости
Создатели
Детали
Версии мода Krypton Reno
Доступно 97 версий. Сначала показаны самые популярные и самые свежие.