aspose.info
ZH

NBT 文件 - Minecraft 命名二进制标签 - NBT 与 JSON

更新于

什么是 NBT 文件?

NBT 文件是 Minecraft 使用的文件格式。NBT 代表命名二进制标签,是一种用于存储结构化数据的简单二进制格式(类似于 JSON 或 XML)。在 Minecraft 中,NBT 文件用于存储各种游戏数据,包括玩家背包、世界信息、实体数据等。

NBT 文件通常使用 .dat 扩展名存储,并可在 Minecraft 世界的目录结构中找到。例如,玩家背包存储在 playerdata 目录下的 .dat 文件中,而世界信息存储在 region 目录下的 .dat 文件中。

NBT 文件格式 - 更多信息

NBT 是一种简单的二进制格式,旨在高效存储大量二进制数据。由于其灵活性和易用性,Minecraft 使用它来保存数据文件。Minecraft 是一款流行的 3D 沙盒游戏,玩家可以在其中构建和探索虚拟世界。Minecraft 的 Java 版在模组作者中尤为受欢迎,他们通过编辑文件或添加新文件来修改游戏以自定义玩法。Minecraft 中的 NBT 文件经常被模组作者检查和编辑。这些文件通常使用 GZip 压缩,并且可以包含对世界构建和自定义至关重要的各种游戏数据项。

NBT 文件的关键特性

特征描述
文件扩展名.nbt, .dat (most common), .schematic, .schem
主要变体Java 版 NBT(大端序,最常见),Bedrock 版 NBT(小端序,不同的二进制布局)
格式类型二进制树结构数据格式,具有命名标签和类型化值
主要用途存储 Minecraft 游戏数据,包括玩家背包、世界信息、实体数据(怪物、物品)、方块实体(箱子、熔炉)以及多人服务器数据
主要特性基于树的层级结构,允许复杂的嵌套数据,类似于 JSON,但为二进制形式
安全性概况对游戏分发安全;模组作者经常编辑 NBT 文件进行自定义;损坏的 NBT 文件可能导致世界加载失败
兼容性原生于 Minecraft Java 版;Bedrock 版使用修改过的版本;第三方工具支持两种变体

NBT 与 JSON:关键差异

特性NBTJSON
格式二进制(带文本 SNBT 表示)文本
压缩通常使用 GZip 压缩纯文本(可压缩)
数据类型特定数值类型(byte、short、int、long、float、double)仅 Number(无类型区分)
列表同质(仅单一类型)异质(允许混合类型)
顶层必须是复合类型可以是任何有效的 JSON 值
注释不支持官方不支持
主要用途Minecraft 游戏数据Web API、配置文件

如何打开 NBT 文件

有多款软件工具可用于打开和编辑 NBT 文件。以下是能够打开或引用 NBT 文件的程序列表。

  • NBTExplorer(免费),适用于(Windows、Mac、Linux)
  • NBTEdit(免费),适用于 Windows
  • MCEdit(免费),适用于(Windows、Linux)

常见问题

Q1: 我可以在不使用任何特殊软件的情况下打开和编辑 NBT 文件吗?

A: 不行,NBT 文件是二进制的且通常经过 GZip 压缩,因此需要像 NBTExplorer 或 NBT Studio 这样的专用工具来查看或编辑它们。

Q2: NBT 文件与 Minecraft 中的 DAT 文件有什么区别?

A: 它们是相同的格式——Minecraft 通常使用 .dat 扩展名来表示 NBT 格式的文件,例如用于世界数据的 level.dat 和位于 playerdata 文件夹中的玩家 .dat 文件。

Q3: Bedrock 版使用与 Java 版相同的 NBT 格式吗?

A: 不,Bedrock 版使用一种小端序的修改版 NBT,而 Java 版使用大端序;不过,像 NBT Studio 这样的工具可以同时处理两者。

Q4: SNBT 是什么缩写,它在 Minecraft 中如何使用?

A: SNBT 代表 Stringified Named Binary Tag(字符串化命名二进制标签)——它是 NBT 的可读文本表示形式,常用于 /give 和 /data 等指令中,以指定复杂的物品和实体数据。

Q5: 编辑 NBT 文件会损坏我的 Minecraft 世界吗?

A: 是的,对 NBT 文件的错误编辑可能会导致世界存档损坏;在使用任何 NBT 编辑工具之前,请务必完整备份你的世界。

参考文献