PssbleTrngle / SliceAndDice

Making automation for Farmer's Delight more sensible
https://www.curseforge.com/minecraft/mc-mods/slice-and-dice
Other
17 stars 15 forks source link

Mixin error with version 2.2.0 on Forge #70

Closed SiverDX closed 1 year ago

SiverDX commented 1 year ago

What happened?

Crash happens on startup

1.19.2 / 43.2.11

image

Also - is this intentional? https://github.com/PssbleTrngle/SliceAndDice/blob/af375cf34f824e4212c13a252f0417664217d7f2/build.gradle.kts#L284

Loader

forge

Mod Version

2.2.0

Minecraft Version

1.19

Relevant log output

[14:23:00] [pool-3-thread-1/FATAL]: Mixin apply failed sliceanddice.mixins.json:LevelMixin -> net.minecraft.world.level.Level: org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException @Shadow method getBlockState in sliceanddice.mixins.json:LevelMixin was not located in the target class net.minecraft.world.level.Level. Using refmap sliceanddice.refmap.json
org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException: @Shadow method getBlockState in sliceanddice.mixins.json:LevelMixin was not located in the target class net.minecraft.world.level.Level. Using refmap sliceanddice.refmap.json
    at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachSpecialMethod(MixinPreProcessorStandard.java:442) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachShadowMethod(MixinPreProcessorStandard.java:415) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachMethods(MixinPreProcessorStandard.java:343) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:302) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.createContextFor(MixinPreProcessorStandard.java:280) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinInfo.createContextFor(MixinInfo.java:1288) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:292) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:383) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:365) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-0.8.5.jar:0.8.5+Jenkins-b310.git-155314e6e91465dad727e621a569906a410cd6f4]
    at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:156) ~[modlauncher-10.0.8.jar:10.0.8+10.0.8+main.0ef7e830]
    at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:88) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:50) ~[modlauncher-10.0.8.jar:?]
    at cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:113) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.lambda$findClass$15(ModuleClassLoader.java:219) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:229) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:219) ~[securejarhandler-2.1.4.jar:?]
    at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:135) ~[securejarhandler-2.1.4.jar:?]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
    at net.minecraftforge.registries.GameData.init(GameData.java:108) ~[forge-1.19.2-43.2.11-universal.jar%23164!/:?]
    at net.minecraftforge.registries.GameData.<clinit>(GameData.java:93) ~[forge-1.19.2-43.2.11-universal.jar%23164!/:?]
    at net.minecraft.core.Registry.forge(Registry.java:435) ~[client-1.19.2-20220805.130853-srg.jar%23159!/:?]
    at net.minecraft.core.Registry.forge(Registry.java:419) ~[client-1.19.2-20220805.130853-srg.jar%23159!/:?]
    at net.minecraft.core.Registry.<clinit>(Registry.java:186) ~[client-1.19.2-20220805.130853-srg.jar%23159!/:?]
    at net.minecraft.server.Bootstrap.m_135870_(Bootstrap.java:43) ~[client-1.19.2-20220805.130853-srg.jar%23159!/:?]
    at net.minecraft.client.main.Main.lambda$run$0(Main.java:145) ~[client-1.19.2-20220805.130853-srg.jar%23159!/:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
    at java.lang.Thread.run(Thread.java:833) [?:?]
SiverDX commented 1 year ago

Maybe something to do with this? Don't have any mixin knowledge

https://github.com/SpongePowered/Mixin/issues/431

SiverDX commented 1 year ago

Ok yeah this is the issue:

@Shadow
public abstract BlockState getBlockState(BlockPos var1);

Before it was:

@Shadow
public abstract BlockState m_8055_(BlockPos var1);

(When decompiling)

This also seems to be the cause for all mixin references - they are not re-obfuscated

Darkmega18 commented 1 year ago

oh dear, I have this issue also. Same one. Instantly crashes the game with error message 1.

SiverDX commented 1 year ago

https://github.com/PssbleTrngle/SliceAndDice/blob/af375cf34f824e4212c13a252f0417664217d7f2/build.gradle.kts#LL224C4-L224C4

Needs to be changed to

tasks.withType<Jar> {
    finalizedBy("reobfJar")
}
Reshy commented 1 year ago

Slice and Dice needs compatibility added for Create 0.5.1

PssbleTrngle commented 1 year ago

Weirdly it's neither of the solutions, the local build using the same code works fine, just the jar build by the CI on github seems to be a problem. Not sure what caused this, but I replaced them on curseforge & modrinth and it should now work fine

SiverDX commented 1 year ago

Latest version works but maybe you should still check build.gradle.kts for these parts

    toolchain {
        languageVersion.set(JavaLanguageVersion.of(17))
        languageVersion.set(JavaLanguageVersion.of(17))
    }
tasks.jar {
    finalizedBy("reobfJar")
}
            addRelation("create", "requiredDependency")
            addRelation("kotlin-for-forge", "requiredDependency")
            addRelation("farmers-delight", "requiredDependency")
            addRelation("kotlin-for-forge", "optionalDependency")
            addRelation("overweight-farming", "optionalDependency")