tanyaofei / minecraft-fakeplayer

A plugin for minecraft server to spawn fake players, inspired by Carpet Mod
Apache License 2.0
89 stars 12 forks source link

在LeaveMC服务端核心1.21运行此插件无法正常处理假人 #44

Closed theLIKImk closed 1 month ago

theLIKImk commented 1 month ago
[08:26:48 INFO]: 召唤假人时发生异常
[08:26:48 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:387)
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)
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:1583)

执行/fp spawn xxx之后会显示如上输出,但是能在游戏列表看到假人的影子,但是却无法移除它,就像这样:

> list
[08:32:01 INFO]: There are 6 of a max of 2333 players online: YDCU_1, YDCU_2, YDCU_3, tang_dou, 55555, SZSD666
[08:32:08 INFO]: TabCompleteEvent was triggered.
> fp kill 55555
[08:32:13 INFO]: 你还没召唤假人呢
theLIKImk commented 1 month ago

(我知道leaveMC自带假人,但是权限和自定义不好,所以就使用这个插件了)

JongJohnky commented 1 month ago

同问

tanyaofei commented 1 month ago

试试这个测试版本,如果没有问题我就加到正式版本中

fakeplayer-0.3.6-rc.3.jar.zip

JongJohnky commented 1 month ago

假人加入游戏正常