什么是 MCR 文件?
Minecraft MCR 文件格式是一种由 Minecraft 用于存储 Minecraft 世界地形区块的数据格式。它基于 NBT(命名二进制标签)格式,该格式由流行的开源游戏引擎 Minecraft Forge 的开发者开发。MCR 文件类型在最初就已引入,后来被 MCA 文件格式 所取代。
MCR 文件格式
MCR 文件格式结构为一系列命名二进制标签,每个标签包含特定类型的数据。顶层标签是 “Level”(关卡)标签,包含单个游戏关卡的所有数据。在 Level 标签内部,还有多个其他命名标签用于存储不同类型的数据,例如存储游戏世界信息的 “Data”(数据)标签,以及分别存储游戏对象和世界中方块实体的 “Entities”(实体)和 “TileEntities”(方块实体)标签。
MCR 文件格式内部包含什么?
在 Minecraft MCR 文件格式中,区域是游戏世界中一个 32×32 方块的区域。MCR 格式将游戏世界划分为多个区域,以便更高效地管理数据,并实现更快的关卡加载和保存。每个区域存储在单独的文件中,MCR 文件格式使用坐标系统来标识每个区域在游戏世界中的位置。区域的坐标由该区域左下角的方块坐标决定。例如,坐标为 (-1,0) 的区域位于游戏世界原点左侧一个区域,纵向不偏移。
MCR 文件的关键特性
| 特征 | 描述 |
|---|---|
| 文件扩展名 | .mcr |
| 主要变体 | 最初的 McRegion 格式在 Minecraft Beta 1.3 中引入;随后在 Minecraft 1.2.1 中被 Anvil(MCA)格式取代;除标准 McRegion 实现外,没有官方的版本变体。 |
| 格式类型 | 基于命名二进制标签(NBT)结构的二进制区块文件格式;具有 8 KiB 的头部(分为 1024 条目的位置表和时间戳表),随后是以 GZip 或 Zlib 压缩的区块数据,存储在 4 KiB 扇区中 |
| 主要用途 | 用于存储 Minecraft Java 版从 Beta 1.3 到 1.1 版的世界区域数据;每个区域覆盖 32×32 区块的面积(512×256×512 方块),并包含方块数据、实体、方块实体以及光照信息 |
| 主要特性 | 革命性的基于区域的存储方式,将区块组合在一起,消除了早期 Alpha 级别格式中每个区块单独保存导致的性能问题;将世界加载暂停时间降低至原来的七分之一 |
| 安全性概述 | 适用于游戏使用;不包含用于数据完整性验证的内置校验和;若使用文本编辑器手动编辑,易受损坏;需要使用专用工具(NBTExplorer、Minecraft Region Fixer)才能安全查看和修改 |
| 兼容性 | 原生于 Minecraft Java 版 Beta 1.3 至 1.1 版本;在 Minecraft 1.2.1 或更高版本加载时会自动转换为 MCA 格式;可以使用第三方工具如 NBTExplorer、MCEdit 或基于 Python 的区域修复工具打开和检查。 |
MCR 文件格式规范
MCR 文件格式规范已公开。MCR 格式基于的 NBT 格式规范可在 Minecraft Forge 网站上获取。此外,Minecraft 维基 也提供了关于 MCR 文件格式的详细信息,包括其结构以及支持的各种数据类型。
MCR 文件中的压缩数据
Minecraft MCR 文件格式支持压缩。MCR 文件格式基于 NBT 格式,该格式允许以压缩形式存储数据。这有助于减小 MCR 文件的体积,使其在传输和存储时更高效。这是 MCR 文件格式的重要特性,因为它使玩家能够与他人共享大型 Minecraft 世界地形数据。
MCR 与 MCA:关键差异
Anvil 格式(MCA)相较于 MCR 引入了多项改进:
| 特性 | MCR(旧) | MCA(铁砧) |
|---|---|---|
| 建筑高度 | 128 块 | 256 块 |
| 块 ID 限制 | 256 | 4096(带 4 位数据层) |
| 空块 | 已加载到内存 | 未加载或未保存 |
| 生物群系数据 | 即时计算 | 按 X,Z 列保存 (可编辑) |
| 方块排序 | XZY | YZX (提升压缩率) |
| 区块数据包 | 优化不足 | 已针对大小进行优化 |
常见问题
**Q1: MCR 在《我的世界》中代表什么?
答:MCR 代表 Minecraft Region(我的世界区域),表明该格式将游戏世界数据存储为 32×32 区块的区域。
**Q2: 我可以在没有《我的世界》的情况下打开 MCR 文件吗?
答:是的,您可以使用诸如 NBTExplorer 等第三方工具查看和编辑 MCR 文件,但要实际游玩该世界仍需《我的世界》。
**Q3: MCR 与 MCA 文件有什么区别?
答:MCA(Anvil)是更新的格式,在《我的世界》1.2.1 版中取代了 MCR,提供了双倍的建筑高度(256 块对比 128 块)以及更高的存储效率。
**Q4: MCR 文件是完整的《我的世界》世界吗?
A: 不,单个 MCR 文件只存储世界的一个区块。完整的 Minecraft 世界由位于 “region” 文件夹中的许多 MCR 文件组成。
**Q5: 如果我的世界有 MCA 文件,我可以删除 MCR 文件吗?
A: 是的,如果你的世界已转换为更新的 Anvil 格式,旧的 MCR 文件会作为兼容性措施保留下来,可以安全删除以节省空间。