PaperMC / Paper

The most widely used, high performance Minecraft server that aims to fix gameplay and mechanics inconsistencies
https://papermc.io/
Other
10.06k stars 2.34k forks source link

Camel Bug #11357

Closed Jakush closed 3 months ago

Jakush commented 3 months ago

Expected behavior

When player hides from the other and starts to ride camel (as rider) the other player which don't see the hidden one can enter the camel and become second passenger (even if he does not see the hidden player which started riding it first)

Observed/Actual behavior

Possibly making camel be on two different locations with the first one that started riding it actually moving with it.

Steps/models to reproduce

  1. Make a way to hide one of your accounts (you'll need two)
  2. Hide one account from the other
  3. Start riding the camel as the hidden account
  4. Step in with the second account Result: You both can ride camel but the hidden one actually moves it

Plugin and Datapack List

image Only mine which contains the command with hiding the other player.

Paper version

image Latest, cloned it today.

Other

This does not happen the other way around as the hidden player sees the first so the hidden player is put where he should be. The issue comes when it is the other way around when hidden player is the first to right click on the camel. I tested if this bug can be applied to different animals (as Horse) and this issue is only happening for Camel. From what I've tried to understand in the internals, I'm not really sure if the issue is on clientside or serverside.

Jakush commented 3 months ago

After more diving into this issue, it starts to look as clientside issue, after some debugging servers seems to knwo that there are two passengers and also knows their right order.

electronicboy commented 3 months ago

The server just sends a list of passengers to a client, I'd imagine that the client is sent a packet with the passengers but the fact that the client doesn't know about said passenger, it's probably just going to discard it. Best you can probably do is just not allow vanished players to ride entities

any other solution would likely involve some sort of trickery in order to get the client to see an entity, i.e. "oh, look, a zombie riding a horse!", but, that defeats a lot of the points here. This is likely just going to have to remain a caveat of how this thing works.

Jakush commented 3 months ago

Yeah, I tried reporting it to the mojang, so I can just hope they'll fix it. https://bugs.mojang.com/browse/MC-276288