Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-177442

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

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Resolution: Unresolved
    • Affects Version/s: 1.15.2
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      1.15.2, Java 1.8.0_51 64bit, Windows 10
    • Confirmation Status:
      Unconfirmed
    • Category:
      (Unassigned)

      Description

      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:

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

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

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

      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.

        Attachments

        1. 2020-04-04_17.17.40.png
          2020-04-04_17.17.40.png
          381 kB
        2. 2020-04-04_17.18.25.png
          2020-04-04_17.18.25.png
          403 kB
        3. 2020-04-04_17.18.31.png
          2020-04-04_17.18.31.png
          342 kB
        4. image-2020-04-04-17-22-02-372.png
          image-2020-04-04-17-22-02-372.png
          325 kB

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            SploxFox SploxFox
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated: