Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modify modid to avoid some compability promblems. #2

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

FsaxZ
Copy link

@FsaxZ FsaxZ commented Sep 2, 2024

Modid has been modfied from trackwork to trackwork-fabric to solve some compability issues with other mods.
And it seems to be work well. (Forget the rendering issues.)

@zvikasdongre
Copy link
Owner

Hi, which mods had compatibility issues?

@FsaxZ
Copy link
Author

FsaxZ commented Sep 3, 2024

I'm not so sure, but it seems to be a problem with VMod.

java.lang.RuntimeException: Could not execute entrypoint stage 'main' due to errors, provided by 'valkyrien_mod'!
	at net.fabricmc.loader.impl.FabricLoaderImpl.lambda$invokeEntrypoints$2(FabricLoaderImpl.java:403)
	at net.fabricmc.loader.impl.util.ExceptionUtil.gatherExceptions(ExceptionUtil.java:33)
	at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:401)
	at net.fabricmc.loader.impl.game.minecraft.Hooks.startClient(Hooks.java:52)
	at fudge.notenoughcrashes.fabric.mixinhandlers.ModLoaders.fabricEntrypoints(ModLoaders.java:9)
	at net.minecraft.class_310.redirect$ehf000$notenoughcrashes$catchFabricInit(class_310.java:21511)
	at net.minecraft.class_310.<init>(class_310.java:458)
	at net.minecraft.client.main.Main.main(Main.java:211)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:480)
	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.NoClassDefFoundError: edn/stratodonut/trackwork/TrackBlocks
	at net.spaceeye.vmod.compat.schem.TrackworkSchemCompat.<init>(TrackworkSchemCompat.java:15)
	at net.spaceeye.vmod.compat.schem.SchemCompatObj.<clinit>(SchemCompatObj.java:22)
	at net.spaceeye.vmod.VM.init(VM.java:51)
	at net.spaceeye.vmod.fabric.VModFabric.onInitialize(VModFabric.kt:11)
	at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:399)
	... 8 more
Caused by: java.lang.ClassNotFoundException: edn.stratodonut.trackwork.TrackBlocks
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
	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(ClassLoader.java:526)
	... 13 more

@FsaxZ
Copy link
Author

FsaxZ commented Sep 3, 2024

It looks like some other mods didn't modify their code for interacting with trackwork on Fabric platform.
So, with wrong package and class names, they just throw NoClassDefFoundError.

For now, change the modid is the best way to avoid crushing with this mods. (I just want it to be working in my modpack.)

@zvikasdongre
Copy link
Owner

zvikasdongre commented Sep 3, 2024

That actually looks like vmod trying to import the trackwork blocks from package name edn.stratodonut.trackwork(which is for the forge trackwork) instead of net.zvikasdongre.trackwork which is for fabric.
However, changing the mod id will still not result in that issue going away, as the new package name would just be net.zvikasdongre.trackwork-fabric

NVM, yeah it will fix the crashing of vmod, but It will also disable trackwork compat

@zvikasdongre
Copy link
Owner

Afaik to solve this, we'll have to move the Trackwork compat from common to forge portion of vmod, and add another compatibility class into fabric portion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants