Online Emotes

Online Emotes

108k Downloads

Update to 1.21.5!

WifiRouterYT opened this issue · 5 comments

commented

Minecraft version.

1.21.5

Emotecraft version.

2.6.0

Online Emotes version.

3.3.3.1

What happened?

Online emotes unfortunately doesn't launch with 1.21.5. Would love to use this mod :)

Relevant logs

---- Minecraft Crash Report ----
// You're mean.

Time: 2025-05-22 17:09:33
Description: Initializing game

java.lang.RuntimeException: Could not execute entrypoint stage 'client' due to errors, provided by 'online_emotes' at 'org.redlance.dima_dencep.mods.online_emotes.fabric.FabricOnlineEmotes'!
	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:53)
	at knot//fudge.notenoughcrashes.fabric.mixinhandlers.ModLoaders.fabricEntrypoints(ModLoaders.java:9)
	at knot//net.minecraft.class_310.redirect$cpo000$notenoughcrashes$catchFabricInit(class_310.java:14545)
	at knot//net.minecraft.class_310.<init>(class_310.java:473)
	at knot//net.minecraft.client.main.Main.main(Main.java:249)
	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: fuzs/forgeconfigapiport/fabric/api/neoforge/v4/NeoForgeConfigRegistry
	at knot//org.redlance.dima_dencep.mods.online_emotes.fabric.FabricOnlineEmotes.onInitializeClient(FabricOnlineEmotes.java:25)
	at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:399)
	... 8 more
Caused by: java.lang.ClassNotFoundException: fuzs.forgeconfigapiport.fabric.api.neoforge.v4.NeoForgeConfigRegistry
	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)
	... 10 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
	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:53)
	at knot//fudge.notenoughcrashes.fabric.mixinhandlers.ModLoaders.fabricEntrypoints(ModLoaders.java:9)
	at knot//net.minecraft.class_310.redirect$cpo000$notenoughcrashes$catchFabricInit(class_310.java:14545)
	at knot//net.minecraft.class_310.<init>(class_310.java:473)

Additional information

Forge Config API Port is installed so i'm not quite sure why it's crashing with a class not found error

(edit: fixed formatting)

commented

I need a MacBook so I can pass the website the mod was downloaded from in the headers (referer).
This will be implemented in about a week.

If you didn’t get why I need a Mac: Java doesn’t provide that kind of api, so I need to write platform-specific code for both platforms (fuck Linux)

commented

Ah I see, and yes I figured. This was just the way I managed to get it to work for now until a proper fix is available.

commented

I managed to get it compiled and launching with the following changes:

Line 4 of build.gradle from
id "dev.architectury.loom" version "1.9-SNAPSHOT" apply false to id "dev.architectury.loom" version "1.10-SNAPSHOT" apply false (emotecraft is compiled with a newer loom version and the build will fail on an older version)

and changing gradle.properties to look like this:

# Done to increase the memory available to gradle.
org.gradle.jvmargs=-Xmx4G
org.gradle.parallel=true

# Properties
    minecraft_version = 1.21.5
    parchment_version = 2025.04.19
    loader_version = 0.16.14
    forge_version = 21.5.67-beta

# Mod Properties
    mod_version = 3.3.3.2
    maven_group = org.redlance.dima_dencep.mods
    archives_base_name = online-emotes

# Dependencies
    emotecraft_version = 2.6.0-b.build.96
    fcapip_version = 21.4.1
    velocity_version = 3.4.0-SNAPSHOT
    netty_version = 4.1.121.Final
    fabric_version = 0.124.2+1.21.5

The only issue I really ran across was that a library that this new version of Emotecraft uses is a snapshot / not released yet, so I had to add it to a local maven repository and add mavenLocal() to build.gradle repositories. I got the latest snapshot jar that it was looking for from this GitHub Actions page: https://github.com/RaphiMC/NoteBlockLib/actions/runs/15190063027 (3.0.1-SNAPSHOT, while the only public release in the maven repo is 3.0.0)

Dirty hack but hey it works! (at least it launches)

commented

NoteBlockLib on a separate maven repository
In addition I plan to make some other changes as you have realized

commented

update released, the next one is definitely a port to 1.21.5