Sophisticated Core (Unofficial Fabric port)

Sophisticated Core (Unofficial Fabric port)

1M Downloads

Conflict between crafttweaker and Sophisticated Core

chencd44 opened this issue ยท 10 comments

commented

Conflict between crafttweaker and Sophisticated Core
After adding the Sophisticated Core, CraftTweaker will report an error, but after deletion, it will return to normal

crafttweaker.log

[09:13:34.651][INFO][CraftTweaker-ZenCode]: Compiling and executing scripts
[09:13:34.703][ERROR][CraftTweaker-ZenCode]: Error while registering class: 'net.minecraft.class_2680', this is most likely a compatibility issue:
java.lang.NoClassDefFoundError: net/minecraft/class_702
at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.base/java.lang.Class.privateGetPublicMethods(Unknown Source)
at java.base/java.lang.Class.privateGetPublicMethods(Unknown Source)
at java.base/java.lang.Class.getMethods(Unknown Source)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.getMethodsIn(JavaNativeClassConverter.java:283)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillAnnotatedMethods(JavaNativeClassConverter.java:237)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillDefinition(JavaNativeClassConverter.java:177)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.convertClass(JavaNativeClassConverter.java:62)
at org.openzen.zencode.java.module.converters.JavaNativeConverter.addClass(JavaNativeConverter.java:47)
at com.blamejared.crafttweaker.impl.script.scriptrun.natives.CtJavaNativeConverter.addClass(CtJavaNativeConverter.java:42)
at org.openzen.zencode.java.module.JavaNativeModule.addClass(JavaNativeModule.java:87)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadClass(JavaNativeTypeConverter.java:183)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:113)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadAnnotatedType(JavaNativeTypeConverter.java:163)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:111)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:98)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadAnnotatedParameterizedType(JavaNativeTypeConverter.java:138)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:109)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:98)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:85)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:70)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadStoredType(JavaNativeTypeConverter.java:56)
at org.openzen.zencode.java.module.converters.JavaNativeHeaderConverter.getHeader(JavaNativeHeaderConverter.java:110)
at org.openzen.zencode.java.module.converters.JavaNativeHeaderConverter.getHeader(JavaNativeHeaderConverter.java:58)
at org.openzen.zencode.java.module.converters.JavaNativeMemberConverter.asMethod(JavaNativeMemberConverter.java:49)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillAnnotatedMethods(JavaNativeClassConverter.java:243)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillDefinition(JavaNativeClassConverter.java:177)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.convertClass(JavaNativeClassConverter.java:62)
at org.openzen.zencode.java.module.converters.JavaNativeConverter.addClass(JavaNativeConverter.java:47)
at com.blamejared.crafttweaker.impl.script.scriptrun.natives.CtJavaNativeConverter.addClass(CtJavaNativeConverter.java:42)
at org.openzen.zencode.java.module.JavaNativeModule.addClass(JavaNativeModule.java:87)
at org.openzen.zencode.java.module.JavaNativeModule.addGlobals(JavaNativeModule.java:91)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.lambda$createModule$3(DefaultScriptRunModuleConfigurator.java:125)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.createNativeModule(ScriptRunner.java:137)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.lambda$gatherModules$2(ScriptRunner.java:121)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:124)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:105)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.populateModules(DefaultScriptRunModuleConfigurator.java:42)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.gatherModules(ScriptRunner.java:118)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.populateModules(ScriptRunner.java:103)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.initializeEngine(ScriptRunner.java:76)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.run(ScriptRunner.java:67)
at com.blamejared.crafttweaker.impl.script.scriptrun.DecoratedRunKind$DecoratedScriptRunner.run(DecoratedRunKind.java:27)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.executeRun(ScriptRun.java:93)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.execute(ScriptRun.java:58)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.apply(ScriptReloadListener.java:80)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.method_18788(ScriptReloadListener.java:38)
at net.minecraft.class_4080.method_18790(class_4080.java:13)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(Unknown Source)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_156.method_43498(class_156.java:950)
at net.minecraft.class_156.method_43499(class_156.java:938)
at net.minecraft.server.Main.main(Main.java:160)
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.KnotServer.main(KnotServer.java:23)
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69)
at net.fabricmc.installer.ServerLauncher.main(ServerLauncher.java:69)
Caused by: java.lang.ClassNotFoundException: net.minecraft.class_702
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:226)
at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:119)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 61 more
[09:13:34.705][ERROR][CraftTweaker-ZenCode]: Error while registering class: 'com.blamejared.crafttweaker.api.game.Game', this is most likely a compatibility issue:
java.lang.NullPointerException: Cannot invoke "org.openzen.zenscript.codemodel.HighLevelDefinition.isStatic()" because "definition" is null
at org.openzen.zenscript.codemodel.type.GlobalTypeRegistry.getForDefinition(GlobalTypeRegistry.java:101)
at org.openzen.zenscript.codemodel.type.GlobalTypeRegistry.getForDefinition(GlobalTypeRegistry.java:97)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadClass(JavaNativeTypeConverter.java:190)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:113)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadAnnotatedType(JavaNativeTypeConverter.java:163)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:111)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:98)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadAnnotatedParameterizedType(JavaNativeTypeConverter.java:138)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:109)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:98)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:85)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadType(JavaNativeTypeConverter.java:70)
at org.openzen.zencode.java.module.converters.JavaNativeTypeConverter.loadStoredType(JavaNativeTypeConverter.java:56)
at org.openzen.zencode.java.module.converters.JavaNativeHeaderConverter.getHeader(JavaNativeHeaderConverter.java:110)
at org.openzen.zencode.java.module.converters.JavaNativeHeaderConverter.getHeader(JavaNativeHeaderConverter.java:58)
at org.openzen.zencode.java.module.converters.JavaNativeMemberConverter.asMethod(JavaNativeMemberConverter.java:49)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillAnnotatedMethods(JavaNativeClassConverter.java:243)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.fillDefinition(JavaNativeClassConverter.java:177)
at org.openzen.zencode.java.module.converters.JavaNativeClassConverter.convertClass(JavaNativeClassConverter.java:62)
at org.openzen.zencode.java.module.converters.JavaNativeConverter.addClass(JavaNativeConverter.java:47)
at com.blamejared.crafttweaker.impl.script.scriptrun.natives.CtJavaNativeConverter.addClass(CtJavaNativeConverter.java:42)
at org.openzen.zencode.java.module.JavaNativeModule.addClass(JavaNativeModule.java:87)
at org.openzen.zencode.java.module.JavaNativeModule.addGlobals(JavaNativeModule.java:91)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.lambda$createModule$3(DefaultScriptRunModuleConfigurator.java:125)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.createNativeModule(ScriptRunner.java:137)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.lambda$gatherModules$2(ScriptRunner.java:121)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:124)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:105)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.populateModules(DefaultScriptRunModuleConfigurator.java:42)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.gatherModules(ScriptRunner.java:118)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.populateModules(ScriptRunner.java:103)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.initializeEngine(ScriptRunner.java:76)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.run(ScriptRunner.java:67)
at com.blamejared.crafttweaker.impl.script.scriptrun.DecoratedRunKind$DecoratedScriptRunner.run(DecoratedRunKind.java:27)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.executeRun(ScriptRun.java:93)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.execute(ScriptRun.java:58)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.apply(ScriptReloadListener.java:80)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.method_18788(ScriptReloadListener.java:38)
at net.minecraft.class_4080.method_18790(class_4080.java:13)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(Unknown Source)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_156.method_43498(class_156.java:950)
at net.minecraft.class_156.method_43499(class_156.java:938)
at net.minecraft.server.Main.main(Main.java:160)
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.KnotServer.main(KnotServer.java:23)
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69)
at net.fabricmc.installer.ServerLauncher.main(ServerLauncher.java:69)
[09:13:34.706][ERROR][CraftTweaker-ZenCode]: Execution for loader 'crafttweaker' completed with an error
java.lang.NullPointerException: Cannot invoke "org.openzen.zenscript.codemodel.HighLevelDefinition.getNumberOfGenericParameters()" because "definition" is null
at org.openzen.zenscript.codemodel.type.GlobalTypeRegistry.getForMyDefinition(GlobalTypeRegistry.java:84)
at org.openzen.zencode.java.module.converters.JavaNativeGlobalConverter.addGlobal(JavaNativeGlobalConverter.java:47)
at org.openzen.zencode.java.module.JavaNativeModule.addGlobals(JavaNativeModule.java:92)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.lambda$createModule$3(DefaultScriptRunModuleConfigurator.java:125)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.createNativeModule(ScriptRunner.java:137)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.lambda$gatherModules$2(ScriptRunner.java:121)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:124)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:105)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.populateModules(DefaultScriptRunModuleConfigurator.java:42)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.gatherModules(ScriptRunner.java:118)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.populateModules(ScriptRunner.java:103)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.initializeEngine(ScriptRunner.java:76)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.run(ScriptRunner.java:67)
at com.blamejared.crafttweaker.impl.script.scriptrun.DecoratedRunKind$DecoratedScriptRunner.run(DecoratedRunKind.java:27)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.executeRun(ScriptRun.java:93)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.execute(ScriptRun.java:58)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.apply(ScriptReloadListener.java:80)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.method_18788(ScriptReloadListener.java:38)
at net.minecraft.class_4080.method_18790(class_4080.java:13)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(Unknown Source)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_156.method_43498(class_156.java:950)
at net.minecraft.class_156.method_43499(class_156.java:938)
at net.minecraft.server.Main.main(Main.java:160)
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.KnotServer.main(KnotServer.java:23)
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69)
at net.fabricmc.installer.ServerLauncher.main(ServerLauncher.java:69)
[09:13:34.706][ERROR][CraftTweaker]: Unable to execute script run
java.lang.NullPointerException: Cannot invoke "org.openzen.zenscript.codemodel.HighLevelDefinition.getNumberOfGenericParameters()" because "definition" is null
at org.openzen.zenscript.codemodel.type.GlobalTypeRegistry.getForMyDefinition(GlobalTypeRegistry.java:84)
at org.openzen.zencode.java.module.converters.JavaNativeGlobalConverter.addGlobal(JavaNativeGlobalConverter.java:47)
at org.openzen.zencode.java.module.JavaNativeModule.addGlobals(JavaNativeModule.java:92)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.lambda$createModule$3(DefaultScriptRunModuleConfigurator.java:125)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.createNativeModule(ScriptRunner.java:137)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.lambda$gatherModules$2(ScriptRunner.java:121)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:124)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.createModule(DefaultScriptRunModuleConfigurator.java:105)
at com.blamejared.crafttweaker.impl.script.scriptrun.DefaultScriptRunModuleConfigurator.populateModules(DefaultScriptRunModuleConfigurator.java:42)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.gatherModules(ScriptRunner.java:118)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.populateModules(ScriptRunner.java:103)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.initializeEngine(ScriptRunner.java:76)
at com.blamejared.crafttweaker.impl.script.scriptrun.runner.ScriptRunner.run(ScriptRunner.java:67)
at com.blamejared.crafttweaker.impl.script.scriptrun.DecoratedRunKind$DecoratedScriptRunner.run(DecoratedRunKind.java:27)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.executeRun(ScriptRun.java:93)
at com.blamejared.crafttweaker.impl.script.scriptrun.ScriptRun.execute(ScriptRun.java:58)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.apply(ScriptReloadListener.java:80)
at com.blamejared.crafttweaker.impl.script.ScriptReloadListener.method_18788(ScriptReloadListener.java:38)
at net.minecraft.class_4080.method_18790(class_4080.java:13)
at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(Unknown Source)
at net.minecraft.class_4014.method_18365(class_4014.java:69)
at net.minecraft.class_156.method_43498(class_156.java:950)
at net.minecraft.class_156.method_43499(class_156.java:938)
at net.minecraft.server.Main.main(Main.java:160)
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.KnotServer.main(KnotServer.java:23)
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69)
at net.fabricmc.installer.ServerLauncher.main(ServerLauncher.java:69)

commented

mod
fabric-server-mc.1.20.1-loader.0.15.11-launcher.1.0.1.jar

carpetskyadditions-1.20.1-4.4.1.jar
cloth-config-11.1.118-fabric.jar
CraftTweaker-fabric-1.20.1-14.0.40.jar
fabric-api-0.92.2+1.20.1.jar
fabric-carpet-1.20-1.4.112+v230608.jar
ModernKeyBinding-Fabric-1.20-1.2.1.jar
sophisticatedcore-0.5.109+mc1.20.1-SNAPSHOT-build.81.jar

commented

So I added CraftTweaker and it does not crash, also from your log (please next time put the log in a code block or pastebin or gist)
it looks like it crashes when running a script.
I would need your scripts and precise steps how to use them as I'm unfamiliar with CraftTweaker.

commented

I'm unsure why this does not cause issues on its own, but you are adding a client only class in your common mixins:
BlockStateMixin implements SophisticatedBlockState

SophisticatedBlockState has a method with a parameter asking for a ParticleEngine

ParticleEngine is a client side only class, it doesn't exist in the server jar file

This also affects the BlockMixin class.

So I added CraftTweaker and it does not crash,

This only affects dedicated servers, not single player

commented

I see, didn't even realise I added a client class that way. But that now makes me wonder too why does it not crash on it's own...
Thanks for letting me know, I'll fix that once home.

commented

Yea, that one baffles me, it crashes with CraftTweaker because we loop through all the methods to determine what should be exposed to scripts, I wonder if mixin is doing "smart" to cause it not to crash on its own.

commented

Any news? For 1.20.1

commented

Was 1.20.1 forgotten ?

commented

Not forgotten no, just taking a short break.
I recently noticed that I was not motivated to test the mod properly so I decided to do some other things and regain some energy.

commented

I'm really looking forward to solving this problem, I'm creating a modpack with custom crafts and your port of this mod!

commented

New release is out, this should now be fixed.