dmulloy2 / ProtocolLib

Provides read and write access to the Minecraft protocol with Bukkit.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Paper 1.20.5/6 Failed

SonnenPingu opened this issue · comments

[08:49:56] [Server thread/ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.RuntimeException: Failed to find NMS class: network.ProtocolInfo$a
at ProtocolLib(1).jar//com.comphenix.protocol.utility.MinecraftReflection.lambda$getMinecraftClass$2(MinecraftReflection.java:1383)
at java.base/java.util.Optional.orElseThrow(Unknown Source)
at ProtocolLib(1).jar//com.comphenix.protocol.utility.MinecraftReflection.getMinecraftClass(MinecraftReflection.java:1383)
at ProtocolLib(1).jar//com.comphenix.protocol.injector.packet.PacketRegistry.createRegisterV1_20_5(PacketRegistry.java:344)
at ProtocolLib(1).jar//com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:498)
at ProtocolLib(1).jar//com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:538)
at ProtocolLib(1).jar//com.comphenix.protocol.injector.PacketFilterManager.(PacketFilterManager.java:120)
at ProtocolLib(1).jar//com.comphenix.protocol.injector.PacketFilterBuilder.build(PacketFilterBuilder.java:121)
at ProtocolLib(1).jar//com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:183)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:59)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:18)
at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:39)
at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:36)
at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:508)
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:287)
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1140)
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326)
at java.base/java.lang.Thread.run(Unknown Source)
Dump:
Parameters:
[NULL]
Sender:
com.comphenix.protocol.ProtocolLib@42b30cfe[
statistics=
packetTask=
tickCounter=0
configExpectedMod=-1
updater=com.comphenix.protocol.updater.SpigotUpdater@56e53e50
redirectHandler=
scheduler=com.comphenix.protocol.scheduler.DefaultScheduler@ceb0c8e
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=false
loader=io.papermc.paper.plugin.manager.DummyBukkitPluginLoader@2a764c61
server=CraftServer{serverName=Paper,serverVersion=git-Paper-6,minecraftVersion=1.20.5}
file=plugins/.paper-remapped/ProtocolLib(1).jar
description=org.bukkit.plugin.PluginDescriptionFile@10c8f01e
pluginMeta=org.bukkit.plugin.PluginDescriptionFile@10c8f01e
dataFolder=plugins/ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v5.2.1-SNAPSHOT-686, pluginEnabled=false, url=plugins/.paper-remapped/ProtocolLib(1).jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins/ProtocolLib/config.yml
logger=com.destroystokyo.paper.utils.PaperPluginLogger@53a5cd2f
lifecycleEventManager=io.papermc.paper.plugin.lifecycle.event.PaperLifecycleEventManager@487a2487
allowsLifecycleRegistration=true
]
Version:
ProtocolLib v5.2.1-SNAPSHOT-686
Java Version:
21.0.3
Server:
git-Paper-6 (MC: 1.20.5)

I can't reproduce it, but I have an error to :

[12:00:45 WARN]: [ProtocolLib] Version (MC: 1.20.5) has not yet been tested! Proceed with caution.
[12:00:46 ERROR]: [ProtocolLib] Assuming package version: v1_20_R1
[12:00:46 ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.IllegalArgumentException: Unable to find a field that matches {modifiers=[required: 10000, banned: 1000], type={ type input instanceof interface java.util.Map }}
at ProtocolLib.jar//com.comphenix.protocol.reflect.FuzzyReflection.getField(FuzzyReflection.java:352)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.createNewRegister(PacketRegistry.java:183)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:334)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:369)
at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterManager.(PacketFilterManager.java:120)
at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterBuilder.build(PacketFilterBuilder.java:121)
at ProtocolLib.jar//com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:183)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:59)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:18)
at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:39)
at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:36)
at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:508)
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:287)
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1140)
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326)
at java.base/java.lang.Thread.run(Thread.java:1583)
Dump:
Parameters:
[NULL]
Sender:
com.comphenix.protocol.ProtocolLib@5db99512[
statistics=
packetTask=
tickCounter=0
configExpectedMod=-1
updater=com.comphenix.protocol.updater.SpigotUpdater@7b9e2cc5
redirectHandler=
scheduler=com.comphenix.protocol.scheduler.DefaultScheduler@6a1e27a1
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=false
loader=io.papermc.paper.plugin.manager.DummyBukkitPluginLoader@51b1320b
server=CraftServer{serverName=Paper,serverVersion=git-Paper-6,minecraftVersion=1.20.5}
file=plugins.paper-remapped\ProtocolLib.jar
description=org.bukkit.plugin.PluginDescriptionFile@4cded7d0
pluginMeta=org.bukkit.plugin.PluginDescriptionFile@4cded7d0
dataFolder=plugins\ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v5.2.0, pluginEnabled=false, url=plugins.paper-remapped\ProtocolLib.jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins\ProtocolLib\config.yml
logger=com.destroystokyo.paper.utils.PaperPluginLogger@2c5373b0
lifecycleEventManager=io.papermc.paper.plugin.lifecycle.event.PaperLifecycleEventManager@86c56db
allowsLifecycleRegistration=true
]
Version:
ProtocolLib v5.2.0
Java Version:
21.0.2
Server:
git-Paper-6 (MC: 1.20.5)

Me too:

[10:10:18] [Server thread/WARN]: [ProtocolLib] Version (MC: 1.20.5) has not yet been tested! Proceed with caution. -- 164 | [10:10:19] [Server thread/ERROR]: [ProtocolLib] Assuming package version: v1_20_R1 165 | [10:10:19] [Server thread/ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib. 166 | If this problem hasn't already been reported, please open a ticket 167 | at https://github.com/dmulloy2/ProtocolLib/issues with the following data: 168 | Stack Trace: 169 | java.lang.IllegalArgumentException: Unable to find a field that matches {modifiers=[required: 10000, banned: 1000], type={ type input instanceof interface java.util.Map }} 170 | at ProtocolLib (3).jar//com.comphenix.protocol.reflect.FuzzyReflection.getField(FuzzyReflection.java:352) 171 | at ProtocolLib (3).jar//com.comphenix.protocol.injector.packet.PacketRegistry.createNewRegister(PacketRegistry.java:183) 172 | at ProtocolLib (3).jar//com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:334) 173 | at ProtocolLib (3).jar//com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:369) 174 | at ProtocolLib (3).jar//com.comphenix.protocol.injector.PacketFilterManager.

Same issue on my server, can reproduce.

[21:48:06 WARN]: [ProtocolLib] Version (MC: 1.20.6) has not yet been tested! Proceed with caution.
[21:48:07 ERROR]: [ProtocolLib] Assuming package version: v1_20_R1
[21:48:07 ERROR]:   [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
  If this problem hasn't already been reported, please open a ticket
  at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
  Stack Trace:
  java.lang.RuntimeException: Failed to find NMS class: network.ProtocolInfo$a
        at ProtocolLib.jar//com.comphenix.protocol.utility.MinecraftReflection.lambda$getMinecraftClass$2(MinecraftReflection.java:1383)
        at java.base/java.util.Optional.orElseThrow(Optional.java:403)
        at ProtocolLib.jar//com.comphenix.protocol.utility.MinecraftReflection.getMinecraftClass(MinecraftReflection.java:1383)
        at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.createRegisterV1_20_5(PacketRegistry.java:344)
        at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:498)
        at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:538)
        at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterManager.<init>(PacketFilterManager.java:120)
        at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterBuilder.build(PacketFilterBuilder.java:121)
        at ProtocolLib.jar//com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:183)
        at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:59)
        at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:18)
        at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:39)
        at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:36)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:508)
        at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:287)
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1140)
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326)
        at java.base/java.lang.Thread.run(Thread.java:1570)
  Dump:
  Parameters:
    [NULL]
  Sender:
    com.comphenix.protocol.ProtocolLib@30a5f431[
      statistics=<null>
      packetTask=<null>
      tickCounter=0
      configExpectedMod=-1
      updater=com.comphenix.protocol.updater.SpigotUpdater@3f5a8f36
      redirectHandler=<null>
      scheduler=com.comphenix.protocol.scheduler.DefaultScheduler@2041e090
      commandProtocol=<null>
      commandPacket=<null>
      commandFilter=<null>
      packetLogging=<null>
      skipDisable=false
      isEnabled=false
      loader=io.papermc.paper.plugin.manager.DummyBukkitPluginLoader@7b671f2a
      server=CraftServer{serverName=Paper,serverVersion=git-Paper-27,minecraftVersion=1.20.6}
      file=plugins\.paper-remapped\ProtocolLib.jar
      description=org.bukkit.plugin.PluginDescriptionFile@50068406
      pluginMeta=org.bukkit.plugin.PluginDescriptionFile@50068406
      dataFolder=plugins\ProtocolLib
      classLoader=PluginClassLoader{plugin=ProtocolLib v5.2.1-SNAPSHOT, pluginEnabled=false, url=plugins\.paper-remapped\ProtocolLib.jar}
      naggable=true
      newConfig=YamlConfiguration[path='', root='YamlConfiguration']
      configFile=plugins\ProtocolLib\config.yml
      logger=com.destroystokyo.paper.utils.PaperPluginLogger@4b2aa77f
      lifecycleEventManager=io.papermc.paper.plugin.lifecycle.event.PaperLifecycleEventManager@17e8fba1
      allowsLifecycleRegistration=true
    ]
  Version:
    ProtocolLib v5.2.1-SNAPSHOT
  Java Version:
    22.0.1
  Server:
    git-Paper-27 (MC: 1.20.6)

its still not working (day 3)

Same error in Paper 1.20.6, @SonnenPingu maybe you could rename the ticket by 1.20.5/6?

I confirm that this still happens on git-Paper-32 (MC: 1.20.6).
More info #2904

Same error in Paper 1.20.6, @SonnenPingu maybe you could rename the ticket by 1.20.5/6?

Of course. I hope soon that it will be adjusted otherwise I have a bedrock player problem

commented

Paper is NOT obfuscated anymore...
ProtocolLib does not yet support UNobfuscated servers yet... :/
(same issue with a lot other plugins , too !!)

see here: https://forums.papermc.io/threads/important-dev-psa-future-removal-of-cb-package-relocation.1106/

I compiled Paper by the command ./gradlew createReobfBundlerJar and ProtocolLib was loaded and enabled successfully.
However, it seems that not all the features of ProtocolLib is available.
image

still not working (day 5)

commented

still not working (day 5)

1.20.5/6 is still really new and it changed a lot, give it some time lol

Same issue on my server, can reproduce.

The problem is that the remapped version is now using Mojang mappings, instead of the Spigot ones. ProtocolLib uses Spigot mappings for compiling, so that's the problem.

commented

The problem is that the remapped version is now using Mojang mappings, instead of the Spigot ones. ProtocolLib uses Spigot mappings for compiling, so that's the problem.

The problem is: it needs to use BOTH mappings, now...
Only Paper/Purpur changed the mappings, spigot did not.

Would be a good opportunity to let Paper team change their mind about this hard-fork decision which is causing only issues to all NMS developers.

Developers already remap their NMS plugins since Mojang released the deobfuscation maps, anyway it's a good idea to stop using Spigot mappings but I would have waited Spigot itself to change before doing so, since Paper is a fork of Spigot but seems it's slowly detaching from the original project.

Another solution is to let people download a Paper-mojang-mapped jar and decide to use it instead of applying that to the whole set of future builds.

I think Paper team should just give developers more time to think about this “breaking change”, like applying this after 1.21 instead of now.

我通过命令编译了 Paper,并成功加载并启用了 ProtocolLib。但是,似乎并非 ProtocolLib 的所有功能都可用。./gradlew createReobfBundlerJar 图像

可以提供一份命令编译的Paper核心吗?我似乎无法在我的电脑上编译它。

我通过命令编译了 Paper,并成功加载并启用了 ProtocolLib。但是,似乎并非 ProtocolLib 的所有功能都可用。./gradlew createReobfBundlerJar 图像

可以提供一份命令编译的Paper核心吗?我似乎无法在我的电脑上编译它。

How can I send it to u? By email?

我通过命令编译了 Paper,并成功加载并启用了 ProtocolLib。但是,似乎并非 ProtocolLib 的所有功能都可用。./gradlew createReobfBundlerJar 图像

可以提供一份命令编译的Paper核心吗?我似乎无法在我的电脑上编译它。

How can I send it to u? By email?

Yes! My email is: eacar30@163.com
Thanks!

我通过命令编译了 Paper,并成功加载并启用了 ProtocolLib。但是,似乎并非 ProtocolLib 的所有功能都可用。./gradlew createReobfBundlerJar 图像

可以提供一份命令编译的Paper核心吗?我似乎无法在我的电脑上编译它。

How can I send it to u? By email?

我似乎无法下载它,是否可以上传到OneDrive ?

commented

I think it's great from Paper. Let the developers get used to it.

Yes, it 'might' be some kind of an advantage in the future, as updates won't break NMS anymore (or less...).
But IF it breaks, I think it gets even more complicated...

I added the new mapping and the old to my plugin's NMS parts... we'll see how it will behave :)

I think it's great from Paper. Let the developers get used to it.

Yes, it 'might' be some kind of an advantage in the future, as updates won't break NMS anymore (or less...). But IF it breaks, I think it gets even more complicated...

I added the new mapping and the old to my plugin's NMS parts... we'll see how it will behave :)

I rewrite the NMS part of my plugins to make them compatible for 1.20.2-.4, I’m afraid that I need to change a lot again in the future. God, that will drive me crazy.

Then trick is to avoid using reflection.
Only rely on pure NMS and use modules to separate implementations and you're good to go.
The main issue with ProtocolLib is that is uses reflection.

commented

Seems to partially work now.
But there are still some issues with packets creation !! --> #2669 (#2669 (comment))

(and with wrong names in UNobfuscated Paper)

commented

See #2912

I don't have that issue here.. (Java 21, Paper from Paper side...)

I don't have that issue here.. (Java 21, Paper from Paper side...)

Oh, well, that's OK then. 😎