DrawnMapFormat.wiki
author Wuzzy
Thu, 07 Apr 2016 19:39:40 +0100
changeset 860 a7ddaecf54f3
parent 798 30c5f1ebd552
child 1222 111d15f81dbd
permissions -rw-r--r--
LuaAPI: Put onGameInit variables into neat table
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
432
e441f3f51dac Add summary
almikes@aol.com
parents: 226
diff changeset
     1
#summary Short description of the file format of hand-drawn maps
e441f3f51dac Add summary
almikes@aol.com
parents: 226
diff changeset
     2
748
2051f403ddac DrawnMapFormat: Add title
Wuzzy
parents: 666
diff changeset
     3
= Hand-drawn maps =
666
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     4
== Introduction ==
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     5
Hand-drawn maps are maps which are created by the player using the in-game map editor.
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     6
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     7
== File format ==
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     8
Hand-drawn maps are saved with a file name suffix of “.hwmap”. The saving location is freely chosen by the user; Hedgewars does not use any predefined location to save hand-drawn maps.
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
     9
226
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    10
Drawn map is described by a list of points, which define polylines to draw and format of each polyline.
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    11
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    12
Point is defined as
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    13
|| Big-endian int16 || Big-endian int16 || Byte ||
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    14
|| *X* coordinate || *Y* coordinate || *flags* ||
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    15
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    16
where *flags* are:
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    17
|| 8th bit || 7th bit || 6th-1st bits ||
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    18
|| if set, this is a first point of polyline || if set, polyline is erasing || *width*(thickness) of line ||
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    19
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    20
where *width* defines `(width * 10) + 6` pixels width line to draw
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    21
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    22
Second and further points of polyline have 8th bit of *flags* unset, the content of others doesn't matter.
6ca639109e95 Created wiki page through web user interface.
unC0Rr@gmail.com
parents:
diff changeset
    23
666
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
    24
Single-point polyline defines a circle (well, that's kinda obvious).
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
    25
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
    26
== Sharing hand-drawn maps ==
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
    27
Hand-drawn maps will be automatically transferred when playing online.
f38a002a0796 Give the article more flesh
Wuzzy
parents: 432
diff changeset
    28
798
30c5f1ebd552 global replace of http with https for hedgewars.org wiki links
nemo
parents: 748
diff changeset
    29
But if you wish you can still share you creations in the [https://www.hedgewars.org/node/2849 Hand-Drawn Maps Submission Thread].