mojira.dev
MCPE-47294

Unlogging on a glass block above a lava pool may result in logging back under bedrock

What I did :

  • create a 3x3 pool of lava above the ocean (ocean and lava part is important)

  • a few air blocks above this create a 3x3 glass or leaves platform

  • logout on the glass/leaves platform

  • log back in under bedrock (you get "fall out of the world" death) or sometimes in the ocean.

 This is 100% reproducible on realms.

 

Lava is the important part, I tried to put water instead of glass blocks and I would log back on the same block I logged out.

 

I already talked about this bug in MCPE-38374 but you asked for a new bug entry.

 

Since it might be relevant, I only tested this with a phone over cellular data.

 

More information :

https://bugs.mojang.com/browse/MCPE-47294?focusedCommentId=556137&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-556137

Linked issues

Attachments

Comments

Auldrick

Attached a demo world. It has two glass platforms above lava basins, one on land and one above an ocean. Either can be used to reproduce the bug, but the one above water also demonstrates how the bug can cause a player to be placed in a perilous situation or even dead by the time the world opens.

Steps to reproduce:

  1. Open the attached world (MCPE-47296 demo.mcworld).

  2. Fly to either of the glass platforms over lava and stand in the center (on the brown stained glass).

  3. Switch to Survival mode.

  4. Save and exit.

  5. Reload the world.

Expected results:
You log back in standing on the glass, at the same place you were when you logged out.

Actual results:
If over land, you log back in beside the lava basin. If over the ocean, you log back in in the water; depending on how long it takes the world to load, you may have sunk into the water and be drowning, may already have drowned, may have fallen into the ocean floor and be embedded in solid blocks where you're suffocating, or may have fallen through the floor into the void. In the last 3 cases your world opens with the death message UI already shown.

Additional information:

I discovered some interesting things by joining as a second player on another device and watching from my first device as it spawned, and I think it explains how this bug can kill a player. The following is a sequence of events as I observed them on both screens.

Time order

First device

Second device

1

(idle)

Joins the world

2

Player 2 appears at saved position

"Locating server" displayed

3

Player 2 teleports to east side of basin, just above water

"Loading resources" displayed

4

Player 2 moves downward through the ocean in a series of jumps spaced out over time

(no change)

5

Player 2 may descend into ocean bottom, or may not

(no change)

6

(no change)

World opens with player either in the water or in a featureless void with "You died!" displayed.

I think what's happening is that the client initially places the player at the saved coordinates, but then checks whether they're being spawned above lava. Incorrectly (because of the glass floor) concluding that they're about to fall into lava, it repositions the player on the surface next to the lava, which in this case is on the ocean surface. As more chunk data is received, the client starts applying rules of gravity and the player falls into the water and sinks. The client reports these player movements to the server and expects player position packets in response.

As this is happening, the server is sending chunk data and perhaps texture data to the client. The mass of data causes player positioning packets to be sent to the client only sporadically, causing the player entity to move downward in jerks. (I see some evidence that changes were made in 1.10 and 1.11 to prioritize sending chunks over some other packets, as a way of mitigating problems with chunk loading when moving rapidly through the world, and that may be exacerbating this problem.) The client has insufficient information to know where the ocean bottom is and keeps reporting the player falling. If the initial chunk data takes long enough and not enough player position packets get through, at some point the player enters the solid blocks at the bottom of the ocean and may continue falling, even out of the world. When the data finishes downloading, the player may already have reached the void or may be suffocating in sea bottom blocks. If it finishes earlier, the player may still be in the water, drowning, or may have already drowned.

In summary, I think what's happening is that the client is applying simulation logic to the player during the long data download when the world is opened, a time during which the player has no control and cannot even see what's happening to him. This can lead to unexplained player fatalities despite having been safe at the time they saved. This could explain other unresolved reports of a player spawning at an unexpected perilous position, or already dead.

migrated

ive experience this bug on windows10. after placing lava at surface of a flat world and glass layer at y 50. i was standing on glass and after exiting the game and starting the game up i was below the world falling towards y -40

migrated

Okay, I don't know if we have a new bug or if this bug is different but we are having a fatal issue with a bug similar to this in that people are spawning under the world and instantly dying or they appear to be spawning appropriately but once they are fully into the world you can actually see their name fall through the world where they die. This has occurred, primarily, after an active player has been disconnected from the Realm although it has happened upon spawning into the world. 

We are a multiplayer Realm, hosted on a PC but the majority of players use Xbox. We are using the updated Chroma Hills texture pack on 1.12.0. This bug has occurred with three different players, all Xbox One players, which means it's not "uncommon". In one instance this has happened to the same player two separate times, three days apart. 

1. In the first instance the player is kicked or disconnected from the Realm. 

The player is playing normally, there is minimal lag, there are several players on at the time. The player begins to experience a delay in block's breaking or "freezing" moments during game play. Player then becomes unable to break blocks, pick up blocks, etc. Player is then disconnected from server. Player respawns and immediately dies because they have respawned under the world. Death message says "player fell out of the world". 

The player was mining during both instances and could have been over lava at the time, however they were standing on solid blocks in a mining tunnel. (During the second occurrence of this issue, the player was mining with a second player who saw the first player spawn in and watched as the players gammer tag rapidly descended through the blocks and out of the world) Player was on Xbox One. 

2. In the second instance the player was at another players mob grinder and the same early issues occurred. Unable to break blocks, "freezing" moments, limited lag, several players on at the time. Xbox one player. 

The player was standing at the mob grinder watching another player operate the grinder when they were disconnected from the Realm. Upon respawn the player was seen to be spawning into a block below the spot they were originally standing. The player who was operating the grinder attempted to break the block that was surrounding the spawning players head but was unable to interact with it. The player logged out and when they logged back in, they logged in over ten blocks above where they had previously been standing. Although they did not spawn under the world and die, we believe they would have had they not immediately logged out. The game must have done a block check and teleported them to the "safest" block when they logged out and back in. There was no lava present during this issue. 

3. In the third instance a new player was joining the Realm for the first time.

During spawn the player repeatedly spawned into the Realm and "fell" through the blocks and died. The death message was "player fell out of the world". I physically watched the players gammer tag rapidly descend through the blocks and out of the world three times in a row. There was no lava present. The player was eventually able to log in successfully. 

4. In the fourth instance player was building in the nether and was disconnected from server under the same conditions as the 1st and 2nd instances. 

I was building in the nether when I was disconnected from the Realm. Upon logging, I fell through the blocks below me. However I did not fall out of the world. Instead, I landed on nether rack 20+ blocks below where I was standing. When I looked up to see how far I had fallen, the entire chunk above me was missing. I was standing on a single block next to a large lava lake. I'm not sure if this is related to the other instances because I did not fall out of the world, but I did fall through solid blocks. 

This bug is worse than the first bug in 1.9 where players were logging in and falling to there death because there's no way to prevent the death from occurring. Our players are loosing all of their gear and equipment. We reset the Realm to a previous back up to recover his stuff, but this is an unacceptable solution as other players loose their progress in the game. There is no way to prepare for the occurrence of this bug, IE. removing armor and valuables from inventory before logging out, logging out before death occurs, water drops to prevent death, etc. This is game breaking. 

Please let me know if I need to create a separate bug report for the instances where players are spawning into solid blocks or through solid blocks and landing on other solid blocks in different locations. 

We will attempt to get screen shots or video of this occurring if/when it happens again and I will update this report. 

[Mojang] Mega_Spud (Jay)

@unknown - The scenario you are describing sounds the same as REALMS-2037 - If you would like to add a vote and any extra information to the main ticket it would be appreciated.

Auldrick

@unknown: Please stop making this kind of comment. This is not a discussion forum. Comments here are for adding relevant information to help us find and resolve the problem.

migrated

I'm on Xbox on 1.15.0.51 and I've loaded in seed a flash of bedrock and then empty sky.

Can't reproduce but has happened twice in the past day . Not standing above lava I'm on a redstone lamp with pressure plate on top.  Have to store my items in a chest before I log out or I lose all my equipment. It's a single player survival.

silentwisperer

Anyone able to reproduce this in 1.14.3?

silentwisperer

this appears to be fixed for glass in the 1.16.0.58 beta. Glass is now considered a "safe" block! game doesn't try and move you away from it when you log in, meaning its safe to log out on top of it. Have not tested with other blocks🙂

GoldenHelmet

I cannot reproduce in 1.16.100. This seems to have been fixed at some time in the past, probably 1.13 or 1.14. Relogging over lava does not trigger the danger zone teleport at all, even if no blocks are between you and the lava. Only relogging while in while triggers the teleport.

The comment above that mentions relogging on a pressure plate in 1.15.0.51 relates to a different bug that was fixed during the 1.16 betas (MCPE-65487).

migrated

(Unassigned)

221344

Confirmed

Android

1.12.0.11 Beta, 1.11.4, 1.13.0.2 Beta

Retrieved