The Bug
Boats are not destroyed when falling from high distances.
Steps to Reproduce
Summon a boat high above yourself.
/summon minecraft:boat ~ ~30 ~3
Wait for it to reach the ground.
→ ❌ Notice how boats are not destroyed when falling from high distances.
Expected Behavior
The expected behavior would be that boats are destroyed when falling from high distances.
Code analysis by @unknown can be found in this comment.
Attachments
Comments 29
Please link to this comment in the description
The following is based on a decompiled version of Minecraft 1.10 using MCP 9.30.
It looks like the reason for this is that the method net.minecraft.entity.item.EntityBoat.getBoatGlide()
and probably all the other methods working the same are not detecting the ground below the boat in the tick its OnGround
field is set to true. Besides that the method net.minecraft.entity.item.EntityBoat.updateFallState(double, boolean, IBlockState, BlockPos)
tests in theory the same condition twice. What it does is that if the boat is on ground, but its status is not ON_LAND
it cancels all fall damage. If the getBoatGlide()
method worked correctly this should probably never happen, or at least I can't think of any situation right now where this could happen.
If this bug is fixed, MC-105103 will probably work correctly as well.
The boat does get destroyed from fall damage if you /entitydata the motion upwards and then when It hits the ground, it breaks and also makes the rider take fall damage.
This is in direct contradiction with MC-119369, yet both are confirmed for the same versions... which report is lying about the breakability?
EDIT: Ah, wait, I see now after reading comments on that. In that case, this report should clarify it is on mosy y coordinates, but not all.
I am able to confirm this behavior in 21w38a. Here are some extra details regarding this problem.
The Bug:
Boats are not destroyed when falling from high distances.
Steps to Reproduce:
Summon a boat high above yourself.
/summon minecraft:boat ~ ~30 ~3
Wait for it to reach the ground.
→ ❌ Notice how boats are not destroyed when falling from high distances.
Expected Behavior:
The expected behavior would be that boats are destroyed when falling from high distances.
Please change the summary to something like "Boat not being destroyed from fall damage" or something similar to make it clear that it is about the boat