ddnet/docs/articles/map_format.txt

101 lines
1.3 KiB
Plaintext
Raw Normal View History

2007-05-22 15:06:55 +00:00
Title: Map File Format
Group: Structure
(start code)
int ID // should be "DATA"
2007-05-22 15:06:55 +00:00
int version // should be 2
int size
int swaplen
int num_item_types
int num_items
int num_raw_data
int item_size
int data_size
types {
int typeid
int start
int num
} * (num_item_types)
item_offsets {
int offset
} * (num_items)
raw_data_offsets {
int offset
} * (num_raw_data)
item {
int type_and_id
int size
datai {
int data
} * (size/4)
} * (num_items)
raw_data {
byte d
} * X
(end)
Notes:
* swaplen tells how much of the data that should be swapped
* types.start is an index into offsets
* item.size must be a multiple of 4
* the types must be sorted by type id
* special typeid of 0xffff means raw data, and there fore should always come last
Could change:
* item.size could be removed
Section: Registered Item Types
Group: Image (0x8010)
(start code)
image {
int width
int height
int raw_data_index
}
pixel_data {
byte r
byte g
byte b
byte a
} * (width * height)
(end)
Group: Tilemap (0x8020)
(start code)
tilemap {
int image
int width
int height
int x
int y
int scale
int raw_data_index
}
data {
byte data
} * (width * height)
(end)
Group: Collision (0x8030)
(start code)
collision {
int width
int height
int raw_data_index
}
data {
byte data
} * (width * height)
(end)