diff --git a/doc/mapformat.txt b/doc/mapformat.txt
index fd892c9db9c4d2c061ed17ee45bcdc048be52e93..db1619865073c79636388eb81d4bf014ea84fbe5 100644
--- a/doc/mapformat.txt
+++ b/doc/mapformat.txt
@@ -271,6 +271,7 @@ zlib-compressed node data:
   u8[4096]: param0 fields
   u8[4096]: param1 fields
   u8[4096]: param2 fields
+- The location of a node in each of those arrays is (z*16*16 + y*16 + x).
 
 zlib-compressed node metadata list
 - content:
@@ -316,6 +317,22 @@ foreach num_name_id_mappings
 
 EOF.
 
+Format of nodes
+----------------
+A node is composed of the u8 fields param0, param1 and param2.
+
+The content id of a node is determined as so:
+- If param0 < 0x80,
+    content_id = param0
+- Otherwise
+    content_id = (param0<<4) + (param2>>4)
+
+The purpose of param1 and param2 depend on the definition of the node.
+
+The name-id-mapping
+--------------------
+The mapping maps node content ids to node names.
+
 Node metadata format
 ---------------------