The bug!
Dolphins cannot jump out naturally if they in a deeper than one water sourceblock.
Sometimes they try to jump but they usually fail. In 1.4.0 when they added to the game the dolphins jumped out. In the latest version/beta they only jump out when they follow the players boat or the player is swimming on the surface of water.
Linked issues
is caused by 1
is duplicated by 18
relates to 2
Attachments
Comments 25
my dolphins are still dying in fact, sometimes they cannot crawl and get into the water and they die this error had i been reported long before this user and had generated another report because they required it but they marked it as duplicate
[media]Related issues: MCPE-32630, MCPE-33707, MCPE-44918, MCPE-59701
I believe some dolphins are able to jump out of water, and some just aren't able to, despite having access to air.
Testing in 1.20.12 Hotfix, dolphins do jump out of water to breath every 4 minutes most of the time. It does not matter if I spawn them on land or in water, or pull them out of the water for a little while after spawning them in water. I recorded one coming up to breath every 4 minutes 3 times in a row, even. However, when I afk at a dolphin pool for longer periods of time and come back, they are always gone.
New duplicate report MCPE-180897 includes a video clip of a dolphin dying because it does not reach the surface to breath: https://bugs.mojang.com/secure/attachment/569423/video_20240424_190709.mp4
In this video the dolphin tries to breach the surface but stops a block or two below where it should and swims in circles, as if it cannot find the surface. This seems to match the behavior partially captured in the video attached to this ticket.
Update 3/6/25: the real cause of this issue is MCPE-190996, contrary to my earlier analysis below, which I have crossed out.
Update: after extensive testing based on the above lead, I can confirm that this bug has the same cause as MCPE-45645, MCPE-131091, and MCPE-162241: when mobs swim, the position that they target for movement is offset in the -Y direction from the path that they have pre-generated. In other words, after they find a path through water they try to move a block below that path. The exact offset is difficulty to determine; I think it is between 0.25 and 1.25 blocks.
This offset causes dolphins to stop below the surface of the water when they come up to breath (using behavior.random_breach). I believe they only successfully breach the water surface if they happen to run the behavior when they are already very close to the surface (within about 2 blocks).
shows dolphins repeatedly swimming up toward the surface and stopping.
[media]contains the dolphin test chamber and several others that can be used to investigate this bug.
Please do not mark unreleased versions as affected.
You don't have access to them yet.