此特性为Java版独有。
“Anvil”重定向至此。关于用于修复物品的方块,详见“铁砧”。
Anvil[1]文件格式在Minecraft1.2被正式使用。它在之前的文件格式Region的基础上做出了多个更改和改进。它最初在快照12w07a中投入使用。
与MCRegion的不同之处
从MCRegion到Anvil做出的唯一修改是区块格式--Region文件格式仍在使用,但标识改成了Anvil。Anvil在区块格式上做出了以下修改:
- 最高建筑高度提升到256(原为128)。
- 世界上的空的区域并不会占用内存或保存至硬盘内。
- 通过添加一个4位元数据层面(与元数据的储存方法相似)使方块ID的最大值提升到了4096(原为256)。然而剩余的Minecraft代码中暂时没有使用这项修改。
- 方块的排列顺序从XZY改成了YZX来提高压缩率。
- 优化了发送给客户端的区块数据包(一个无空气的区块要比在旧格式的同区块更小,一个拥有很多空气的区块更是要小得多)。
- 生物群系将保存至每个X、Z列表中,这代表它们现在可由外部程序修改,这对制图者很有帮助。
更多信息
Minecraft快照12w07a/b和1.2会自动地将世界转换至新的格式,但同时会使用旧格式创造一个世界文件的拷贝来兼容旧的游戏版本。世界生成器未经过修改,所以将在往常的地形上生成128层的空气,这使海平面到限制高度增加到了192米。
- 每个区块的 "Blocks","Data","SkyLight"和"BlockLight" 标签被移动并且被改变读取方式(见下文)。
- "Sections" 列表标签包含的复合标签已添加多达16个。
- 每一个16x16x16的区域都有了 "Blocks"、"Data"、"SkyLight" 和 "BlockLight"标签。
- 每一个方块都有“Y”字节标签来说明高度(有些时候Y位置可以被忽略)。0是世界的最底部,15是世界的最顶部。
- 每一个方块都有可选的“Add”标签,这是一个像“Data”一样的DataLayer字节数组。“Add”标签不包括在转换器中,因为旧格式没有超过255的方块ID。这种额外的标记创建一个方块时需要getTile()方法检查是否存在数组,然后替换默认的方块数据。换句话说,方块ID = (当小于8时) + 基础ID。
- 每一个区块都有一个16×16字节的数组和一个生物群系ID标签"Biomes"。如果这个数组丢失了,它会在游戏开始前将数组里的每一个数值变为-1。然而开发人员提供的转换器源代码中不包含任何生物群系的源代码。
- 注意:旧格式是XZY ((x * 16 + z) * 16 + y) 而新格式是YZX ((y * 16 + z) * 16 + x) (请注意DataLayer与OldDataLayer的不同)。
- 新格式使用".mca"为扩展名而不是 ".mcr"(旧格式为安全方面保留了".mcr",level.dat的扩展名就是"level.dat_mcr")。
- 一种叫做IntArray的新NBT标签种类被加入NBT格式 (ID为11)它被用于”地图高度“标签。
其他信息见区块格式
独立转换器
独立的文件格式转换器及其源码已经放出,方便开发者检查和准备。[1]
降低转换后文件大小(生存服务器)
Anvil 文件格式的文件以 .mca 为后缀名,MCRegion 使用 .mcr。要降低备份的文件大小,可以删除这些.mcr 文件(最好是备份以后!)。
可以这么干:
- 打开资源管理器 (Win-e)
- 找到世界存档文件夹,选择进入
- 搜索 (F3):
*.mcr
- 全选 (ctrl-a),删除
cd /到/存档/的路径
,进入目录- 运行:
rm *.mcr
;变体:
rm /到/存档/的路径/*.mcr
——跳过 cd,一步到位find /到/一堆/存档/的路径/ -name '*.mcr' | xargs rm -f
——范围性删除
- 如果你没备份,考虑把
rm
换成mv
(移动)之类的东西吧。
- 打开命令提示符 (Win-r, cmd, Enter)
- 运行:
del /f /s /q 到\存档\的路径\*.mcr
另见
参考
Template:Data
版本 | |||||||
---|---|---|---|---|---|---|---|
开发周期 |
| ||||||
技术 |
| ||||||
多人游戏 | |||||||
游戏订制 |