地形缺失可能是显示问题、错误的存档状态,也可能是真正的文件损坏。在使用修复工具之前,你必须先区分这些情况。已删除的区块通过重新生成并不会恢复其中丢失的建筑。
具体缺失的是什么?
记录维度、坐标、受影响的建筑,以及该区域最后一次显示正常的时间点。如果可能,用第二个匹配的客户端比较同一位置。如果问题仅涉及某个玩家的显示,那么暂时没有理由更改服务器文件。
如果确实可能发生了数据丢失,请停止服务器,并连同启动日志和错误日志一起保存完整状态。只对副本进行调查。在你想要保存一个可靠的初始状态期间,不要继续在受影响的区域内探索。
区分观察结果与原因
| 观察结果 | 可能的调查方向 |
|---|---|
| 第二个客户端显示一切正常 | 检查客户端显示和图形模组 |
| 已知地形存在,但较新的建筑缺失 | 比较备份时间点或较旧的存档 |
| 只有一个维度看起来未受影响 | 检查当前活动的维度和与版本相关的布局 |
| 更新后出现明显的地形边界 | 调查生成方式变化或混合的数据状态 |
| 日志报告读取区块时出错 | 检查文件、数据版本和存储状态 |
一条笔直的边界本身并不能证明数据损坏。较旧和新生成的区域看起来也可能不同。如果整个存档都显示异常,调查应从当前使用的存档文件夹和level-name开始。
分离原始文件、证据和工作副本
将出现问题的存档原封不动地保留下来。在运行中的服务器之外保存一份完整副本,并为测试另外制作一份工作副本。记录最后使用的Minecraft版本和服务器版本,以及对模组、数据包或软件所做的更改。
此外,还要检查存储介质或服务器存储空间是否有足够的可用容量。如果反复出现写入错误,必须首先查明这一原因。在同一个仍然存在问题的环境中进行恢复,可能会再次失败。Paper错误诊断有助于将关于区块数据版本过新的提示与其他启动问题区分开来。
一份良好的备份是首次恢复尝试
选择事故发生之前的一份备份,并将其恢复到一个独立的目标位置。使用相匹配的软件以及所需的相同模组组合。先比较受影响的坐标,然后再比较玩家、容器和其他维度。
做一次小的测试性更改,正常停止服务器后再重新启动。如果这个版本可以正常运行,你可以和团队一起决定,从那时起产生的进度损失是否可以接受。备份指南描述了整个流程。
不要在没有计划的情况下,将个别区域文件复制到较新的存档状态中。这样一来,玩家数据、实体、方块数据和其他附加系统可能会来自不同的时间点。这种部分抢救需要进行单独的验收检查。
只有在明确数据格式后才使用工具
MCA Selector提供用于选择、导出和编辑Java版区块的工具。Minecraft Region Fixer可以检查特定的区域文件错误。使用前请先确认该具体工具版本是否支持你的Minecraft数据格式。
先在工作副本上进行分析。保留分析报告,不要立即执行建议的删除操作。一个区域文件可能包含许多区块;文件名并不能说明只有单个建筑受到影响。
这些Java版工具并不是通用的Bedrock版修复指南。较新的数据格式可能会超出较旧工具的处理能力。如果某个程序无法识别存档,不要为了绕过这个错误,就把唯一的备份转换成较旧的格式。
什么时候应该中止修复
如果工具想要更改的区域数量超出预期、打开了错误的维度,或者其输出结果不清楚,就应该停止操作。再次尝试时,请重新使用原始文件的一份全新副本。一个已经部分被更改的工作存档不是一个中立的基础。
如果没有完好的备份,完全恢复可能是不可能的。因此,修复的结果必须被准确描述清楚:恢复的原始数据、导入的部分区域或重新生成的地形,是不同的结果。
验收与记录
检查受影响区域的边界、建筑、容器、物品栏以及重要机制。让一个普通账号加入游戏,并在重启后重复进行比较。在新状态得到确认之前,请保留原始文件、所使用的备份、工具版本以及分析报告。
FAQ
删除一个区块能修复其中的房屋吗?
不能。重新生成只会按照所使用的规则重建地形,而不会恢复你们的建造历史。
出现图形错误时,我必须进行服务器恢复吗?
如果同样的数据在其他客户端上显示正常,请先检查本地的显示情况。恢复操作可能会不必要地删除已有的进度。
我可以通过版本降级来修复损坏吗?
如果要使用较旧版本的服务器,请使用相应较早的备份状态。将已经保存的较新数据进行版本降级,并不是一种可靠的修复方法。
相关指南
本指南的其他语言版本
Deutsch · English · Español · Français · Nederlands · Português · Русский