The bug
While testing MC-30646 "Hardcore game is not deleted" I found what may be another manifestation of the same bug, or maybe a new bug (perhaps related to MC-526 "Worlds will not delete").
Not only does a hardcore world not delete with the hardcore death screen deletion button (MC-30646), but additionally the world continues to run behind the UI. You get dropped to the title screen, but can hear the game sounds and music. You can also see the world still running on a second deletion confirmation screen. And even after the apparently successful second deletion action, the world is still not deleted.
How to reproduce
Create singleplayer hardcore world
Die in your hardcore world
Choose "Delete world" on the death screen (not "Spectate world")
Get dropped back to title screen
→ Notice the game sounds continue, as if your world is still runningChoose singleplayer and view list of worlds
→ Observe that the hardcore world is not deleted, as per MC-30646Highlight hardcore world and choose delete
On confirmation screen ("forever is a long time!"), confirm deletion
→ Notice that you can see your world still running in the background here, as well as hear it. Instead of the expected dirt texture backgroundGet dropped back to singleplayer world list
→ Observe that hardcore world is not on the list, indicating (apparently) that it was deleted successfully.Hit escape (don't click the cancel button with mouse cursor)
Expected result
Go to title screen. Hardcore world remains deleted.
Actual result
Get kicked back into your hardcore world, facing once again the choice to delete or spectate. The first time I arrived here, I chose to spectate and my world was full of chunks that wouldn't load, and the game crashed with a memory overflow shortly, indicating maybe some part of the deletion was successful. On subsequent attempts, spectator mode worked fine, with no crashes, in the supposedly deleted world. Hitting delete at this screen will repeat the loop without deleting the world.
Note that hitting the escape key on the world select screen should probably behave the same as clicking the cancel button. That they behave differently may be another bug.
Note
Code analysis can be found in this comment
Linked issues
is duplicated by 15
Attachments
Comments 16
@unknown, since you're the reporter of this ticket, you can update the affected versions list by yourself (and you don't need to leave a comment "Confirmed XXYY")
Issue is still existing in 1.14.4
Screen is from me trying enter that type of world 😛
Game is still running
Fix to this issue in 1.14.4 is simple:
Tested on custom MCP 1.14.4
In `confirmCallback` after sending packet of disconnecting
SaveFormat saveformat = this.minecraft.getSaveLoader();
for (WorldSummary worldSummary : WorldSelectionList.field_212331_y) {
if (this.minecraft.player.world.getWorldInfo().getWorldName() == worldSummary.getDisplayName()) {
saveformat.deleteWorldDirectory(worldSummary.getFileName());
}
}
and in button action add code below before function displaying main menu
this.confirmCallback(true);
@edit
forgot to mention about changeing access for
private List<WorldSummary> field_212331_y;
from `private` to `public static`
Yeah that happened to me once too. Also, did anyone else who got this bug have a tough time ending the Minecraft Java Program? I had a tough time stopping the game.
Was fixed in 19w35a, see MC-30646 for details.
Can confirm.
EDIT: Apparently, after the world is "Deleted", the area that you died in said world shows up in various menus.