Stats

1039 views 5 downloads8 мар. 2024 г. 8 мар. 2024 г.

Рейтинг: 0.0/5.0


Авторы

amerigovespuccip

Автор

amerigovespuccip

Издатель

Ссылки

Вы можете найти полезную информацию, перейдя по этим ссылкам

https://pagure.io/MixerLogger


Поделитесь постом



MixerLogger Мод

ОписаниеУстановкаСкриншотыКомментарий Скачивания

Это инструмент, используемый для отладки пакетов модов, который сканирует ваши моды на наличие модов, которые имеют аннотации, связанные с общими API-интерфейсами микшера, такими как SpongeMixin, Tuna-Bytes (скоро), PizzaMixin (скоро) и AssistMixer (скоро), а также некоторыми аспектно-ориентированными API-интерфейсами программирования. Для всех файлов, соответствующих этим критериям, в нем перечислены имя, jar-файл, в котором он находится, известные целевые объекты (за исключением тех, которые не указывают целевые объекты в самом файле, например AssistMixer), ссылки на классы, ссылки на методы и ссылки на поля, с возможностью добавления еще больше информации в будущем. В лаунчерах, которые поддерживают System.out.println, информация будет отображаться в консоли, журналы также сохраняются в (.)minecraft/logs/MixerLogger.log, чтобы вы могли получить к ним доступ. Это полезно, если вы создаете очень большой модпак и один из них ломает игру, это позволит вам лучше понять, откуда он может взяться. В большинстве случаев он загружается сам до или во время SpongeMixin или аналогичных инструментов. Код для этого в значительной степени не зависит от загрузчика, что означает, что с базовой точкой входа он может поддерживаться в большинстве загрузчиков и даже в большинстве игр на Java. Один и тот же Jar используется более чем в 1 загрузчике. Должен отлично работать с модами уровня абстракции, такими как Специальная операция совместимости, NeoFromTheMatrix или Sintrya Connector.

Журналы будет немного сложно читать, но в идеале любой, кто использует это, будет использовать ⌘+F или Ctrl+F для поиска конкретной информации. Пример информации об отдельном классе микшера выглядит следующим образом

Имя класса: net.fabricmc.fabric.mixin.client.model.BakedModelManagerMixin
Цели: [net.minecraft.class_1092]
Ссылка на класс: [net.minecraft.class_1087, org.spongepowered.asm.mixin.Mixin, java.util.Карта, net.minecraft.class_1092, net.fabricmc.api.Environment, net.fabricmc.fabric.mixin.client.model.BakedModelManagerMixin, net.fabricmc.api.EnvType, org.spongepowered.asm.mixin.Тень, java.lang.Объект, net.fabricmc.fabric.impl.клиент.модель.BakedModelManagerHooks, net.minecraft.class_2960]
MethodRef: [java.util.Map.get(Ljava/lang/Object;)Ljava/lang/Object;]
FieldRef: [net.fabricmc.fabric.mixin.client.model.BakedModelManagerMixin.field_5408:Ljava/util/Map;]
Исходный JAR: fabric-api-0.75.1+1.19.2.jar
--------------------

 

Но это может быть более сложной задачей для гораздо более крупных компаний

 

Ограничения

На данный момент поддерживается только Sponge Mixin, но вскоре планируются другие, и мы также планируем предоставить больше информации об измененных методах и разборе RefMap. Это также имеет глубину только на 1 уровень для вложенных jar-файлов, и javassist поставляется в комплекте (что может конфликтовать с несколькими модами, но большинство других модов запускаются ПОСЛЕ этого, так что к моменту возникновения такого конфликта пакетов у вас уже будет ваша информация). Это сканирует только существующие классы микшера, а не те, которые были созданы во время выполнения. Это может привести к возможной нестабильности игры, а также к тому, что загрузка игры займет больше времени, поэтому, если вы ее не используете, я бы не советовал сохранять ее в вашей папке mods. Также поддерживается только папка с названием "mods", но это изменится.

 

Поддержка платформы.

FeatureCreep

FeatureCreep 4.0 Pre Release 18 будет поставляться со встроенной функцией, но ее нужно будет включить в конфигурации FeatureCreep (в каталоге etc в вашей папке Minecraft). Однако этот jar поддерживает FeatureCreep 4 Pre Release 17 в некоторой степени, если он не запущен ни на одной из других упомянутых платформ. Если вы используете MCForge и у вас есть FeatureCreep, этот мод будет конфликтовать из-за того, что оба имеют одинаковые пакеты, по крайней мере, в версии 1.17 из-за изменений модулей. На платформах, которые не поставляются с SpongeMixin или поддерживаемым микшером, его нужно будет установить обычным образом. Встроенная версия FeatureCreep будет поддерживаться лучше всего. Мод версии до 17 и более ранних версий будет дублироваться на версии до 18 или новее и, как правило, не поддерживается. Работает в играх за пределами Minecraft, написанных на Java, и может использоваться в других загрузчиках, таких как LiteLoader, Rift и NeoForge, и, возможно, в более старых версиях MC Forge, если установлен FeatureCreep.

 

MinecraftForge

Должен работать на версиях 1.17+, 1.16.5 и более ранних версиях имеет изменения в ITransformationService, что затрудняет выполнение в одном файле.

 

FabricMC

Должен работать на любой версии и в играх, отличных от Minecraft. Может работать на QuiltMC и других производных FabricMC, но это непроверено. Legacy и Cursed Legacy Fabric также должны работать.