MixinTrace

MixinTrace

Fabric

Этот небольшой, но невероятно полезный Fabric-мод решает одну из самых раздражающих проблем технического Minecraft — диагностику конфликтов. Если ты когда-нибудь ловил краш и пытался понять, какой из десятков установленных модов виноват, глядя на бесконечные строки net.minecraft.class_..., то этот инструмент станет твоим спасательным кругом.

Смотри, что происходит. Обычно в стектрейсе ошибки ты видишь только ванильные классы игры. Но если в игру вшиты миксины (а у тебя их точно много), понять, кто именно внес изменения в тот или иной класс, практически невозможно. Этот мод исправляет ситуацию кардинально.

Как это работает?

Мод добавляет в краш-репорты специальный блок Mixins in Stacktrace. Он не просто выводит список классов, а для каждого класса из трейса показывает все миксины, которые в него вмешивались, вместе с названием конфиг-файла. Выглядит это примерно так:

	Mixins in Stacktrace: 
		net.minecraft.class_465:
			dev.emi.bunchotrinkets.mixin.AbstractContainerScreenMixin (bunchotrinkets.mixins.json)
			net.backslot.mixin.HandledScreenMixin (backslot.mixins.json)
			dev.emi.trinkets.mixin.HandledScreenMixin (trinkets.mixins.json)
		net.minecraft.class_485:
			dev.emi.trinkets.mixin.AbstractInventoryScreenMixin (trinkets.mixins.json)
		net.minecraft.class_481:
			dev.emi.trinkets.mixin.CreativeInventoryScreenMixin (trinkets.mixins.json)
			net.fabricmc.fabric.mixin.item.group.client.MixinCreativePlayerInventoryGui (fabric-item-groups-v0.mixins.json)
		net.minecraft.class_757:
			com.jamieswhiteshirt.reachentityattributes.mixin.client.GameRendererMixin (mixins.reach-entity-attributes.json)
		net.minecraft.class_310:
			net.fabricmc.fabric.mixin.networking.MixinMinecraftClient (fabric-networking-v0.mixins.json)
			net.fabricmc.fabric.mixin.resource.loader.MixinMinecraftGame (fabric-resource-loader-v0.mixins.json)
			net.fabricmc.fabric.mixin.event.interaction.MixinMinecraftClient (fabric-events-interaction-v0.mixins.json)
			net.fabricmc.fabric.mixin.event.lifecycle.client.MinecraftClientMixin (fabric-lifecycle-events-v1.mixins.json)
			net.fabricmc.fabric.mixin.registry.sync.client.MixinMinecraftClient (fabric-registry-sync-v0.mixins.json)
			dev.emi.bunchotrinkets.mixin.MinecraftClientMixin (bunchotrinkets.mixins.json)

Почему это важно?

Представь: у тебя вылетает игра при открытии инвентаря. Вместо того чтобы методом тыка отключать половину модов, ты просто смотришь на класс class_465 и видишь, что в него вшиты миксины от трёх модов. Один из них точно конфликтует — и теперь ты знаешь, с кого начать проверку.

Кстати, разработчик тестировал мод на версиях 1.16.2 и 1.16.1, но он почти наверняка заработает и на других сборках. Так как мод чисто диагностический и не меняет логику игры, риск возникновения новых багов минимален.

Все права на данный контент принадлежат его авторам. Мы не храним и не распространяем файлы — страница носит исключительно информационный характер. Оригинальный источник доступен по этой ссылке.

0
0
7

Файлы для скачивания

3 файла

Комментарии (0)

Войдите, чтобы оставить комментарий

Пока нет комментариев

Будьте первым!