SmileycorpMC / raids-backport

A mod that backports raids, pillagers and patrols to 1.12.
GNU Lesser General Public License v2.1
1 stars 2 forks source link

Server crashing #19

Open AechtRob opened 1 week ago

AechtRob commented 1 week ago

Hello,

We had several fatal server-side crashes on our multiplayer server all the same cause (Raids-Backport-1.12.2-1.1.3b):

java.lang.NoSuchMethodError: net.minecraft.entity.item.EntityItem.func_70016_h(DDD)V at net.smileycorp.raids.common.entities.ai.EntityAIGiveGift.func_75249_e(EntityAIGiveGift.java:38) at net.minecraft.entity.ai.EntityAITasks.func_75774_a(SourceFile:102) at net.minecraft.entity.EntityLiving.func_70626_be(EntityLiving.java:763) at net.minecraft.entity.EntityLivingBase.func_70636_d(EntityLivingBase.java:2359) at net.minecraft.entity.EntityLiving.func_70636_d(EntityLiving.java:577) at net.minecraft.entity.EntityAgeable.func_70636_d(EntityAgeable.java:178) at net.minecraft.entity.EntityLivingBase.func_70071h(EntityLivingBase.java:2179) at net.minecraft.entity.EntityLiving.func_70071h(EntityLiving.java:295) at net.minecraft.world.World.func_72866_a(World.java:1996) at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:832) at net.minecraft.world.World.func_72870_g(World.java:1958) at net.minecraft.world.World.func_72939_s(World.java:1762) at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:613) at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:767) at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:1817) at java.lang.Thread.run(Thread.java:750)

AechtRob commented 6 days ago

This is due to item.setVelocity being CLIENT only so it crashes when invoked on a server (line 28 of net.smileycorp.raids.common.entities.ai.EntityAIGiveGift)

Fix with:

if (villager.world.isRemote) {
                item.setVelocity(dx / magnitude, dy / magnitude, dz / magnitude);
}

I suspect that AI is not run on the client at all... so this line will then do nothing at all, ever. But anyway.....

SmileycorpMC commented 6 days ago

Thanks for pointing that out, I'll fix it for the next update.