Closed Chaostarts closed 2 months ago
在Leaves1.20.1纯净端测试的日志 [15:12:17 INFO]: Server Plugins (8): [15:12:17 INFO]: Bukkit Plugins: [15:12:17 INFO]: - CommandAPI, fakeplayer, Matrix, PlaceholderAPI, ProtocolLib, ViaBackwards, ViaRewind, ViaVersion
[15:10:09 INFO]: NotKiller_1 left the game [15:10:09 INFO]: NotKiller issued server command: /fp spawn [15:10:09 ERROR]: Could not pass event PlayerLoginEvent to ProtocolLib v5.2.0-SNAPSHOT-679 java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:934) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:351) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:344) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:836) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:827) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:817) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.ensureInEventLoop(NettyChannelInjector.java:475) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.ensureInEventLoop(NettyChannelInjector.java:468) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.inject(NettyChannelInjector.java:216) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.manager.NetworkManagerPlayerInjector.updatePlayer(NetworkManagerPlayerInjector.java:69) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.PacketFilterManager$1.handleLogin(PacketFilterManager.java:463) ~[ProtocolLib (3).jar:?] at com.destroystokyo.paper.event.executor.MethodHandleEventExecutor.execute(MethodHandleEventExecutor.java:40) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:53) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.github.hello09x.fakeplayer.core.entity.FakePlayer.callLoginEvent(FakePlayer.java:235) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.fakeplayer.core.entity.FakePlayer.lambda$spawnAsync$1(FakePlayer.java:129) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.bedrock.task.CompletableTask.lambda$join$0(CompletableTask.java:19) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.bedrock.task.CompletableTask.lambda$join$4(CompletableTask.java:61) ~[fakeplayer-0.2.10 (1).jar:?] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftTask.run(CraftTask.java:93) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:479) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1497) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:456) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1415) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1173) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:309) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at java.lang.Thread.run(Thread.java:1570) ~[?:?] [15:10:09 ERROR]: Could not pass event PlayerJoinEvent to ProtocolLib v5.2.0-SNAPSHOT-679 java.util.concurrent.RejectedExecutionException: event executor terminated at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:934) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:351) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:344) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:836) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute0(SingleThreadEventExecutor.java:827) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:817) ~[netty-common-4.1.87.Final.jar:4.1.87.Final] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.ensureInEventLoop(NettyChannelInjector.java:475) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.ensureInEventLoop(NettyChannelInjector.java:468) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.channel.NettyChannelInjector.inject(NettyChannelInjector.java:216) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.netty.manager.NetworkManagerPlayerInjector.updatePlayer(NetworkManagerPlayerInjector.java:69) ~[ProtocolLib (3).jar:?] at com.comphenix.protocol.injector.PacketFilterManager$1.handleJoin(PacketFilterManager.java:468) ~[ProtocolLib (3).jar:?] at com.destroystokyo.paper.event.executor.MethodHandleEventExecutor.execute(MethodHandleEventExecutor.java:40) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:53) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[leaves-api-1.20.1-R0.1-SNAPSHOT.jar:?] at net.minecraft.server.players.PlayerList.placeNewPlayer(PlayerList.java:449) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at io.github.hello09x.fakeplayer.v1_20_R1.spi.NMSNetworkImpl.placeNewPlayer(NMSNetworkImpl.java:36) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.fakeplayer.core.entity.FakePlayer.lambda$spawnAsync$1(FakePlayer.java:171) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.bedrock.task.CompletableTask.lambda$join$0(CompletableTask.java:19) ~[fakeplayer-0.2.10 (1).jar:?] at io.github.hello09x.bedrock.task.CompletableTask.lambda$join$4(CompletableTask.java:61) ~[fakeplayer-0.2.10 (1).jar:?] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftTask.run(CraftTask.java:93) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:479) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1497) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:456) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1415) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1173) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:309) ~[leaves-1.20.1.jar:git-Leaves-"847357b"] at java.lang.Thread.run(Thread.java:1570) ~[?:?] [15:10:09 WARN]: [ViaVersion] Could not find UserConnection for logging-in player a40cdf6b-202d-3786-9da9-8dd87fc01be6 [15:10:09 INFO]: NotKiller_1 joined the game [15:10:09 INFO]: NotKiller_1[/127.0.0.3:25565] logged in with entity id 350 at ([world]-17.912176467658767, 81.0, 47.8105725002138) [15:10:09 INFO]: NotKiller_1 lost connection: PacketEvents 2.0 failed to inject [15:10:09 INFO]: NotKiller_1 left the game
这应该不是 PacketEvent 的问题,应该是和 TrChat 不兼容导致的
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我在后面没有装trchat,使用matrix的时候假人也无法进入。我使用的是1.20.1 如果作者需要的话我可以提供插件给您测试
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的 这是使用0.3.3和1.21的日志
[22:52:42 INFO]: Bukkit Plugins: [22:52:42 INFO]: - CommandAPI, fakeplayer, Matrix, PlaceholderAPI, ProtocolLib, ViaBackwards, ViaRewind, ViaVersion
[22:50:44 INFO]: NotKiller issued server command: /fp spawn
[22:50:44 WARN]: [ViaVersion] Could not find UserConnection for logging-in player 6726eb2f-0625-3aed-9e3f-fbba1a75ff84
[22:50:44 ERROR]: [fakeplayer] java.util.concurrent.CompletionException: java.util.NoSuchElementException: packet_handler
at fakeplayer-0.3.3.jar//io.github.hello09x.bedrock.task.CompletableTask.encodeException(CompletableTask.java:81)
at fakeplayer-0.3.3.jar//io.github.hello09x.bedrock.task.CompletableTask.lambda$join$5(CompletableTask.java:71)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1760)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1491)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:2073)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2035)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)
Caused by: java.util.NoSuchElementException: packet_handler
at io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1073)
at io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:248)
at io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:237)
at org.leavesmc.leaves.bytebuf.internal.InternalBytebufHandler.injectPlayer(InternalBytebufHandler.java:139)
at net.minecraft.server.players.PlayerList.placeNewPlayer(PlayerList.java:473)
at fakeplayer-0.3.3.jar//io.github.hello09x.fakeplayer.v1_21_R1.spi.NMSNetworkImpl.placeNewPlayer(NMSNetworkImpl.java:48)
at fakeplayer-0.3.3.jar//io.github.hello09x.fakeplayer.core.entity.FakePlayer.lambda$spawnAsync$1(FakePlayer.java:171)
at fakeplayer-0.3.3.jar//io.github.hello09x.bedrock.task.CompletableTask.lambda$join$0(CompletableTask.java:19)
at fakeplayer-0.3.3.jar//io.github.hello09x.bedrock.task.CompletableTask.lambda$join$4(CompletableTask.java:61)
at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:93)
at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:481)
at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1711)
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:475)
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1599)
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1307)
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:324)
at java.base/java.lang.Thread.run(Thread.java:1570)
[22:50:44 INFO]: NotKiller_2 lost connection: PacketEvents 2.0 failed to inject
[22:50:44 INFO]: NotKiller_2 left the game
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我认为可以调用packeteventsapi 在假人编译时跳过packetevents事件
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我认为可以调用packeteventsapi 在假人编译时跳过packetevents事件
现在问题不在于packetevet,是喝TrChat的兼容问题
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我认为可以调用packeteventsapi 在假人编译时跳过packetevents事件
现在问题不在于packetevet,是喝TrChat的兼容问题
我这边服务端测试fakeplayer跟trchat没问题 反而跟封装了PacketEvents的插件有问题(
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我认为可以调用packeteventsapi 在假人编译时跳过packetevents事件
现在问题不在于packetevet,是喝TrChat的兼容问题
packetevents支持假人绕过注入 https://github.com/retrooper/packetevents/blob/4524b4289cc1912363faf873ee81034105924f1e/api/src/main/java/com/github/retrooper/packetevents/util/FakeChannelUtil.java#L21
另外就是,placeholderapi 已经更新支持 1.21 了吗,trchat 应该是需要这个插件的
我认为可以调用packeteventsapi 在假人编译时跳过packetevents事件
现在问题不在于packetevet,是喝TrChat的兼容问题
packetevents支持假人绕过注入 https://github.com/retrooper/packetevents/blob/4524b4289cc1912363faf873ee81034105924f1e/api/src/main/java/com/github/retrooper/packetevents/util/FakeChannelUtil.java#L21
你发的这个我知道的,兼容2.0也是这个方案,现在你这边报错不是因为packetevent导致的
这个最主要的问题在于这行 org.leavesmc.leaves.bytebuf.internal.InternalBytebufHandler.injectPlayer(InternalBytebufHandler.java:139)
leaves 在玩家
的网络连接上加入了一些定制的内容,这个是在官方核心是没有的,因此假人这边也是没有的。估计这个问题不会被修复
使用版本0.2.10 Leaves1.20.1