packetevents icon indicating copy to clipboard operation
packetevents copied to clipboard

Disconnect when going near a player with an item enchanted using EcoEnchants

Open freausan opened this issue 7 months ago • 1 comments

Describe the bug A clear and concise description of what the bug is.

Player disconnects when going near another player with an item enchanted with a custom EcoEnchants enchant.

image [LibsDisguises] Task #13907 for LibsDisguises v10.0.44-SNAPSHOT generated an exception java.lang.NullPointerException: Cannot invoke "com.github.retrooper.packetevents.protocol.item.enchantment.type.EnchantmentType.getId(com.github.retrooper.packetevents.protocol.player.ClientVersion)" because "enchantment" is null at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.protocol.component.builtin.item.ItemEnchantments.lambda$write$1(ItemEnchantments.java:62) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.PacketWrapper.writeMap(PacketWrapper.java:438) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.protocol.component.builtin.item.ItemEnchantments.write(ItemEnchantments.java:61) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.protocol.component.ComponentTypes$1.write(ComponentTypes.java:94) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.PacketWrapper.writeItemStackModern(PacketWrapper.java:553) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.PacketWrapper.writeItemStack(PacketWrapper.java:578) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerEntityEquipment.write(WrapperPlayServerEntityEquipment.java:85) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.PacketWrapper.prepareForSend(PacketWrapper.java:242) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.wrapper.PacketWrapper.prepareForSend(PacketWrapper.java:247) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.manager.protocol.ProtocolManager.transformWrappers(ProtocolManager.java:107) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.manager.protocol.ProtocolManager.sendPacketSilently(ProtocolManager.java:121) ~[packetevents-spigot-2.4.0.jar:?] at packetevents-spigot-2.4.0.jar/com.github.retrooper.packetevents.manager.player.PlayerManager.sendPacketSilently(PlayerManager.java:53) ~[packetevents-spigot-2.4.0.jar:?] at LibsDisguises.jar/me.libraryaddict.disguise.utilities.packets.LibsPackets.lambda$sendDelayed$2(LibsPackets.java:86) ~[LibsDisguises.jar:?] at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.21.jar:1.21-37-dd49fba] at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:482) ~[paper-1.21.jar:1.21-37-dd49fba] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1654) ~[paper-1.21.jar:1.21-37-dd49fba] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:471) ~[paper-1.21.jar:1.21-37-dd49fba] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1538) ~[paper-1.21.jar:1.21-37-dd49fba] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1246) ~[paper-1.21.jar:1.21-37-dd49fba] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:329) ~[paper-1.21.jar:1.21-37-dd49fba] at java.base/java.lang.Thread.run(Unknown Source) ~[?:?]

Software brand Paper version 1.21-37-master@dd49fba (2024-06-24T02:08:49Z) (Implementing API version 1.21-R0.1-SNAPSHOT)

Plugins image eco 6.71.3 EcoEnchants 12.10.1 packetevents 2.4.0 ProtocolLib 5.3.0-SNAPSHOT-721 LibsDisguises 10.0.44-SNAPSHOT

How To Reproduce Steps to reproduce the behavior: Example:

  1. Enchant an item with a custom EcoEnchants enchantment
  2. Have another play go near the player with the enchanted item in inventory
  3. Disconnect image

Expected behavior no crash?

Screenshots If applicable, add screenshots to help explain your problem.

Additional context Probably not specific to ecoenchants enchants but i would imagine generally all enchants registered with the new 1.21 system.

freausan avatar Jul 01 '24 08:07 freausan