GlowstoneMC / Glowstone-Legacy

An open-source server for the Bukkit Minecraft modding interface
Other
363 stars 122 forks source link

Land-shark bug #485

Open gdude2002 opened 9 years ago

gdude2002 commented 9 years ago

While testing on @turt2live's server, I was running around holding down CTRL (sprint) and jumping, and, well.. I ended up falling into the block I landed on.

It turns out, if I approach a tree with leaves that are two blocks above the ground, and time my jump correctly and at the correct angle, I'll be pushed into the ground.

Weird. No idea what causes it.

EDIT: If the ground is one block thick, I fall through.

SpaceManiac commented 9 years ago

I've experienced falling through the floor a couple times myself in what seemed like arbitrary situations. While I can't imagine this possibly being anything other than client instability, since the client processes its own movement, it's certainly very odd, and perhaps worth investigating if Glowstone is somehow incorrectly communicating block data.

turt2live commented 9 years ago

Tested with just leaves (no tree) and replicated. Unsure if other blocks are affected.

SpaceManiac commented 9 years ago

I was able to reproduce this on Glowstone but not reliably. I was not able to reproduce it in Vanilla single player. If you have a reliable technique to reproduce this, could you try and see if it happens in Vanilla single player or on the Vanilla server at all?

If you're not able to reproduce it in Vanilla it's possible the server (integrated or remote) is simply preventing the client's buggy movement through its normal collision detection. It's annoying that the client is wrong in this case but this is fixable Glowstone-side.

EDIT: I was able to reproduce this above in Vanilla single player, confirming that the integrated server just denies the client's invalid movement.

gdude2002 commented 9 years ago

Really neat bug.

So, do we have a fix for this? I assume this would need to be some kind of anticheat PR, though..

turt2live commented 9 years ago

I was able to reproduce this 100% of the time on Glowstone using the following setup and instructions:

image Leaf block is exactly 2 above the dirt

  1. Take a sprinting run towards the leaf block
  2. When you have just entered the column the leaf is in, jump
  3. If you timed your jump correctly, you will fall 1 block down (or into a gap if there is one)

This cannot be reproduced with more than one leaf block. Therefore corners of trees are the only naturally-occurring structures that can cause this.

Vanilla behaviour

In vanilla, you will be "teleported" back to a valid position, almost as if you were about to fall into the block. Does not work in all directions, unlike Glowstone.


Edit: Commented because I didn't see that @SpaceManiac requested more information

turt2live commented 9 years ago

Also reproduced with cactus.

May be a non-issue considering cacti cannot spawn like this at all:

cati Sprint towards dead center of cactus.

gdude2002 commented 9 years ago

I did end up doing some testing on Spigot/Bukkit servers, and this can happen on vanilla servers without any blocks - it just appears that the Jeb/Notch anticheat puts you back onto the block. Anyone around you will thus not see anything weird at all.

Necroing this because the Dragonet team seem to think this bug is relevant to people walking around.

mastercoms commented 8 years ago

Landsharking has been fixed in Glowstone++, but the prevention needs to be finer to allow for intended landsharking, for suffocation.