Перейти к содержимому

HybridFix

Обеспечивает исправления багов, оптимизацию и набор утилит для серверного окружения Forge+Bukkit.

Forge
Загрузчики
Forge
Скачиваний на Modrinth
3,1 тыс.
Подписчиков на Modrinth
3
версий
11
Обновлён
20 февраля 202620 февр.
Опубликован
в 2024

Коротко о моде

Работает на Forge
Для Minecraft 1.12.2
Ставится только на сервер; игрокам ставить не нужно
Последняя версия — 2.3.0 от 20 февраля 2026
Нужен MixinBooter
Лицензия LGPL-2.1-only — бесплатно
Где нужен
В игрене нуженНа сервереобязателен

Ставится только на сервер; игрокам ставить не нужно

Версии игры1.12.2
Описание переведено автоматическиПоказать оригинал (EN)

HybridFix (混合修复)

Предоставляет набор исправлений багов, оптимизаций и утилит для серверных и клиентских сред Forge+Bukkit.

Исправленные проблемы

Forge-Bukkit

  • Плагины Bukkit не могут обрабатывать некоторые взрывы от модов (например, EFLN из Tinkers' Construct)
  • Мост некоторых событий Forge в Bukkit

Forge

  • (Универсально) Исправление попыток Forge JarDiscoverer прочитать module-info.class и другие multi-release классы.
  • (Сервер) Исправление отображения Outdated server в пинге до полной загрузки сервера.

Моды

Общие
  • Замена хрупких asm-трансформеров Quark на миксины
  • Исправление управления ИИ Swet из Aether Legacy
Клиент
  • Замена дорогостоящего использования рефлексии в Industrial Craft 2 на прямые вызовы
Сервер
  • Жажда в Simple Difficulty, ToughAsNails (и любых других похожих модах) не сбрасывается при возрождении игрока(Luohuayu/CatServer#536)(MohistMC/Mohist#2905)
  • Баг дюпа через кольцо в моде The Betweenlands(Luohuayu/CatServer#204)
  • Симуляция ванильного возрождения игрока, большинство багов дюпа при смерти игрока должны быть исправлены
  • Исправление бага, когда саженцы Twilight Forest могут обходить защиту анти-грифер плагинов
  • Исправление бага, когда сущности Twilight Forest (например, Нага) могут ломать блоки в защищённых зонах
  • Исправление бага, когда Twilight Forest Chain with Block может ломать блоки в защищённых зонах
  • Исправление бага, когда порча Thaumcraft 6 может распространяться в защищённые зоны
  • Исправление бага, когда флюкс-разлом Thaumcraft 6 может ломать блоки в защищённых зонах
  • Исправление бага, когда эффекты черт в Tinkers' Construct могут обходить защиту от урона
  • Исправление бага, когда So Many Enchantments может обезоруживать игроков в защищённых зонах
  • Исправление бага, когда Ring of Loki из Botania может обходить защиту от гриферства
  • Исправление бага, когда MineLens из Botania может обходить защиту от гриферства
  • Исправление бага, когда Rannuncarpus из Botania может обходить защиту от гриферства
  • Исправление бага, когда майнеры Industrial Craft 2 могут ломать блоки в защищённых зонах
  • Исправление бага, когда взрывчатка Industrial Craft 2 может ломать блоки в защищённых зонах
  • Исправление бага, когда ChaosCrystal из Draconic Evolution может ломать блоки в защищённых зонах
  • Исправление бага, когда взрывы TechReborn (RebornCore) могут ломать блоки в защищённых зонах
  • Предоставление событий для Applied Energistics 2 Spatial Pylon для предотвращения несанкционированного гриферства
  • Исправление бага, когда взрывы TechGuns могут ломать блоки в защищённых зонах
  • Добавление чёрного/белого списка сущностей для Applied Energistics 2 Spatial Pylon
  • Исправление бага, когда паутина InfernalMobs может появляться в защищённых зонах
  • Исправление бага, когда ИИ мобов EpicSiegeMod могут гриферить в защищённых зонах
  • Отключение рецепта Blackhole Controller (устаревший) в Industrial Foregoing
  • Исправление бага, когда заклинания Witchery могут обходить защиту от урона
  • Автоматическое изменение конфига Actually Additions для соответствия серверной среде
  • Предотвращение добычи тайл-сущностей Mekanism Digital Miner

Возможности

  • Автоматическая замена убогой встроенной обработки взрывов Mohist на наш собственный метод.
  • Мост обработки прав Forge в Bukkit.
  • Пропуск вызова события, если нет зарегистрированных слушателей.
  • Отключение Timings для снижения накладных расходов на производительность.
  • Совместимость в первую очередь, не должно ломать какие-либо моды/плагины.
  • Встроенный плагин Bukkit в мод, предоставляет утилиты для владельцев серверов.
  • Улучшенная совместимость с модовыми FakePlayers.
  • Предоставление более или менее полезных api для разработчиков плагинов для лёгкого взаимодействия с модами Forge.
  • Обширные API для разработчиков модов для лёгкого поддержания совместимости с гибридными серверами.
  • Общие улучшения производительности CraftBukkit.
  • Автоматическая деобфускация стектрейсов плагинов при установленном Censored ASM для упрощения отладки.
  • Кросс-доступ ClassLoader, позволяющий модам Forge легко взаимодействовать с плагинами Bukkit. (Подробности)
  • API Bukkit, портированные из современных версий.
  • Встроенный ASM-патчер плагинов, совместимый с вашими любимыми плагинами.
  • Поддержка миксинов плагинов Bukkit, позволяющая внедрять код в плагины через моды. (Экспериментально) (Документация)
  • Расширение системы восстановления после ошибок Forge (removeErroringEntities и removeErroringTileEntities), уведомление операторов сервера при возникновении ошибок.
  • Защита процесса тика игрока, кик игрока вместо прямого краша.
  • Исправление багов Forge, влияющих на игровой опыт на сервере.
  • (Универсально) Оптимизация ИИ сущностей для более быстрого поиска ближайшей цели.

Файл конфигурации находится по пути ${minecraftDir}/config/hybridfix.cfg

Как установить (администраторам серверов)

Скачайте HybridFix и его зависимости (MixinBooter и ConfigAnyTime) с CurseForge, поместите HybridFix в папку ${minecraftDir}/mods.

HybridFix также можно установить на клиент — часть клиентских исправлений и оптимизаций будет применена.

Как использовать (разработчикам)

Если вы разрабатываете моды, вы можете подключить HybridFix из curse maven:

Gradle (Groovy DSL):

implementation fg.deobf("curse.maven:hybridfix-1166614:{latest_artifact_id}")

Если вы разрабатываете плагины, вы можете подключить jar HybridFix напрямую:

Maven:

<dependency>
    <groupId>io.wdsj</groupId>
    <artifactId>hybridfix</artifactId>
    <version>{latest_version}</version>
    <scope>system</scope>
    <systemPath>PATH-TO-JAR</systemPath>
</dependency>

Gradle (Groovy DSL):

compileOnly files("PATH-TO-JAR")

API находятся в пакетах io.wdsj.hybridfix.api и io.wdsj.hybridfix.duck.api.

Хуки для плагинов

Благодаря внутреннему плагину HybridFix мы можем подключаться к плагинам со стороны Forge, чтобы обеспечить больше исправлений.

Плагины, для которых уже есть патчи:

ASM-патчер для плагинов

HybridFix использует ASM для динамического внедрения в классы плагинов во время выполнения, чтобы решить проблемы совместимости плагинов со средой Forge+Bukkit.

Поддерживаемые на данный момент плагины:

  • Residence: исправляет совместимость с Residence 6.0.0.0+.
  • Universal: перенаправляет вызов INVOKEINTERFACE InventoryView на INVOKEVIRTUAL.

О FakePlayers

HybridFix использует Forge FakePlayer для исправления некоторых багов с гриферством, логика именования — [modid-ClassName].

Например, патч для rannuncarpus из botania использует фейкового игрока с именем [botania-SubTileRannuncarpus].

Вы можете добавить эти имена в whitelist/blacklist ваших плагинов, чтобы настроить поведение.

Команды

  • /hybridfix dumpitem — показать подробности предмета в руке.
  • /hybridfix dumpentity — показать подробности сущности, на которую вы смотрите.
  • /hybridfix dumpblock — показать подробности блока, на который вы смотрите.
  • /hybridfix version — показать информацию о версии.
  • /hybridfix eraseentity — принудительно удалить сущность, на которую вы смотрите.
  • /mods — как /plugins, показывает все загруженные моды.

Права

  • hybridfix.command.use — разрешает доступ к команде /hybridfix.
  • hybridfix.command.eraseentity.use — разрешает доступ к команде /hybridfix eraseentity.
  • hybridfix.command.mods.use — разрешает доступ к команде /mods.

Примечание: команды и права регистрируются на стороне Bukkit, то есть вы можете управлять правами через плагины прав для Bukkit, например LuckPerms.

Лицензия

Этот мод распространяется под лицензией LGPL-2.1.

Портированные классы Bukkit распространяются под лицензией GPL-3.0.

Если в коде явно не указано иное, остальные части распространяются под LGPL-2.1.

Урезанный CraftBukkit JAR с ремапом MCP в репозитории предназначен только для разработки и не входит в релизы.

Частые вопросы

Как установить HybridFix?

Установите Forge под свою версию Minecraft, скачайте HybridFix под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть HybridFix?

У HybridFix есть сборки для Minecraft 1.12.2.

Нужен ли HybridFix на сервере?

Ставится только на сервер; игрокам ставить не нужно

Лицензия и источник
GNU Lesser General Public License v2.1 onlyможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее