mojira.dev
MC-177442

Boats that are riding an entity do not update their rotation or position of passengers correctly

When a boat is riding another entity, the player can get in the boat and rotate the boat like other rideable entities that are riding another entity, and the boat's blue F3 + B rotation line appears to update with the boat's new rotation. However, the NBT Rotation tag doesn't update, instead only showing [0.0,0.0] (south) for rotation always, and other commands also treat boats as if they were facing south. I expected commands and NBT to show the correct rotation of the boat and the correct position/rotation of the entity riding it.

 

How to Reproduce - NBT

Summon a regular boat:

/summon minecraft:boat ~ ~ ~

Jump in and spin around a bit. Observe that the Rotation NBT tag changes accordingly;

/data get entity @e[type=boat,limit=1,sort=nearest] Rotation

Summon a boat riding another entity:

/summon minecraft:armor_stand ~ ~ ~ {Passengers:[{id:"boat"}]}

Jump in the boat and spin around. Observe that the NBT tag for Rotation always shows [0.0f,0.0f], regardless of the actual rotation of the boat:

/data get entity @e[type=boat,limit=1,sort=nearest] Rotation

Using F3 + B, you can also see that the blue line, which represents the boat's rotation, updates accordingly while the NBT tag does not.

 

How to Reproduce - Passenger Position

To demonstrate that this isn't just an NBT issue, we will summon an armor stand with a boat riding it with another armor stand in that boat.

/summon minecraft:armor_stand ~ ~ ~ {Passengers:[{id:"boat",Passengers:[{id:"armor_stand",Tags:["particle"]}]}]}

Note that the armor stand riding the boat has the tag "particle". Putting this in a repeating command block that is always active will show where commands think the armor stand is through a cloud particle:

execute at @e[tag=particle] run particle minecraft:cloud ~ ~3 ~ 0 0 0 0 1 force

See the cloud particle above the upper armor stand:

[media]

Jump in the boat. Notice that the particle's position changes accordingly when the armor stand is pushed back:

[media]

Now rotate the boat. Notice that the particle's position now fails to update according to the boat's rotation:

[media]

Break the boat's bottom armor stand. Now spin around and notice that the cloud particle's position now updates correctly:

[media]

How to Reproduce - Rotation Carets

This will put a cloud particle in the direction that every boat is looking:

execute at @e[type=boat] run particle minecraft:cloud ^ ^ ^3 0 0 0 0 1 force

Notice that for boats that are riding other entities, this will always face south, even if the boat is facing another direction.

Linked issues

Attachments

Comments 1

Hey there!

This looks to be a duplicate of MC-114652.

SploxFox

(Unassigned)

Unconfirmed

(Unassigned)

1.15.2

Retrieved