utarwyn / EnderContainers

A modern and customizable Bukkit plugin to divide enderchest into multiple inventories.
https://spigotmc.org/resources/4750/
BSD 3-Clause "New" or "Revised" License
26 stars 14 forks source link

HologramException: cannot spawn hologram entity #225

Closed denvolj closed 1 year ago

denvolj commented 1 year ago

Versions EnderContainers version: 2.3.0-dev Platform version: git-Purpur-1906 (MC: 1.19.3)*

Describe the bug Console spamming when trying to place hologram entity:


fr.utarwyn.endercontainers.hologram.HologramException: cannot spawn hologram entity
        at fr.utarwyn.endercontainers.hologram.Hologram.spawn(Hologram.java:92) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.hologram.Hologram.<init>(Hologram.java:56) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.hologram.HologramManager.spawnHologram(HologramManager.java:148) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.hologram.HologramManager.lambda$checkHologramStatus$2(HologramManager.java:128) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.enderchest.EnderChestManager.loadPlayerContext(EnderChestManager.java:121) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.hologram.HologramManager.checkHologramStatus(HologramManager.java:127) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?]
        at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?]
        at java.util.AbstractList$RandomAccessSpliterator.forEachRemaining(AbstractList.java:720) ~[?:?]
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
        at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
        at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]
        at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]
        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
        at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]
        at fr.utarwyn.endercontainers.hologram.HologramManager.run(HologramManager.java:104) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_19_R2.scheduler.CraftTask.run(CraftTask.java:101) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at org.bukkit.craftbukkit.v1_19_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:483) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1500) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:482) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1424) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1194) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:321) ~[purpur-1.19.3.jar:git-Purpur-1906]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.NoSuchMethodException: net.minecraft.network.protocol.game.PacketPlayOutSpawnEntity.<init>(net.minecraft.world.entity.EntityLiving)
        at java.lang.Class.getConstructor0(Class.java:3585) ~[?:?]
        at java.lang.Class.getConstructor(Class.java:2271) ~[?:?]
        at fr.utarwyn.endercontainers.compatibility.nms.NMSHologramUtil.<init>(NMSHologramUtil.java:105) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.compatibility.nms.NMSHologramUtil.get(NMSHologramUtil.java:160) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        at fr.utarwyn.endercontainers.hologram.Hologram.spawn(Hologram.java:90) ~[EnderContainers-2.3.0-SNAPSHOT.jar:?]
        ... 23 more```

**Expected behavior**
Plugin showing enderchest holograms without warns.
utarwyn commented 1 year ago

Hello! EnderContainers does not officially support Purpur: this feature uses internal classes to operate and this may not work for a Bukkit/Spigot fork. But as this is a drop-in replacement for Paper, I will quickly check if I can find a working code for both Bukkit/Purpur

utarwyn commented 1 year ago

Oh this bug also occurs on Bukkit 1.19.3 / 1.19.4. I didn't think it could happen with the same minor version.. but since Minecraft's network protocol changes between patch versions, it broke my integration... I am working on a fix.

utarwyn commented 1 year ago

Hello @denvolj, support for Minecraft 1.19.3/1.19.4 has been added to the plugin! (v2.2.3 and v2.3.0) This should also work for Paper/Purpur. Feel free to reopen the issue if the bug persists.

You can download builds here: https://github.com/utarwyn/EnderContainers#downloads