PlayPro / CoreProtect

CoreProtect is a blazing fast data logging and anti-griefing tool for Minecraft servers.
Artistic License 2.0
640 stars 314 forks source link

Support for version 1.21 is recommended #600

Open achenrhyc opened 1 month ago

achenrhyc commented 1 month ago

In 1.21, there will be an error with funnel listening events and interaction events with turntables, and we hope to support 1.21 as soon as possible

achenrhyc commented 1 month ago

For example, when using version 1.21, when the player right-clicks on the jukebox, the player will get an error(Records are also not allowed to be played): Could not pass event PlayerInteractEvent to CoreProtect v22.4 org.bukkit.event.EventException: null at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[spigot-api-1.21-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot-api-1.21-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:601) ~[spigot-api-1.21-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:588) ~[spigot-api-1.21-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_21R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:569) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:504) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1585) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.network.protocol.game.PacketPlayInUseItem.a(PacketPlayInUseItem.java:44) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.network.protocol.game.PacketPlayInUseItem.a(PacketPlayInUseItem.java:11) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$ensureRunningOnSameThread$0(PlayerConnectionUtils.java:35) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.util.thread.IAsyncTaskHandler.d(SourceFile:162) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(SourceFile:23) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1270) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:203) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.util.thread.IAsyncTaskHandler.B(SourceFile:136) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.bv(MinecraftServer.java:1249) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.B(MinecraftServer.java:1242) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.util.thread.IAsyncTaskHandler.bB(SourceFile:121) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.v(MinecraftServer.java:1213) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1078) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:318) ~[spigot-1.21-R0.1-SNAPSHOT.jar:4226-Spigot-146439e-2889b3a] at java.base/java.lang.Thread.run(Thread.java:1583) [?:?] Caused by: java.lang.NoSuchFieldError: Class org.bukkit.Tag does not have member field 'org.bukkit.Tag ITEMS_MUSIC_DISCS' at net.coreprotect.listener.player.PlayerInteractListener.onPlayerInteract(PlayerInteractListener.java:687) ~[?:?] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-api-1.21-R0.1-SNAPSHOT.jar:?] ... 22 more

NOIR-DexPrkr commented 1 month ago

I second this:

Got the error:


[05:50:18 WARN]: java.io.NotSerializableException: org.bukkit.craftbukkit.entity.CraftVillager$CraftProfession
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1200)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:358)
[05:50:18 WARN]:        at java.base/java.util.ArrayList.writeObject(ArrayList.java:948)
[05:50:18 WARN]:        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
[05:50:18 WARN]:        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
[05:50:18 WARN]:        at java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1072)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1529)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1451)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1194)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:358)
[05:50:18 WARN]:        at java.base/java.util.ArrayList.writeObject(ArrayList.java:948)
[05:50:18 WARN]:        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
[05:50:18 WARN]:        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
[05:50:18 WARN]:        at java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1072)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1529)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1451)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1194)
[05:50:18 WARN]:        at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:358)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.database.statement.EntityStatement.insert(EntityStatement.java:27)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.database.logger.EntityKillLogger.log(EntityKillLogger.java:49)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.process.EntityKillProcess.process(EntityKillProcess.java:24)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.process.Process.processConsumer(Process.java:205)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.Consumer.run(Consumer.java:133)
[05:50:18 WARN]:        at java.base/java.lang.Thread.run(Thread.java:1583)
[05:50:18 WARN]: java.lang.NullPointerException: Cannot invoke "java.sql.ResultSet.next()" because "resultSet" is null
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.database.logger.EntityKillLogger.log(EntityKillLogger.java:51)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.process.EntityKillProcess.process(EntityKillProcess.java:24)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.process.Process.processConsumer(Process.java:205)
[05:50:18 WARN]:        at CoreProtect-22.4.jar//net.coreprotect.consumer.Consumer.run(Consumer.java:133)
[05:50:18 WARN]:        at java.base/java.lang.Thread.run(Thread.java:1583)
Skullians commented 1 month ago

CoreProtect version 22.4 does not support 1.21. This is because of changes made in Paper / Spigot API that breaks certain aspects of CoreProtect, namely things related to villagers, frogs, etc.

CoreProtect v23.0 solves this issue. it is currently available to Patrons, or you can compile it yourself for free on the GitHub yourselves. If you do not know how to compile it, join the Discord and I have a guide there that you can follow.