
[ISSUE] - (Nightly 002) Client crash from Create Copycat
Closed this issue ยท 1 comments
Describe the bug
Create Copycat Pipes cause a client crash with a NoClassDefFoundException if fluid flows through them and they are in your FOV.
To Reproduce
Place a Create mechanical pump, something to feed it fluid, and a line of pipes containing at least one Copycat Pipe
Power the pump, sending fluid through the pipes
Turn your camera to see the Copycat Pipe
Crash
Expected behavior
Game not crash
Screenshots/Crash Reports
Time: 2025-08-30 15:51:39
Description: Rendering Block Entity
java.lang.NoClassDefFoundError: net/createmod/catnip/render/FluidRenderHelper
at com.copycatsplus.copycats.content.copycat.fluid_pipe.forge.ExpandedFluidRenderer.renderFluidStream(ExpandedFluidRenderer.java:70) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.copycatsplus.copycats.content.copycat.fluid_pipe.forge.ExpandedFluidRenderer.renderFluidStream(ExpandedFluidRenderer.java:32) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.copycatsplus.copycats.content.copycat.fluid_pipe.forge.CopycatFluidPipeRendererImpl.renderSafe(CopycatFluidPipeRendererImpl.java:70) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.copycatsplus.copycats.content.copycat.fluid_pipe.CopycatFluidPipeRenderer.renderSafe(CopycatFluidPipeRenderer.java) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.copycatsplus.copycats.content.copycat.fluid_pipe.CopycatFluidPipeRenderer.renderSafe(CopycatFluidPipeRenderer.java:18) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.copycatsplus.copycats.content.copycat.fluid_pipe.CopycatFluidPipeRenderer.renderSafe(CopycatFluidPipeRenderer.java:10) ~[copycats-3.0.2+mc.1.20.1-forge.jar%23491!/:?] {re:classloading}
at com.simibubi.create.foundation.blockEntity.renderer.SafeBlockEntityRenderer.m_6922_(SafeBlockEntityRenderer.java:24) ~[create-1.20.1-6.0.4.jar%23501!/:6.0.4] {re:classloading}
at net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher.m_112284_(BlockEntityRenderDispatcher.java:90) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
at net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher.m_112297_(BlockEntityRenderDispatcher.java:79) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
at net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher.m_112278_(BlockEntityRenderDispatcher.java:104) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
at net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher.m_112267_(BlockEntityRenderDispatcher.java:79) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:A}
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.renderBlockEntity(SodiumWorldRenderer.java:526) ~[embeddium-0.3.31+mc1.20.1.jar%23525!/:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.SodiumWorldRendererAccessor,pl:mixin:APP:littletiles.mixins.json:rubidium.SodiumWorldRendererAccessor,pl:mixin:A}
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.redirect$clm000$addToList(SodiumWorldRenderer.java:784) ~[embeddium-0.3.31+mc1.20.1.jar%23525!/:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.SodiumWorldRendererAccessor,pl:mixin:APP:littletiles.mixins.json:rubidium.SodiumWorldRendererAccessor,pl:mixin:A}
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.renderBlockEntities(SodiumWorldRenderer.java:457) ~[embeddium-0.3.31+mc1.20.1.jar%23525!/:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.SodiumWorldRendererAccessor,pl:mixin:APP:littletiles.mixins.json:rubidium.SodiumWorldRendererAccessor,pl:mixin:A}
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.renderBlockEntities(SodiumWorldRenderer.java:413) ~[embeddium-0.3.31+mc1.20.1.jar%23525!/:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.SodiumWorldRendererAccessor,pl:mixin:APP:littletiles.mixins.json:rubidium.SodiumWorldRendererAccessor,pl:mixin:A}
at net.minecraft.client.renderer.LevelRenderer.handler$bag000$onRenderBlockEntities(LevelRenderer.java:22295) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.renderer.LevelRenderer.m_109599_(LevelRenderer.java:1268) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.renderer.GameRenderer.m_109089_(GameRenderer.java:1126) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:moonlight-common.mixins.json:GameRendererMixin,pl:mixin:APP:kiwi.mixins.json:customization.client.GameRendererMixin,pl:mixin:APP:fastload.mixins.json:client.GameRendererMixin,pl:mixin:APP:updatingworldicon.mixins.json:MixinGameRenderer,pl:mixin:APP:ponder.mixins.json:client.accessor.GameRendererAccessor,pl:mixin:APP:immediatelyfast-common.mixins.json:core.compat.MixinGameRenderer,pl:mixin:APP:mixins.oculus.json:GameRendererAccessor,pl:mixin:APP:mixins.oculus.json:MixinGameRenderer,pl:mixin:APP:mixins.oculus.json:MixinModelViewBobbing,pl:mixin:APP:entity_model_features-common.mixins.json:MixinGameRenderer,pl:mixin:APP:supplementaries-common.mixins.json:GameRendererMixin,pl:mixin:APP:chloride.mixin.json:darkness.GameRendererMixin,pl:mixin:APP:okzoomer.mixins.json:GameRendererMixin,pl:mixin:APP:fancymenu.mixins.json:client.MixinGameRenderer,pl:mixin:APP:fancymenu.forge.mixins.json:client.MixinForgeGameRenderer,pl:mixin:APP:ars_nouveau.mixins.json:GameRendererMixin,pl:mixin:APP:lodestone.mixins.json:client.GameRendererMixin,pl:mixin:APP:littletiles.mixins.json:client.render.GameRendererAccessor,pl:mixin:APP:littletiles.mixins.json:client.render.GameRendererMixin,pl:mixin:APP:create.mixins.json:client.GameRendererMixin,pl:mixin:APP:embeddium.mixins.json:features.gui.hooks.console.GameRendererMixin,pl:mixin:APP:mixins.oculus.json:MixinGameRenderer_NightVisionCompat,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:909) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:moonlight-common.mixins.json:GameRendererMixin,pl:mixin:APP:kiwi.mixins.json:customization.client.GameRendererMixin,pl:mixin:APP:fastload.mixins.json:client.GameRendererMixin,pl:mixin:APP:updatingworldicon.mixins.json:MixinGameRenderer,pl:mixin:APP:ponder.mixins.json:client.accessor.GameRendererAccessor,pl:mixin:APP:immediatelyfast-common.mixins.json:core.compat.MixinGameRenderer,pl:mixin:APP:mixins.oculus.json:GameRendererAccessor,pl:mixin:APP:mixins.oculus.json:MixinGameRenderer,pl:mixin:APP:mixins.oculus.json:MixinModelViewBobbing,pl:mixin:APP:entity_model_features-common.mixins.json:MixinGameRenderer,pl:mixin:APP:supplementaries-common.mixins.json:GameRendererMixin,pl:mixin:APP:chloride.mixin.json:darkness.GameRendererMixin,pl:mixin:APP:okzoomer.mixins.json:GameRendererMixin,pl:mixin:APP:fancymenu.mixins.json:client.MixinGameRenderer,pl:mixin:APP:fancymenu.forge.mixins.json:client.MixinForgeGameRenderer,pl:mixin:APP:ars_nouveau.mixins.json:GameRendererMixin,pl:mixin:APP:lodestone.mixins.json:client.GameRendererMixin,pl:mixin:APP:littletiles.mixins.json:client.render.GameRendererAccessor,pl:mixin:APP:littletiles.mixins.json:client.render.GameRendererMixin,pl:mixin:APP:create.mixins.json:client.GameRendererMixin,pl:mixin:APP:embeddium.mixins.json:features.gui.hooks.console.GameRendererMixin,pl:mixin:APP:mixins.oculus.json:MixinGameRenderer_NightVisionCompat,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1146) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23725!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}
at net.minecraft.client.main.Main.main(Main.java:218) ~[minecraft-1.20.1-client.jar:?] {re:classloading,pl:runtimedistcleaner:A}
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {}
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {}
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {}
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {re:mixin}
at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.4.0.jar:?] {}
at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.4.0.jar:?] {}
at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.4.0.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?] {}
at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {}
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {}
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {}
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {}
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {re:mixin}
at io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:69) ~[?:?] {}
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:105) ~[?:?] {}
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129) ~[?:?] {}
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70) ~[?:?] {}
Caused by: java.lang.ClassNotFoundException: net.createmod.catnip.render.FluidRenderHelper
at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:141) ~[securejarhandler-2.1.10.jar:?] {}
at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?] {}
... 45 more
Desktop (please complete the following information):
- OS: [Windows 10]
- Pack Version [0.8.0 Nightly 002]
- Multiplayer dedicated server
Additional context
The crash only occurs if fluid is flowing through the pipes and they're in your render cone (even through walls). I was able to recover by setting my render distance and FOV to minimum, and sneaking around to cut off the pump feeding fluid into the pipes.
The crash is a Client only crash and does not kill a Dedicated Server.