-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Minor
-
None
-
Affects Version/s: None
-
None
-
CraftBukkit version 4117-Spigot-b698b49-ebb50e1 (MC: 1.20.5)
-
Just my test plugin
-
Yes
When using `Player#transfer()` an error is throw about a missing method:
[21:59:43] [Server thread/ERROR]: null org.bukkit.command.CommandException: Unhandled exception executing command 'test' in plugin TestPlugin v${project.version} at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-api-1.20.5-R0.1-SNAPSHOT.jar:?] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-api-1.20.5-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_20_R4.CraftServer.dispatchCommand(CraftServer.java:887) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at org.bukkit.craftbukkit.v1_20_R4.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:50) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at com.mojang.brigadier.context.ContextChain.runExecutable(ContextChain.java:73) ~[brigadier-1.2.9.jar:?] at net.minecraft.commands.execution.tasks.ExecuteCommand.a(SourceFile:29) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.execution.tasks.ExecuteCommand.execute(SourceFile:13) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.execution.UnboundEntryAction.a(SourceFile:8) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.execution.CommandQueueEntry.a(SourceFile:8) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.execution.ExecutionContext.a(SourceFile:107) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.CommandDispatcher.a(CommandDispatcher.java:416) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.CommandDispatcher.performCommand(CommandDispatcher.java:338) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.commands.CommandDispatcher.a(CommandDispatcher.java:325) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.network.PlayerConnection.b(PlayerConnection.java:1830) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.network.PlayerConnection.lambda$handleChatCommand$7(PlayerConnection.java:1806) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.util.thread.IAsyncTaskHandler.d(SourceFile:162) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(SourceFile:23) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1242) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.util.thread.IAsyncTaskHandler.A(SourceFile:136) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.bu(MinecraftServer.java:1221) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.A(MinecraftServer.java:1214) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.util.thread.IAsyncTaskHandler.bA(SourceFile:121) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.v_(MinecraftServer.java:1185) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1071) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:311) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at java.base/java.lang.Thread.run(Thread.java:1583) [?:?] Caused by: java.lang.AbstractMethodError: Receiver class net.minecraft.server.network.PlayerConnection does not define or inherit an implementation of the resolved method 'abstract net.minecraft.network.EnumProtocol protocol()' of interface org.bukkit.craftbukkit.v1_20_R4.entity.CraftPlayer$TransferCookieConnection. at org.bukkit.craftbukkit.v1_20_R4.entity.CraftPlayer.transfer(CraftPlayer.java:334) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1] at a.b.c.command.TestCommand.onCommand(TestCommand.java:20) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.20.5-R0.1-SNAPSHOT.jar:?] ... 27 more
notable part:
Caused by: java.lang.AbstractMethodError: Receiver class net.minecraft.server.network.PlayerConnection does not define or inherit an implementation of the resolved method 'abstract net.minecraft.network.EnumProtocol protocol()' of interface org.bukkit.craftbukkit.v1_20_R4.entity.CraftPlayer$TransferCookieConnection. at org.bukkit.craftbukkit.v1_20_R4.entity.CraftPlayer.transfer(CraftPlayer.java:334) ~[spigot-1.20.5-R0.1-SNAPSHOT.jar:4117-Spigot-b698b49-ebb50e1]
code to test:
player.transfer("localhost", 25565);
yes, I have tested with 2 different servers, and different ports, etc etc.
The error happens no matter what.
I will include a test plugin if you want.
A second server is not required for this test as the error occurs before even attempting to transfer the player.