DropHeads icon indicating copy to clipboard operation
DropHeads copied to clipboard

DropHeads v3.9.7 Could not pass event EntityDeathEvent to DropHeads v3.9.7

Open pjindras opened this issue 1 year ago • 5 comments

[22:03:05] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.7 java.lang.ClassCastException: class org.bukkit.craftbukkit.entity.CraftVillager$CraftType cannot be cast to class java.lang.Enum (org.bukkit.craftbukkit.entity.CraftVillager$CraftType is in unnamed module of loader java.net.URLClassLoader @7e774085; java.lang.Enum is in module java.base of loader 'bootstrap') at DropHeads.jar/net.evmodder.DropHeads.TextureKeyLookup.getTextureKey(TextureKeyLookup.java:209) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.HeadAPI.getHead(HeadAPI.java:834) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:710) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:153) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:72) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:60) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:629) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:1007) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1951) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1852) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.AbstractVillager.die(AbstractVillager.java:243) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.Villager.die(Villager.java:797) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1645) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.player.Player.attack(Player.java:1393) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2565) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl$3.onAttack(ServerGamePacketListenerImpl.java:2984) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:29) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:89) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2893) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:76) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:14) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:55) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:152) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1555) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:190) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1533) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1526) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1484) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1491) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1338) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?] [22:03:06] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.7 java.lang.ClassCastException: class org.bukkit.craftbukkit.entity.CraftVillager$CraftType cannot be cast to class java.lang.Enum (org.bukkit.craftbukkit.entity.CraftVillager$CraftType is in unnamed module of loader java.net.URLClassLoader @7e774085; java.lang.Enum is in module java.base of loader 'bootstrap') at DropHeads.jar/net.evmodder.DropHeads.TextureKeyLookup.getTextureKey(TextureKeyLookup.java:209) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.HeadAPI.getHead(HeadAPI.java:834) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:710) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:153) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:72) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:60) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:629) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:1007) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1951) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1852) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.AbstractVillager.die(AbstractVillager.java:243) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.Villager.die(Villager.java:797) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1645) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.player.Player.attack(Player.java:1393) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2565) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl$3.onAttack(ServerGamePacketListenerImpl.java:2984) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:29) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:89) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2893) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:76) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:14) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:55) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:152) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1555) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:190) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1533) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1526) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1484) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1491) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1338) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?] [22:03:06] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.7 java.lang.ClassCastException: class org.bukkit.craftbukkit.entity.CraftVillager$CraftType cannot be cast to class java.lang.Enum (org.bukkit.craftbukkit.entity.CraftVillager$CraftType is in unnamed module of loader java.net.URLClassLoader @7e774085; java.lang.Enum is in module java.base of loader 'bootstrap') at DropHeads.jar/net.evmodder.DropHeads.TextureKeyLookup.getTextureKey(TextureKeyLookup.java:209) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.HeadAPI.getHead(HeadAPI.java:834) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:710) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:153) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:72) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:60) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:629) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:1007) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1951) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1852) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.AbstractVillager.die(AbstractVillager.java:243) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.npc.Villager.die(Villager.java:797) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1645) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.world.entity.player.Player.attack(Player.java:1393) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2565) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl$3.onAttack(ServerGamePacketListenerImpl.java:2984) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:29) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:89) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2893) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:76) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:14) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:55) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:152) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1555) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:190) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1533) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1526) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1484) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1491) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1338) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[leaf-1.21.1.jar:1.21.1-DEV-1a9ddb5] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?]

pjindras avatar Sep 04 '24 10:09 pjindras

Hmm, looks like a similar issue to what was happening with Wolf variant heads. I did some further research and it seems in 1.21 the Bukkit/Spigot API changed about 15% of mobs away from using Enums and now they instead use a Keyed Registry.

Anyways, in non-programmer speak, I think I was able to fix it, but I won't be able to fully test and upload a new release until this weekend at the earliest.

In the meantime though, I've updated the dev jar for v3.9.8, if you'd like you can try it out and LMK if it's still giving that error.

EvModder avatar Sep 05 '24 03:09 EvModder

Currently running Paper 1.20.1 version 196 Minecraft 1.20.1 DropHeads v3.9.7

I've since updated to the v3.9.8 dev jar as of now and will let you know if this occurs again.

Here is the following log:

[19:32:31] [Server thread/WARN]: [DropHeads] Unable to find key in 'head-textures.txt': SKELETON|HOLLOW|PRE_JAPPA [19:32:31] [Server thread/WARN]: [DropHeads] Unable to find key in 'head-textures.txt': SKELETON|HOLLOW [19:32:31] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.7 java.lang.ClassCastException: class org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData cannot be cast to class org.bukkit.block.data.Rotatable (org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData and org.bukkit.block.data.Rotatable are in unnamed module of loader java.net.URLClassLoader @5a10411) at net.evmodder.DropHeads.DropChanceAPI.dropHeadItem(DropChanceAPI.java:506) ~[DropHeads.jar:?] at net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:718) ~[DropHeads.jar:?] at net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads.jar:?] at net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:195) ~[DropHeads.jar:?] at net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:81) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:git-Paper-196] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.20.1.jar:git-Paper-196] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[paper-1.20.1.jar:git-Paper-196] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_20_R1.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:928) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1801) ~[?:?] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1695) ~[?:?] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1519) ~[?:?] at net.minecraft.world.entity.player.Player.attack(Player.java:1320) ~[?:?] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2168) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl$4.a(ServerGamePacketListenerImpl.java:2913) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:24) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:80) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2837) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:67) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:12) ~[?:?] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:51) ~[?:?] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1338) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1315) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1308) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1286) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1174) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196] at java.lang.Thread.run(Thread.java:1583) ~[?:?]

R3DR4V3N avatar Sep 24 '24 21:09 R3DR4V3N

Currently running Paper 1.20.1 version 196 Minecraft 1.20.1 DropHeads v3.9.8 Dev Build

I'm still seeing this occur with this recent dev build. Not sure if there's anything I can do on my end to mitigate this other than updating to 1.21.1. If I do update to the latest Minecraft version and this error occurs I'll make another comment. I'll continue using the latest dev build.

[04:27:40 WARN]: [DropHeads] Unable to find key in 'head-textures.txt': SKELETON|HOLLOW|PRE_JAPPA [04:27:40 WARN]: [DropHeads] Unable to find key in 'head-textures.txt': SKELETON|HOLLOW [04:27:40 ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.8 java.lang.ClassCastException: class org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData cannot be cast to class org.bukkit.block.data.Rotatable (org.bukkit.craftbukkit.v1_20_R1.block.data.CraftBlockData and org.bukkit.block.data.Rotatable are in unnamed module of loader java.net.URLClassLoader @5a10411) at net.evmodder.DropHeads.DropChanceAPI.dropHeadItem(DropChanceAPI.java:506) ~[DropHeads_v3.9.8.jar:?] at net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:718) ~[DropHeads_v3.9.8.jar:?] at net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads_v3.9.8.jar:?] at net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:195) ~[DropHeads_v3.9.8.jar:?] at net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads_v3.9.8.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:81) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:git-Paper-196] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.20.1.jar:git-Paper-196] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[paper-1.20.1.jar:git-Paper-196] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_20_R1.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:928) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1801) ~[?:?] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1695) ~[?:?] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1519) ~[?:?] at net.minecraft.world.entity.player.Player.attack(Player.java:1320) ~[?:?] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2168) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl$4.a(ServerGamePacketListenerImpl.java:2913) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:24) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:80) ~[?:?] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2837) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:67) ~[?:?] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:12) ~[?:?] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:51) ~[?:?] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1338) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1315) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1308) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1286) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1174) ~[paper-1.20.1.jar:git-Paper-196] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196] at java.lang.Thread.run(Thread.java:1583) ~[?:?]

R3DR4V3N avatar Sep 25 '24 19:09 R3DR4V3N

Hmm, based on the error, I assume you are using the setting to place the head as a block in the world?

I'm surprised to see the "hollow skulls" warnings because Mojang removed support for transparency in head textures a couple years ago and I thought I removed all options to use those in DropHeads shortly after.

If you can link a pastebin with your plugins/DropHeads/config.yml file, I can probably get this error fixed in an updated dev jar

EvModder avatar Sep 25 '24 21:09 EvModder

I found those errors in console:

23:54:55[ERROR] Could not pass event PlayerInteractEvent to DropHeads v3.9.7 java.lang.ClassCastException: class net.minecraft.world.item.component.ResolvableProfile cannot be cast to class com.mojang.authlib.GameProfile (net.minecraft.world.item.component.ResolvableProfile and com.mojang.authlib.GameProfile are in unnamed module o f loader java.net.URLClassLoader @108c4c35) at DropHeads.jar/net.evmodder.EvLib.extras.HeadUtils.getGameProfile(HeadUtils.java:142) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.BlockClickListener.getHeadNameData(BlockClickListener.java:148) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.BlockClickListener.onBlockClickEvent(BlockClickListener.java:230) ~[DropHeads.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1079.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:65) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:629) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:604) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.level.ServerPlayerGameMode.useItemOn(ServerPlayerGameMode.java:538) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItemOn(ServerGamePacketListenerImpl.java:2031) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:44) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:11) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:55) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:151) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1564) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:190) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1542) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1535) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1483) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1493) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1337) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?] 23:55:09[ERROR] Could not pass event PlayerInteractEvent to DropHeads v3.9.7 java.lang.ClassCastException: class net.minecraft.world.item.component.ResolvableProfile cannot be cast to class com.mojang.authlib.GameProfile (net.minecraft.world.item.component.ResolvableProfile and com.mojang.authlib.GameProfile are in unnamed module o f loader java.net.URLClassLoader @108c4c35) at DropHeads.jar/net.evmodder.EvLib.extras.HeadUtils.getGameProfile(HeadUtils.java:142) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.BlockClickListener.getHeadNameData(BlockClickListener.java:148) ~[DropHeads.jar:?] at DropHeads.jar/net.evmodder.DropHeads.listeners.BlockClickListener.onBlockClickEvent(BlockClickListener.java:230) ~[DropHeads.jar:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1079.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:65) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:629) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:604) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.level.ServerPlayerGameMode.useItemOn(ServerPlayerGameMode.java:538) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItemOn(ServerGamePacketListenerImpl.java:2031) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:44) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.game.ServerboundUseItemOnPacket.handle(ServerboundUseItemOnPacket.java:11) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:55) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:151) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1564) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:190) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1542) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1535) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1483) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1493) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1337) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[leaf-1.21.1.jar:1.21.1-DEV-4548da8] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?]

MC 1.21.1 Java 21

pjindras avatar Sep 25 '24 21:09 pjindras

MC 1.21.1 -->

[17:52:36] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.8

@EvModder Is config.yml still needed?

Submons avatar Oct 06 '24 16:10 Submons

Sorry for the late reply. I only just got an email this morning telling me about your reply.

This is my current config. I've had the plugin installed for over 2 years but have never actually gotten it to work. https://pastebin.com/BknMvjc3

I've since updated my server to 1.21.1 with Paper 1.21.1-118 I now get the following error on bootup:

[01:15:53] [Server thread/ERROR]: Could not pass event EntityDeathEvent to DropHeads v3.9.8 java.lang.IllegalArgumentException: Can not set net.minecraft.world.item.component.ResolvableProfile field org.bukkit.craftbukkit.inventory.CraftMetaSkull.profile to com.mojang.authlib.GameProfile at java.base/jdk.internal.reflect.FieldAccessorImpl.throwSetIllegalArgumentException(FieldAccessorImpl.java:228) ~[?:?] at java.base/jdk.internal.reflect.FieldAccessorImpl.throwSetIllegalArgumentException(FieldAccessorImpl.java:232) ~[?:?] at java.base/jdk.internal.reflect.MethodHandleObjectFieldAccessorImpl.set(MethodHandleObjectFieldAccessorImpl.java:115) ~[?:?] at java.base/java.lang.reflect.Field.set(Field.java:836) ~[?:?] at DropHeads_v3.9.8.jar/net.evmodder.EvLib.extras.HeadUtils.setGameProfile(HeadUtils.java:116) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.HeadAPI.makeHeadFromTexture(HeadAPI.java:644) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.HeadAPI.getHead(HeadAPI.java:741) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.HeadAPI.getHead(HeadAPI.java:851) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:710) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:195) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads_v3.9.8.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:84) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:1.21.1-118-fb76840] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:628) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:998) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.world.entity.LivingEntity.dropAllDeathLoot(LivingEntity.java:1878) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.world.entity.LivingEntity.die(LivingEntity.java:1781) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1586) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.world.entity.player.Player.attack(Player.java:1344) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2420) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.network.ServerGamePacketListenerImpl$3.onAttack(ServerGamePacketListenerImpl.java:2879) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:29) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:89) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2790) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:76) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:14) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:56) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:151) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1535) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:201) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1512) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1505) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1464) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1471) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1316) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:329) ~[paper-1.21.1.jar:1.21.1-118-fb76840] at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]

and also,

[12:01:07 INFO]: [DropHeads] Enabling DropHeads v3.9.8 [12:01:07 ERROR]: [DropHeads] Unknown material in 'head-place-overwrite-blocks': GRASS

Let me know if there's something wrong with my config.

Hmm, based on the error, I assume you are using the setting to place the head as a block in the world?

I'm surprised to see the "hollow skulls" warnings because Mojang removed support for transparency in head textures a couple years ago and I thought I removed all options to use those in DropHeads shortly after.

If you can link a pastebin with your plugins/DropHeads/config.yml file, I can probably get this error fixed in an updated dev jar

R3DR4V3N avatar Oct 06 '24 17:10 R3DR4V3N

Thanks for the all the details, I should definitely be able to fix this, and sorry for taking a while to do so. I'll dig into it rn, and hopefully have an update later this afternoon.

EvModder avatar Oct 06 '24 19:10 EvModder

Okay, I've updated the dev jar DropHeads v3.9.8 just a few minutes ago, it should now be compatible with the changes in Minecraft 1.21 -> 1.21.1

As for the other error, I think I've fixed that too. LMK if any further errors appear in the console.

I'm strongly considering dropping support for older versions of Minecraft (right now the plugin supports all the way back to 1.13+), because it feels like Mojang/Spigot keep changing the player profile API every minor version (like 1.21 to 1.21.1) and it is becoming a headache to keep all the different code paths.

EvModder avatar Oct 07 '24 00:10 EvModder

Okay, I've updated the dev jar DropHeads v3.9.8 just a few minutes ago, it should now be compatible with the changes in Minecraft 1.21 -> 1.21.1

This version on Purpur 1.21.1 fixed the EntityDeathEvent error for me. Thank you!

I'm strongly considering dropping support for older versions of Minecraft (right now the plugin supports all the way back to 1.13+), because it feels like Mojang/Spigot keep changing the player profile API every minor version (like 1.21 to 1.21.1) and it is becoming a headache to keep all the different code paths.

You could have a "legacy" version for <1.19, and only make bug/security fixes to it, with no guarantee that new features can be back-ported. It's far more work to make sure any changes for new features don't break compatibility.

EmanYm avatar Oct 07 '24 17:10 EmanYm

I still encounter this on bootup:

[17:56:36 ERROR]: [DropHeads] Unknown material in 'head-place-overwrite-blocks': GRASS

R3DR4V3N avatar Oct 07 '24 18:10 R3DR4V3N

Yep, those head textures are no longer included in the jar by default because it was starting to increase the file size a LOT, and those head variants are all disabled by default.

If you have them enabled in your config, and the plugin detects texture changes (which happen in most DropHeads updates), it will automatically download the extra textures and merge them into the local head-textures.txt file

EvModder avatar Oct 07 '24 18:10 EvModder

Getting the following when I am killed by another player. I AM using Multiverse Inventories. I included their log in case that is what's interfering.

[02:01:02 ERROR]: Could not pass event PlayerDeathEvent to DropHeads v3.9.8 java.lang.ClassCastException: class org.bukkit.craftbukkit.block.data.CraftBlockData cannot be cast to class org.bukkit.block.data.Rotatable (org.bukkit.craftbukkit.block.data.CraftBlockData and org.bukkit.block.data.Rotatable are in unnamed module of loader java.net.URLClassLoader @5a10411) at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.DropChanceAPI.dropHeadItem(DropChanceAPI.java:506) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:718) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.DropChanceAPI.triggerHeadDropEvent(DropChanceAPI.java:734) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.listeners.EntityDeathListener.onEntityDeath(EntityDeathListener.java:195) ~[DropHeads_v3.9.8.jar:?] at DropHeads_v3.9.8.jar/net.evmodder.DropHeads.listeners.EntityDeathListener$DeathEventExecutor.execute(EntityDeathListener.java:288) ~[DropHeads_v3.9.8.jar:?] at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:84) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:1.21.1-119-7cd4f2c] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:628) ~[paper-mojangapi-1.21.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:1030) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.level.ServerPlayer.die(ServerPlayer.java:1038) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.world.entity.LivingEntity.hurt(LivingEntity.java:1586) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.world.entity.player.Player.hurt(Player.java:1002) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.level.ServerPlayer.hurt(ServerPlayer.java:1205) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.world.entity.player.Player.attack(Player.java:1344) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.level.ServerPlayer.attack(ServerPlayer.java:2420) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.network.ServerGamePacketListenerImpl$3.onAttack(ServerGamePacketListenerImpl.java:2879) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.network.protocol.game.ServerboundInteractPacket$1.dispatch(ServerboundInteractPacket.java:29) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.network.protocol.game.ServerboundInteractPacket.dispatch(ServerboundInteractPacket.java:89) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.network.ServerGamePacketListenerImpl.handleInteract(ServerGamePacketListenerImpl.java:2790) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:76) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.network.protocol.game.ServerboundInteractPacket.handle(ServerboundInteractPacket.java:14) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:56) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:151) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1535) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:201) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1512) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1505) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1464) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1471) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1316) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:329) ~[paper-1.21.1.jar:1.21.1-119-7cd4f2c] at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?] [02:01:02 INFO]: [Multiverse-Inventories-Debug] === Handling PlayerDeathEvent for: R3D_R4V3N === [02:01:02 INFO]: [Multiverse-Inventories-Debug] got data file: plugins/Multiverse-Inventories/worlds/world/R3D_R4V3N.json. Type: WORLD, DataName: world, PlayerName: R3D_R4V3N [02:01:02 INFO]: [Multiverse-Inventories-Debug] got data file: plugins/Multiverse-Inventories/groups/Survival/R3D_R4V3N.json. Type: GROUP, DataName: Survival, PlayerName: R3D_R4V3N [02:01:02 INFO]: [Multiverse-Inventories-Debug] Created player profile from map for 'R3D_R4V3N'. [02:01:02 INFO]: [Multiverse-Inventories-Debug] [ProfileType:SURVIVAL - GROUP - Survival - R3D_R4V3N] not cached, loading from disk... [02:01:02 INFO]: [Multiverse-Inventories-Debug] got data file: plugins/Multiverse-Inventories/groups/Survival/R3D_R4V3N.json. Type: GROUP, DataName: Survival, PlayerName: R3D_R4V3N [02:01:02 INFO]: [Multiverse-Inventories-Debug] === Finished handling PlayerDeathEvent for: R3D_R4V3N! ===

R3DR4V3N avatar Oct 08 '24 02:10 R3DR4V3N

Ok I think I've finally got a workaround for the Rotatable placed skulls when players die (for when that feature is enabled).

For whatever reason, Spigot API 1.21.1+ doesn't consider skull blocks to be Rotatable/directional anymore, so I have to use some hacky workaround to not cause it to error out. I've opened a bug report but sadly I'll probably need to leave in my workaround permanently for servers on this version (since Spigot will fix it for the next version, but they don't do backwards-fixes).

Anyways there is a 3.9.9 dev jar if you want to try it out, I haven't run it myself yet so it might not even load lol, but in theory should work

EvModder avatar Oct 25 '24 10:10 EvModder