简短结论:上一份 level.dat 的自动备份
level.dat_old 就是 上一次 level.dat 的自动备份。游戏每成功保存一次世界,会先把当前的 level.dat 留存为 level.dat_old,再写入新的 level.dat。所以同一个世界文件夹里通常会同时出现这两个文件:
level.dat—— 世界当前的元数据:名称、游戏模式、种子、出生点、游戏规则、版本等。想细看它存了什么,可读 level.dat 是什么文件。level.dat_old—— 上一份level.dat的副本,作为「写坏了能回退」的安全网。
要强调的是:这两个文件都只是 世界的元数据。真正的方块、区块、实体数据存在 db/(基岩版)或 region/(Java 版)里,不在 level.dat / level.dat_old 中。
它能在 level.dat 损坏时帮上忙——但有限
如果某次保存中途出错、level.dat 写坏了,世界可能打不开。这时 level.dat_old 就是一个现成的 回退线索:在它本身完好的前提下,用它替换损坏的 level.dat(改名顶上),往往能让世界重新打开,代价是回退到上一次保存时的元数据。
但要诚实说清它的边界:
- 它 只保留一份,且每次保存都会被覆盖——不是多版本历史。
- 它 只是元数据——
db//region/里的区块数据若损坏,换level.dat_old救不了。 - 它 不是完整世界备份——别把它当成「有备份了」的理由。
真要保险,请留完整副本
level.dat_old 解决不了「世界整体损坏」或「误删世界」这类问题。遇到打不开、提示损坏的情况,可以用 TopoBlocks 在 本机免费诊断:它会读取 level.dat/level.dat_old 与整体结构,告诉你问题出在元数据、打包层级还是更深的区块数据。属于结构/打包层面的简单问题,简单修复免费、生成一个能正常导入的新文件,绝不覆盖你的原文件;复杂损坏会先展示问题、成功概率与风险,确认后才走高级修复(¥9/次,失败自动退款,价格以 App 内为准)。具体怎么判断,可参考 世界文件损坏了怎么办 与 误删的世界还能找回吗。
说到底,level.dat_old 只是「最后一次保存的回退线索」。真正想保险,应该 另外导出一份完整 .mcworld 离线副本,或开启版本历史——每次都是新版本、可追溯,恢复时也只创建新副本、不覆盖当前世界。