Camotoy / BedrockSkinUtility

Fabric mod that allows you to view Bedrock skins and capes
MIT License
42 stars 10 forks source link

Mod Incompatibility Crash with BadOptimizations mod using their default config. #21

Closed MrBsng closed 2 months ago

MrBsng commented 2 months ago

After loading BadOptimizations and its .config for the first time, you must set Config Option 'enable_entity_renderer_caching' to false to fix the crash/incompatibility.

Config:

# Whether entity renderers should be stored directly in EntityType
# instead of a HashMap.
# Disable to fix compatibility with Twilight Forest
enable_entity_renderer_caching: true

Full details and Related to https://github.com/ItsThosea/BadOptimizations/issues/69

---- Minecraft Crash Report ---- Description: Initializing game

java.lang.BootstrapMethodError: java.lang.RuntimeException: Mixin transformation of net.minecraft.class_898 failed at net.minecraft.class_310.(class_310.java:582) at net.minecraft.client.main.Main.main(Main.java:239) at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) Caused by: java.lang.RuntimeException: Mixin transformation of net.minecraft.class_898 failed at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:427) at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323) at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218) at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:119) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ... 5 more Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392) at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234) at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202) at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422) ... 9 more Caused by: org.spongepowered.asm.mixin.injection.throwables.InjectionError: Critical injection failure: Callback method getRenderer(Lnet/minecraft/class_1297;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfoReturnable;)V in BedrockSkinUtility.mixins.json:EntityRendererDispatcherMixin from mod bedrockskinutility failed injection check, (0/1) succeeded. Scanned 1 target(s). Using refmap BedrockSkinUtility-refmap.json at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.postInject(InjectionInfo.java:468) at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1384) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1062) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:402) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327) at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:422) at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403) at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ... 12 more

Camotoy commented 2 months ago

Don't think there's really anything we can do here. BadOptimizations overwrites a method we need to use.

MrBsng commented 2 months ago

Don't think there's really anything we can do here. BadOptimizations overwrites a method we need to use.

I assume this will be the case. The only solution for now is to set enable_entity_renderer_caching: false in BadOptimization's config file. I will close this issue now.

MrBsng commented 2 weeks ago

This issue was fixed in version 2.2.0 of BadOptimizations: https://github.com/ItsThosea/BadOptimizations/commit/21665bc7d65d61c57044713cb35b864f325c1b6c here and https://github.com/ItsThosea/BadOptimizations/commit/068e90009ad0c93c597cd13b6a061ea709641f6e here