-
Bug
-
Resolution: Unresolved
-
None
-
Minecraft 1.11.2, Minecraft 17w06a, Minecraft 1.12.2, Minecraft 18w05a, Minecraft 1.13.1, 1.15.2, 1.16.2 Pre-release 1, 1.16.4, 20w46a, 20w51a, 21w06a
-
Confirmed
-
(Unassigned)
The bug
If a boat is riding an entity the boat will no longer have an orientation to testfor.
For example If I turn the boat to face (-30.0 / ~ ) and testfor it with this command /testfor @e[tag=Boat,rym=-30,ry=-30] the results will be no entity found. Also another way to prove this I teleport my self to the boat facing (-30.0 / ~ ) and instead I face (0.0 / 0.0) normally I would face the same direction as the boat. I tested this with a boat not riding an entity and i faced the same way the boat faced. And the testfor command worked when it wasn't riding an entity.
Steps to reproduce
- Summon a boat riding an entity
/summon armor_stand ~ ~ ~ {Passengers:[{id:"boat"}]}
- Get in the boat and turn it to a position
- Dismount the boat
- Teleport yourself to the boat
/teleport @s @e[type=boat,limit=1]
You will notice that you are not facing the direction you were facing while riding the boat
Note: If the boat was not riding an entity you would be facing the correct direction after teleporting
Image proof
The first image is me facing the same direction as the boat, the second is me teleporting to the boat and instead of facing the same way as the boat I face (0.0 / 0.0).
Code analysis
Based on 1.11.2 decompiled using MCP 9.35 rc1
The problem is that the packet CPacketVehicleMove is only sent and accepted if the lowest ridden entity can be steered. Since in this case an armor stand cannot be steered no packet will be sent and the rotation is only updated client-side. If this is the intended behavior the respective steering methods should only allow steering and rotating an entity if it is not riding another entity.
- is duplicated by
-
MC-177442 Boats that are riding an entity do not update their rotation or position of passengers correctly
- Resolved