Reading level.dat: hardcore status, spawn point and what you can actually fix
A hardcore death is one boolean in level.dat. Here is what the file holds, what a corrupted save looks like, and the honest limits of what inspection can recover.
level.dat is a small gzipped NBT file at the root of every world folder. It holds the world's settings rather than its terrain, which makes it both the most useful file to inspect and the least dangerous one to be curious about.
What is in there
| Path | Holds |
|---|---|
Data.LevelName | the name shown in the world list |
Data.difficulty_settings.hardcore | 1b or 0b — the hardcore flag |
Data.difficulty_settings.difficulty | peaceful → hard, plus a locked flag beside it |
Data.allowCommands | whether cheats are on |
Data.spawn | world spawn: pos, dimension, yaw, pitch |
Data.Time | total ticks (time of day now lives in data/minecraft/world_clocks.dat) |
Data.DataVersion | which Minecraft version last wrote it |
Data.singleplayer_uuid | which player file belongs to the singleplayer owner |
Gamerules are not in here any more either — they moved to data/minecraft/game_rules.dat in the same world folder.
DataVersion is the one people overlook and the one that matters most for troubleshooting: it tells you whether a world has already been opened in a newer version, which is usually irreversible.
The hardcore flag
Hardcore is not a separate world type. It is difficulty_settings.hardcore: 1b plus the difficulty set to hard and locked. When you die, the game does not change the file — it just refuses to let you respawn.
So "can I un-hardcore a dead world" is a fair question, and the answer is that the flag is editable, but that is a modification, not an inspection. Tools that read the file can show you the flag; changing it means writing NBT back, which risks the file. Back up the world folder first, always.
What a corrupted save looks like
level.datunreadable,level.dat_oldpresent — the game keeps a one-generation backup. Renaminglevel.dat_oldtolevel.datrecovers the world minus the most recent session. This works far more often than people expect.- World loads, chunks are missing or black — that is region-file damage in
region/*.mca, notlevel.dat. Different problem, different tool. - World does not appear in the list at all — usually a missing or zero-byte
level.dat. Check forlevel.dat_oldbefore anything else.
What inspection cannot do
Reading a save file cannot bring back:
- items lost to a death or a despawn
- chunks that were never generated
- a world folder that was deleted
Nothing here is a recovery service. The tool shows what the file says; it does not reconstruct what the file no longer contains.
Player data
Every player — the singleplayer owner included — is a separate .dat in players/data/ named by UUID, holding inventory, position, XP and health. level.dat only records which of those files is the owner's (singleplayer_uuid). If an inventory seems lost after moving a world to a server, look for your UUID's file there, not in level.dat.
Open a level.dat, a player .dat, or check a hardcore world's status — all parsed in your browser, nothing uploaded — with the World Save File Inspector.