Jump to content

Understanding the NBT Spec


grand_mind1

Recommended Posts

I'm trying to understand the NBT spec as described here:

http://wiki.vg/NBT

http://web.archive.org/web/20110723210920/http://www.minecraft.net/docs/NBT.txt

http://minecraft.gamepedia.com/NBT_format

 

However, I'm having some problems with it. I've decided to use the "Hello World" example in the first link. According to NBTExplorer, it looks like this:

http://i.imgur.com/tGBXrbd.png

I'm printing out the bytes to get a better idea of how it's actually stored. It contained the following bytes:

10 0 11 104 101 108 108 111 32 119 111 114 108 100 8 0 4 110 97 109 101 0 9 66 97 110 97 110 114 97 109 97 0

So far, I have "decoded" this to:

http://i.imgur.com/z4TsbLe.png

As you can see, I have some question marks by some bytes. I'm unsure of what these bytes represent. I think they're related to the data types but I'm not sure. For example, at the beginning, I assume the first byte "10" is Tag_Compound, but it is then followed by "0" and "11" neither of which I understand in context of the spec. The same thing for 8,0,4 and 0,9.

I would be greatly appreciative if someone would explain how to interpret these values.

Link to comment
Share on other sites

http://wiki.vg/NBT#Examples

Directly under the defintion of the hello world example is

"Here is the example explained"

..... You should start reading things in hex when working with binary files much more standard way of showing things.

 

That '0 and 11' is not a '0 and 11' it's 0x000B, It's a WORD (2 bytes, 16-bit integer) when when converted to decimal comes out to be 11. Which tells you the length of the next string "hello world" Count it, you'll see its true.

Same goes for anywhere else in the spec that states that it's a word.

 

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.