-
Bug
-
Resolution: Fixed
-
20w51a, 21w03a, 1.16.5, 21w05b, 21w06a, 21w08b
-
None
-
Community Consensus
-
Player, Projectiles
-
Very Important
The Bug:
When a trident is returning to its owner with loyalty and the owner goes into another world before it can reach them, the trident can no longer find the owner. This can cause a non-owner player, who is in survival and picks up the trident in this state, to be kicked from the server and stay kicked as they log in on top of the trident. Also these steps can be used to create floating tridents.
How to Reproduce:
Watch this video as it is a little hard to explain without a video:
The Cause:
The owner is null and there is no catch for this null. when the non-owner goes to pick it up, it checks to see if this player's uuid matches the other player's uuid. As the other player's uuid is null, as they are not in the same world, it causes a null point exception. Basically getOwner() returns null
The Reports
Server side report
[Server thread/WARN]: Failed to handle packet for ... u: Ticking player at aah.v_(SourceFile:492) ~[server.jar:?] at aay.b(SourceFile:207) ~[server.jar:?] at nd.a(SourceFile:234) ~[server.jar:?] at aax.c(SourceFile:173) ~[server.jar:?] at net.minecraft.server.MinecraftServer.b(SourceFile:879) ~[server.jar:?] at zg.b(SourceFile:303) ~[server.jar:?] at net.minecraft.server.MinecraftServer.a(SourceFile:808) ~[server.jar:?] at net.minecraft.server.MinecraftServer.w(SourceFile:667) ~[server.jar:?] at net.minecraft.server.MinecraftServer.a(SourceFile:254) ~[server.jar:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_144] Caused by: java.lang.NullPointerException at bfx.a_(SourceFile:546) ~[server.jar:?] at bgv.a_(SourceFile:184) ~[server.jar:?] at bft.c(SourceFile:621) ~[server.jar:?] at bft.k(SourceFile:597) ~[server.jar:?] at aqj.j(SourceFile:2254) ~[server.jar:?] at bft.j(SourceFile:274) ~[server.jar:?] at aah.v_(SourceFile:428) ~[server.jar:?] ... 9 more
Client side report
unexpectedly disconnected from server! java.io.IOException: An existing connection was forcibly closed by the remote host at sun.nio.ch.SocketDispatcher.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:192) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) at io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:288) at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1108) at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:345) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:148) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:745)
Fabric report for those who want to see better:
Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: net.minecraft.class_148: Ticking player Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at Not Enough Crashes deobfuscated stack trace.(1.16.2+build.47) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.network.ServerPlayerEntity.playerTick(ServerPlayerEntity:492) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.network.ServerPlayNetworkHandler.tick(ServerPlayNetworkHandler:207) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.network.ClientConnection.tick(ClientConnection:234) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.ServerNetworkIo.tick(ServerNetworkIo:173) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.MinecraftServer.tickWorlds(MinecraftServer:879) ~[intermediary-minecraft_server_1.16.2.jar:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.dedicated.MinecraftDedicatedServer.tickWorlds(MinecraftDedicatedServer:303) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.MinecraftServer.tick(MinecraftServer:808) ~[intermediary-minecraft_server_1.16.2.jar:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.MinecraftServer.handler$zip000$modifiedRunLoop(MinecraftServer:4761) ~[intermediary-minecraft_server_1.16.2.jar:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.MinecraftServer.runServer(MinecraftServer:648) ~[intermediary-minecraft_server_1.16.2.jar:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer:254) ~[intermediary-minecraft_server_1.16.2.jar:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at java.lang.Thread.run(Thread.java:834) [?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: Caused by: java.lang.NullPointerException Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at Not Enough Crashes deobfuscated stack trace.(1.16.2+build.47) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.projectile.PersistentProjectileEntity.onPlayerCollision(PersistentProjectileEntity:546) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.projectile.TridentEntity.onPlayerCollision(TridentEntity:184) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.player.PlayerEntity.collideWithEntity(PlayerEntity:621) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.player.PlayerEntity.tickMovement(PlayerEntity:597) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.LivingEntity.tick(LivingEntity:2254) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.entity.player.PlayerEntity.tick(PlayerEntity:274) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: at net.minecraft.server.network.ServerPlayerEntity.playerTick(ServerPlayerEntity:428) ~[?:?] Jan 15 02:15:20 Ubuntu-1804-bionic-64-minimal run.sh[30730]: ... 10 more
- relates to
-
MC-274007 Loyalty returns to player's position regardless of dimension
- Open