mojira.dev
MC-259195

Using /ride on an entity in another dimension causes client/server desync

Riding an entity through another dimension causes server/client desync.

  • As a player rider, relogging will move the ridden entity into the player's dimension but retain the ridden entity's position.

  • As a non-player entity, relogging will update correctly and move the passenger entity onto the ridden entity in the correct position and dimension.

See the attached video

[media]

for a demonstration.

How to reproduce

  1. Run the following commands in order

    /summon armor_stand ~ ~ ~ {Tags:[passenger]}
    /execute in minecraft:the_nether run tp @s ~ 128 ~
    /summon armor_stand ~ ~ ~ {Tags:[vehicle]}
    /ride @e[tag=passenger,limit=1] mount @e[tag=vehicle,limit=1]
  2. You will see the message that the armor stand started riding but nothing will happen visually

  3. Exit and re-enter the world

  4. The passenger armor stand will now be riding the vehicle in the nether

Test with player riding armor stand

  1. Run the following commands in order

    /execute in minecraft:the_nether run tp @s 0 128 0
    /summon armor_stand ~ ~ ~ {Tags:[test]}
    /forceload add ~-100 ~-100 ~100 ~100
    /execute in minecraft:overworld run tp @s 0 -60 0
    /ride @s mount @e[tag=test,limit=1]
  2. You will see the message that you started riding the armor stand but nothing will happen visually

  3. Exit and re-enter the world

  4. You will now be falling from position 0 128 0 in the overworld, riding the armor stand. You neither spawn at your original location at 0 -60 0 in the overworld riding the armor stand, nor do you spawn at 0 128 0 in the nether riding the armor stand. The position of the armor stand is kept and the player's dimension is kept.

Attachments

Comments 0

No comments.

onnowhere

slicedlime

Confirmed

Platform

Normal

Commands

23w03a

23w06a

Retrieved