Goblin Traders

Goblin Traders

52M Downloads

[1.21.1] Feeding the goblins with their favorite food crashes client-side game

TIRTAGT opened this issue ยท 3 comments

commented

Describe the bug

Feeding the goblins (both normal and the vein variant) with their favorite food (Apple/Carrot) crashes the client-side game, client-side debug log:

[Sound engine/ERROR]: Stop: Invalid name parameter.
[Render thread/WARN]: Client disconnected with reason: Internal Exception: io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:level_particles'
[Render thread/INFO]: Stopping!

Server side log:

[22:17:09] [Netty Epoll Server IO #8/ERROR]: Error sending packet clientbound/minecraft:level_particles
io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:level_particles'
        at knot/net.minecraft.class_9136.method_56426(class_9136.java:55) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9136.encode(class_9136.java:14) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_2545.method_10838(class_2545.java:26) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_2545.encode(class_2545.java:12) ~[server-intermediary.jar:?]
        at knot/io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107) ~[netty-codec-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.ChannelOutboundHandlerAdapter.write(ChannelOutboundHandlerAdapter.java:113) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/net.minecraft.class_2535$2.write(class_2535.java:530) ~[server-intermediary.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:851) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.DefaultChannelPipeline.write(DefaultChannelPipeline.java:1010) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/io.netty.channel.AbstractChannel.write(AbstractChannel.java:296) ~[netty-transport-4.1.97.Final.jar:?]
        at knot/net.minecraft.class_2535.method_36942(class_2535.java:350) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_2535.method_52917(class_2535.java:345) ~[server-intermediary.jar:?]
        at knot/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.97.Final.jar:?]
        at knot/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.97.Final.jar:?]
        at knot/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.97.Final.jar:?]
        at knot/io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?]
        at knot/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.97.Final.jar:?]
        at knot/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.97.Final.jar:?]
        at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: io.netty.handler.codec.EncoderException: Empty ItemStack not allowed
        at knot/net.minecraft.class_1799$2.method_57387(class_1799.java:173) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_1799$2.encode(class_1799.java:160) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9139$8.encode(class_9139.java:81) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9139$10.encode(class_9139.java:117) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_2675.method_55885(class_2675.java:61) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9139$6.encode(class_9139.java:42) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9139$9.method_56442(class_9139.java:97) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9139$9.encode(class_9139.java:87) ~[server-intermediary.jar:?]
        at knot/net.minecraft.class_9136.method_56426(class_9136.java:53) ~[server-intermediary.jar:?]
        ... 31 more

To Reproduce

  1. Install the mod and the required dependencies:

  2. Join to the game

  3. Summon the goblins (bug is still valid with naturally spawned goblins)

  4. Feed them with their respective favorite foods (Apple/Carrot)

Expected behavior

Feeding the goblins should work just fine instead of crashing the client-side game

Mod Version

1.11.1

Minecraft Version

1.21.1

Modloader

Fabric

Crash Log (if applicable)

Stack trace for the crash already available above

Additional context

Client-Side Screenshot:
Image showing the crash dialog on client side

commented

I tried to build the mod from source to narrow down the problem further but was unable to do so because of the credential required block on multiloader-common.gradle#L47

But based on the stack trace, looks like spawnFoodParticles(ItemStack stack, int count) is called with minecraft:air as the item stack

commented

I have this too