diff --git a/work_files/DataFormats/Map data format.txt b/work_files/DataFormats/Map data format.txt new file mode 100644 index 000000000..df4454d17 --- /dev/null +++ b/work_files/DataFormats/Map data format.txt @@ -0,0 +1,47 @@ +Terrarum Game Map Format + +* Endianness: big + +Ord Hex Description +00 54 T +01 45 E +02 4D M +03 44 D + +04 01 Number of bits per tile divided by 8, only 1 is supported + +05 Number of layers + +06 00 Reserved +07 00 Reserved + +08 World width +09 World width +0A World width +0B World width + +0C World height +0D World height +0E World height +0F World height + +10 Default spawn coord X +11 Default spawn coord X +12 Default spawn coord X +13 Default spawn coord X + +14 Default spawn coord Y +15 Default spawn coord Y +16 Default spawn coord Y +17 Default spawn coord Y + +18 Terrain tiles data (MSB) + +... Wall tiles data (MSB) + +... Tiles data (LSB) + 0bAAAABBBB - A: Terrain, B: Wall (0-15) + +... Wire tiles data (0-255) + + \ No newline at end of file diff --git a/work_files/DataFormats/Savegame metadata.txt b/work_files/DataFormats/Savegame metadata.txt new file mode 100644 index 000000000..6bc8b94ae --- /dev/null +++ b/work_files/DataFormats/Savegame metadata.txt @@ -0,0 +1,22 @@ +Savegame metadata + +* Endianness: big +* Filename: 'world' +* Remarks: GZipped + +Ord Hex Description +00 54 T +01 45 E +02 4D S +03 44 V + +04 Name of the world in UTF-8 +... 00 String terminator + +... Terrain seed (8 bytes) +... Randomiser seed (8 bytes) + +... SHA-256 hash of worldinfo1 when not compressed (32 bytes) +... SHA-256 hash of worldinfo2 when not compressed (32 bytes) +... SHA-256 hash of worldinfo3 when not compressed (32 bytes) +... SHA-256 hash of worldinfo4 when not compressed (32 bytes) \ No newline at end of file diff --git a/work_files/DataFormats/User art format.pdf b/work_files/DataFormats/User art format.pdf deleted file mode 100644 index 2238ac519..000000000 Binary files a/work_files/DataFormats/User art format.pdf and /dev/null differ diff --git a/work_files/DataFormats/User art format.txt b/work_files/DataFormats/User art format.txt new file mode 100644 index 000000000..559c1acea --- /dev/null +++ b/work_files/DataFormats/User art format.txt @@ -0,0 +1,42 @@ +Terrarum User Art format + +* Endianness: big + +* Palette colour is encoded as 0b0000RRRR 0bGGGGBBBB (yep, four bits are wasted) + +Ord Hex Description +00 54 T +01 45 E +02 41 A +03 46 F + +04 Colour model + 00 Invalid + 01 16 Colours + 02 64 Colours + 08 User-defined palette + +05 Number of swatches + 00 - No palette mode (using defined palette) + - 256 colours (using user-defined) + nn - Colour count (1-255) + +06 Width of the image (MSB) +07 Width of the image (LSB) + +08 Name of the art in UTF-8 +... 00 String terminator + +... Name of the author in UTF-8 +... 00 String terminator + +... Palette colour 0, if any (MSB) +... Palette colour 0, if any (LSB) +... Palette colour 1, if any (MSB) +... Palette colour 1, if any (LSB) +... Palette colour 2, if any (MSB) +... Palette colour 2, if any (LSB) + +... Colour indices + + \ No newline at end of file