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.hardcore | 1b or 0b — the hardcore flag |
Data.Difficulty | 0 peaceful → 3 hard |
Data.allowCommands | whether cheats are on |
Data.SpawnX/Y/Z | world spawn |
Data.Time / Data.DayTime | total ticks and time of day |
Data.GameRules | every gamerule as a string |
Data.DataVersion | which Minecraft version last wrote it |
Data.Player | the single-player player, in singleplayer worlds |
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 Data.hardcore: 1b plus the difficulty locked to hard. 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. Renaming level.dat_old to level.dat recovers 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, not level.dat. Different problem, different tool.
- World does not appear in the list at all — usually a missing or zero-byte
level.dat. Check for level.dat_old before 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
In singleplayer, Data.Player holds inventory, position, XP and health. In multiplayer, each player is a separate .dat in playerdata/ named by UUID — which is why a single-player world converted to a server "loses" your inventory. It is still in level.dat, just not where the server looks.
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.