MehVahdJukaar/Moonlight

[๐Ÿž]: Moonlight Lib update prevents logging into server

AnyankaT opened this issue ยท 11 comments

BEFORE CONTINUING:

  • Always check you are using the latest version of these mods and its dependencies
  • Remove known problematic rendering mods such as Optifine, Sodium and others

Version-Loader

1.20.1-forge

Moonlight Lib Version

moonlight-1.20.2.11.15-forge.jar

Issue Detail

Most recent version of moonlight prevents me from logging into dedicated server. I hang on the "Joining World" screen and can't continue.

Rolling back to 2.11.14 solves the problem.

Log Attachment

latest.zip

OPTIONAL: To Produce

Update Moonlight Lib to 1.20.1-2.11.5 version.
Launch Minecraft
Attempt to log into dedicated server. Server hangs on "Joining World" with error messages containing multiple instances of "java.lang.NullPointerException: Cannot invoke "net.minecraft.client.multiplayer.ClientLevel.m_6815_(int)" because "this.f_104889_" is null" with "this.X_XXXXXX_" being different letters and numbers each time.

OPTIONAL: Which mods are affected?

No response

Just to add... Versions on server and client are the same (I'm the server admin). Rolled both back to 14 - 15 was the culprit.

Can confirm, didn't happen last update.

Log shows

[05May2024 15:15:05.237] [Render thread/ERROR] [net.minecraftforge.eventbus.EventBus/EVENTBUS]: Exception caught during firing event: Not all required entries were found in datapack registry. How did this happen?
This MUST be some OTHER mod messing up datapack registries (currently Cyanide is known to cause this).
Note that this could be caused by Paper or similar servers. Know that those are NOT meant to be used with mods
	Index: 16
	Listeners:
		0: HIGH
		1: ASM: class dev.architectury.event.forge.EventHandlerImplClient eventWorldEvent(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		2: ASM: class dev.architectury.event.forge.EventHandlerImplCommon eventWorldEvent(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		3: NORMAL
		4: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@10f98156
		5: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@53309305
		6: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@2530b4c1
		7: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@5bea3958
		8: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@7c5e042
		9: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@503af304
		10: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@708cd37e
		11: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@7a2604ce
		12: ASM: class com.unixkitty.timecontrol.handler.ServerTimeHandler onWorldLoad(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		13: ASM: sereneseasons.handler.season.SeasonHandler@391bab88 onWorldLoaded(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		14: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@52c92c38
		15: ASM: class sereneseasons.handler.season.TimeSkipHandler onWorldLoaded(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		16: ASM: class net.mehvahdjukaar.moonlight.forge.MoonlightForge onLevelLoaded(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		17: ASM: org.anti_ad.mc.ipnext.forge.ForgeEventHandler@297b5a2 joinWorld(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		18: ASM: team.creative.creativecore.common.config.event.ConfigEventHandler@11f3dbb0 loadLevel(Lnet/minecraftforge/event/level/LevelEvent$Load;)V
		19: net.minecraftforge.eventbus.EventBus$$Lambda$1717/0x00000008007f7758@55ec47b6
java.lang.RuntimeException: Not all required entries were found in datapack registry. How did this happen?
This MUST be some OTHER mod messing up datapack registries (currently Cyanide is known to cause this).
Note that this could be caused by Paper or similar servers. Know that those are NOT meant to be used with mods
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.core.Moonlight.checkDatapackRegistry(Moonlight.java:145)
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.forge.MoonlightForge.onLevelLoaded(MoonlightForge.java:137)
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.forge.__MoonlightForge_onLevelLoaded_Load.invoke(.dynamic)
	at MC-BOOTSTRAP/net.minecraftforge.eventbus/net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:73)
	at MC-BOOTSTRAP/net.minecraftforge.eventbus/net.minecraftforge.eventbus.EventBus.post(EventBus.java:315)
	at MC-BOOTSTRAP/net.minecraftforge.eventbus/net.minecraftforge.eventbus.EventBus.post(EventBus.java:296)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.multiplayer.ClientLevel.<init>(ClientLevel.java:182)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.multiplayer.ClientPacketListener.m_5998_(ClientPacketListener.java:403)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.network.protocol.game.ClientboundLoginPacket.m_5797_(ClientboundLoginPacket.java:95)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.network.protocol.game.ClientboundLoginPacket.m_5797_(ClientboundLoginPacket.java:25)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.network.protocol.PacketUtils.m_263899_(PacketUtils.java:22)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.util.thread.BlockableEventLoop.m_6367_(BlockableEventLoop.java:156)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.util.thread.ReentrantBlockableEventLoop.m_6367_(ReentrantBlockableEventLoop.java:23)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.util.thread.BlockableEventLoop.m_7245_(BlockableEventLoop.java:130)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.util.thread.BlockableEventLoop.m_18699_(BlockableEventLoop.java:115)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1106)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718)
	at TRANSFORMER/minecraft@1.20.1/net.minecraft.client.main.Main.main(Main.java:218)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.20/net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111)
	at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.20/net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99)
	at MC-BOOTSTRAP/fmlloader@1.20.1-47.2.20/net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.run(Launcher.java:108)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.Launcher.main(Launcher.java:78)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
	at MC-BOOTSTRAP/cpw.mods.modlauncher@10.0.9/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
	at cpw.mods.bootstraplauncher@1.1.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141)
Caused by: java.lang.UnsupportedOperationException: Failed to get registry access: level was null
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.api.util.Utils.hackyGetRegistryAccess(Utils.java:205)
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.api.misc.DataObjectReference.getHolder(DataObjectReference.java:49)
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.api.fluids.SoftFluidRegistry.getEmpty(SoftFluidRegistry.java:22)
	at TRANSFORMER/moonlight@1.20-2.11.15/net.mehvahdjukaar.moonlight.core.Moonlight.checkDatapackRegistry(Moonlight.java:142)
	... 32 more

That's because I added some safety checks to prevent issues. Read top of the log. I'm not sure which mod would cause this tho since its on forge here

[14:56:03] [Render thread/ERROR]: Error executing task on Client java.lang.RuntimeException: Not all required entries were found in datapack registry. How did this happen? This MUST be some OTHER mod messing up datapack registries (currently Cyanide is known to cause this). Note that this could be caused by Paper or similar servers. Know that those are NOT meant to be used with mods at net.mehvahdjukaar.moonlight.core.Moonlight.checkDatapackRegistry(Moonlight.java:145) ~[moonlight-1.20-2.11.15-forge.jar%23456!/:?] at net.mehvahdjukaar.moonlight.forge.MoonlightForge.onLevelLoaded(MoonlightForge.java:137) ~[moonlight-1.20-2.11.15-forge.jar%23456!/:?] at net.mehvahdjukaar.moonlight.forge.__MoonlightForge_onLevelLoaded_Load.invoke(.dynamic) ~[moonlight-1.20-2.11.15-forge.jar%23456!/:?] at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:73) ~[eventbus-6.0.5.jar%2387!/:?]
I see this, but I don't know what it's looking for, and the modpack worked fine with the previous version.

downgrade your version. then if you hape supplementaries place down a jar or a goblet or an amendments cauldron

Having the same issue.

then same answer as above

so I'm not exactly sure whats going on here tbh. Check i added checks if dapatck registries added by the mod have been filled. This is normally always the case. and will cause crashes when some mod happen to break

Created a new instance with Minecraft 1.20.1, Fabric Loader 0.15.11, Fabric API 0.92.1, Fast Paintings 1.2.5, Moonlight Lib 2.11.17.

I then connected to the cubecraft.net server. I joined but as soon as it loaded the server's required resourcepack, it caught an error loading resourcepacks and I was sent to the title screen. Connecting to the server again results in it trying to load the resourcepack, having an error reloading resourcepacks, then sending me to the title screen again.

2024-05-06-1.log

Snippet of log
Caught error loading resourcepacks, removing all selected resourcepacks
java.util.concurrent.CompletionException: java.lang.IllegalStateException: Missing registry: ResourceKey[minecraft:root / moonlight:soft_fluids]
	at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) ~[?:?]
	at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) ~[?:?]
	at java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:791) ~[?:?]
	at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) ~[?:?]
	at net.minecraft.class_4014.method_18365(class_4014.java:69) ~[client-intermediary.jar:?]
	at net.minecraft.class_1255.method_18859(class_1255.java:156) ~[client-intermediary.jar:?]
	at net.minecraft.class_4093.method_18859(class_4093.java:23) ~[client-intermediary.jar:?]
	at net.minecraft.class_1255.method_16075(class_1255.java:130) ~[client-intermediary.jar:?]
	at net.minecraft.class_1255.method_5383(class_1255.java:115) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1523(class_310.java:1175) ~[client-intermediary.jar:?]
	at net.minecraft.class_310.method_1514(class_310.java:802) ~[client-intermediary.jar:?]
	at net.minecraft.client.main.Main.main(Main.java:250) ~[minecraft-1.20.1-client.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.15.11.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.15.11.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.15.11.jar:?]
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71) ~[NewLaunch.jar:?]
Caused by: java.lang.IllegalStateException: Missing registry: ResourceKey[minecraft:root / moonlight:soft_fluids]
	at net.minecraft.class_5455.method_30534(class_5455.java:26) ~[client-intermediary.jar:?]
	at java.util.Optional.orElseThrow(Optional.java:403) ~[?:?]
	at net.minecraft.class_5455.method_30530(class_5455.java:26) ~[client-intermediary.jar:?]
	at net.mehvahdjukaar.moonlight.api.fluids.SoftFluidRegistry.getRegistry(SoftFluidRegistry.java:34) ~[moonlight-1.20-2.11.17-fabric.jar:?]
	at net.mehvahdjukaar.moonlight.api.fluids.SoftFluidColors.refreshParticleColors(SoftFluidColors.java:39) ~[moonlight-1.20-2.11.17-fabric.jar:?]
	at net.mehvahdjukaar.moonlight.api.fluids.SoftFluidColors.method_14491(SoftFluidColors.java:32) ~[moonlight-1.20-2.11.17-fabric.jar:?]
	at net.minecraft.class_4013.method_29490(class_4013.java:15) ~[client-intermediary.jar:?]
	at java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787) ~[?:?]
	... 15 more

Edit: I see now that Fast Paintings says it's required on servers too. Please ignore my invalid report.

is this still a thing?