mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-07 12:21:52 +09:00
data format docs
Former-commit-id: 5da80ac39d23d518bec0ed4e838fd0a4ae19bd11 Former-commit-id: f7ec7a4cd2c1d7a795aa19352065ee1ea1550fe4
This commit is contained in:
47
work_files/DataFormats/Map data format.txt
Normal file
47
work_files/DataFormats/Map data format.txt
Normal file
@@ -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)
|
||||
|
||||
<EOF>
|
||||
22
work_files/DataFormats/Savegame metadata.txt
Normal file
22
work_files/DataFormats/Savegame metadata.txt
Normal file
@@ -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)
|
||||
Binary file not shown.
42
work_files/DataFormats/User art format.txt
Normal file
42
work_files/DataFormats/User art format.txt
Normal file
@@ -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
|
||||
|
||||
<EOF>
|
||||
Reference in New Issue
Block a user