Affects Version/s: 1.14.4, 19w34a, 19w35a, 19w36a, 19w37a, 19w38b, 19w40a, 19w41a, 19w42a, 19w44a, 19w45a, 19w45b, 19w46a, 19w46b, 1.15 Pre-release 1, 1.15 Pre-release 5, 1.15 Pre-release 6, 1.15, 1.15.1, 1.15.1 Pre-release 1, 1.15.2 Pre-Release 1, 1.15.2 Pre-release 2, 1.15.2, 20w06a, 20w07a, 20w08a
Fix Version/s: None
When spam-clicking with the sword on the ground and run at the same time the character gets stuck.
- Be in gamemode creative
- Get a sword or a trident
- Look at the ground and spamclick on the left mouse button
- Try to run while you still spamclick with your sword/trident
Further notes by VeilStar
This issue affects more than what is currently mentioned in here.
Any time the player (attemps to) break a block, but the block isn't broken server-side, the player gets teleported back to where they were when they broke that block.
This issue appears when running around while clicking the ground with a sword in creative mode I assume because the client is actually still sending 'block interaction packets' as they are technically still 'mining' the block. However, neither the client nor server break the block because the player is holding a sword.
This same issue can also be observed in survival mode when the server is lagging as the lag introduces 'block lag'. Block lag is when the player mines a block but the block re-appears due to not (yet) being broken server-side because of the lag. Before this issue was introduced the block re-appeared and that was that. Since this issue was introduced the player also gets teleported back as soon as the block re-appears. (Here's a video showing this on a vanilla singleplayer world where I caused excessive server lag for the purpose of demonstration.)
Also, while I know this isn't relevant for you guys, this issue also affects modded servers where the player isn't allowed to break certain blocks or blocks in certain areas. The block gets broken client-side, but then re-appears for the client in the next (server) tick, and since 1.14.4 (Pre-Release 4?) the player gets teleported back to the location they were at when they broke the block client-side. (Here's a video of that on a spigot 1.14.4 server with a plugin that offers such functionality.)
This is almost certainly caused by the fix for
MC-156013, and MC-156852might be in the same boat. What is the point of pre-releases anymore if changes introduced in them cause more issues than they solve and make it into the final releases for a version? Anyhow, my point is that fix implemented for MC-156013is plain bad and I can't trust you guys to not fix this issue by doing something equally bad, like adding a check that doesn't teleport the player back if they're holding a sword.
With that said, a better fix for
MC-156013using the current method is probably to teleport the player back only if the player's hitbox intersects the re-appearing block. This would get rid of this issue as well.