PresetMaps.wiki
author vittorio.giovara@gmail.com
Sat, 16 Feb 2013 13:33:50 +0000
changeset 306 2f13f8031eaa
parent 279 1d9a5422d1b9
child 323 b1f26e44ce70
permissions -rw-r--r--
one more todo
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
279
1d9a5422d1b9 Edited wiki page PresetMaps through web user interface.
sheepyluva@gmail.com
parents: 264
diff changeset
     1
#summary This page describes the technically relevant aspects of preset maps in Hedgewars
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     2
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     3
<wiki:toc max_depth="3" />
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     4
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     5
----
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     6
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     7
= Introduction =
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     8
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
     9
One of the map types Hedgewars supports are maps that were previously drawn by an artist.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    10
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    11
The looks of such maps are distinctly defined and are not subject to randomized values.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    12
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    13
Additionally these maps allow [LuaGuide Lua-script] to be associated with them in order to enable adding specific gameplay changes and map behavior.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    14
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    15
----
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    16
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    17
= Location =
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    18
All maps are automatically loaded from the [HedgewarsDataDir Hedgewars data directory].
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    19
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    20
In this directory there has to be a folder for every map, named after the desired map name.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    21
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    22
*Examples:*
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    23
  * _Data/Maps/!MyVeryOwnMap_
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    24
  * _Data/Maps/Ropes_
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    25
  * _Data/Maps/Sheep_
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    26
  * etc.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    27
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    28
----
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    29
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    30
= Files =
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    31
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    32
Within the folder of every map the following files are expected to be there:
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    33
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    34
== Basic files ==
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    35
=== map.cfg ===
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    36
Configuration file.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    37
105
5aafdbd7206f Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 97
diff changeset
    38
  * First line is the name of the [Theme] used by the map (for background and clouds, flakes, water, etc)
5aafdbd7206f Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 97
diff changeset
    39
  * Second line is max. number of hedgehogs supported. If the second line is not provided, it is assumed to be 18
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    40
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    41
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    42
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    43
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    44
=== map.png ===
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    45
Image of visible land area.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    46
  * Usually _width/length ratio_ of 2:1
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    47
  * Typical size: 2048 x 1024
242
4bd883e7d479 Edited wiki page PresetMaps through web user interface.
kyberneticist@gmail.com
parents: 153
diff changeset
    48
  * Max size: no limit, 0.9.18+.  4096 x 2048 or less in 0.9.17 and earlier.
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    49
  * If there is no _mask.png_, this image will also be used for deciding what pixels are subject to collision: _alpha value_ not equal to 0 (so below max transparency) will be considered land
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    50
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    51
=== preview.png ===
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    52
Preview image of the map
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    53
  * size: 256 x 128_
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    54
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    55
== Optional files (for advanced features and adjustments) ==
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    56
=== mask.png ===
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    57
Image defining the collision areas of the map.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    58
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    59
  * Pixels with _alpha value_ = 0 will not be subject to collision
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    60
  * White pixels will be terrain
151
33266ae95c27 Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 106
diff changeset
    61
  * Red pixels will be indestructible terrain (regardless of game mode settings)
153
23efe87db6b6 Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 152
diff changeset
    62
  * Black pixels will be terrain with background texture applied (Note: Adding any black pixels removes erasure protection from areas where the map.png is solid but the mask.png is transparent) - 0.9.17+
23efe87db6b6 Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 152
diff changeset
    63
  * Blue pixels will be ice - 0.9.17+
264
215c1770969b Updated mask values
kyberneticist@gmail.com
parents: 242
diff changeset
    64
  * Green pixels block portals - 0.9.18+  They are defined as "bouncy" in the code, although this functionality is not implemented, and could be susceptible to change.  If bouncing is implemented and the green pixels should only block portals, place a dotted line of single red pixels a few pixels above the green, spaced a few pixels apart.
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    65
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    66
*Examples:*
264
215c1770969b Updated mask values
kyberneticist@gmail.com
parents: 242
diff changeset
    67
  * [http://hedgewars.googlecode.com/hg/share/hedgewars/Data/Maps/portal/mask.png Mask]  of [http://hedgewars.googlecode.com/hg/share/hedgewars/Data/Maps/portal/map.png Portal Map]
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    68
(Transparent areas may not be recognizeable as such in your browser/image preview program, so open e.g. in [http://www.gimp.org/ Gimp])
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    69
97
0803dadcc229 Edited wiki page PresetMaps through web user interface.
sheepyluva
parents: 96
diff changeset
    70
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    71
=== map.lua ===
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    72
A Lua-script to be used together with the map.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    73
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    74
See the LuaGuide for more information on Hedgewars' scripting support.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    75
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    76
== Image format ==
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    77
  * PNG, 8-bit/color RGBA (so 32 bit)
105
5aafdbd7206f Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 97
diff changeset
    78
  * Gamma correction and colour profiles should not be applied, in order to ensure the map is loaded identically on OSX as it is on other operating systems by SDL.  To ensure this happens, please run:
5aafdbd7206f Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 97
diff changeset
    79
pngcrush -rem gAMA -rem cHRM -rem iCCP -rem sRGB old/map.png new/map.png
106
ee13fb16ebb5 Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 105
diff changeset
    80
105
5aafdbd7206f Edited wiki page PresetMaps through web user interface.
kyberneticist
parents: 97
diff changeset
    81
or be sure your image editing software has these options disabled.
96
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    82
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    83
----
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    84
= Editing software recommendations =
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    85
== Images ==
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    86
A vector based drawing software is recommended for creating the maps.
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    87
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    88
(Reasons for that: Edges are usually automatically smoothed on export; Easier to meet [http://www.hedgewars.org/node/704 Hedgewars Graphics rules, style constraints, guidelines]; Images are easier to change, adjust and maintain style)
59ea111dd004 Created wiki page through web user interface.
sheepyluva
parents:
diff changeset
    89
97
0803dadcc229 Edited wiki page PresetMaps through web user interface.
sheepyluva
parents: 96
diff changeset
    90
If you don't have one, check out the free open-source [http://inkscape.org Inkscape]: There are various [http://lmgtfy.com/?q=inkscape+tutorial Inkscape tutorials] online, so you should be able to get started easily.