Difference between revisions of "Colour map"

From Worms Knowledge Base

Jump to: navigation, search
(PhotoFiltre (Studio): add note)
(9 intermediate revisions by 3 users not shown)
Line 20: Line 20:
  
 
== Colour limitation ==
 
== Colour limitation ==
[[Image:113-colour game.png|thumb|What the game will look like when playing on a 112-colour map (or 113-colour including black <span style="background-color: #000000;">&emsp;</span>).]]
+
[[Image:113-colour game.png|thumb|What the game will look like when playing on a 112-colour map (or 113-colour including black).]]
 
Since W:A uses a paletted display, the number of colours that may appear simultaneously on-screen is limited. The majority of the colour space is used for in-game graphics for the Worms, weapons, objects, water, UI elements, etc.
 
Since W:A uses a paletted display, the number of colours that may appear simultaneously on-screen is limited. The majority of the colour space is used for in-game graphics for the Worms, weapons, objects, water, UI elements, etc.
 
Therefore, the colour maps may only use a limited number of colours in the palette ('''excluding black''', which is treated as transparent), without affecting other Worms graphics:
 
Therefore, the colour maps may only use a limited number of colours in the palette ('''excluding black''', which is treated as transparent), without affecting other Worms graphics:
Line 26: Line 26:
 
* 64 colours and less&nbsp;– the map will be displayed perfectly, with no glitches
 
* 64 colours and less&nbsp;– the map will be displayed perfectly, with no glitches
 
* 65–96 colours&nbsp;– the map background sprites (falling debris, clouds, etc.) are removed; the destroyed-soil background may be glitchy
 
* 65–96 colours&nbsp;– the map background sprites (falling debris, clouds, etc.) are removed; the destroyed-soil background may be glitchy
* 97–112 colours&nbsp;– destroyed soil will be transparent; the destroyed-soil border is solid gray (<span style="background-color: #9c9d9c">&emsp;</span> #9C9D9C). The background gradient palette will be evenly loaded into the remaining space in the palette, and the background gradient is redithered using the map + background palette&mdash;thus, a map with 112 colours (bar black) will have a background gradient dithered exclusively from the map's palette.
+
* 97–112 colours&nbsp;– destroyed soil will be transparent; the destroyed-soil border is solid gray (<span style="background-color: #9c9d9c">&emsp;</span> #9C9D9C). You will become unable to adjust terrain holes (etc.) using the map editor (<i>land girder palette limitation?</i>). The background gradient palette will be evenly loaded into the remaining space in the palette, and the background gradient is redithered using the map + background palette&mdash;thus, a map with 112 colours (bar black) will have a background gradient dithered exclusively from the map's palette.
 
* 113 colours and more&nbsp;– the map will not load.
 
* 113 colours and more&nbsp;– the map will not load.
  
Line 33: Line 33:
 
== PNG chunk ==
 
== PNG chunk ==
  
W:A stores the extra settings in an extra [[w:Portable Network Graphics#"Chunks" within the file|PNG chunk]], labeled '''w2lv''' or '''waLV'''. The chunk, excluding the label header, is at least 40 bytes long, and contains the same data as the header for [[Monochrome map (.bit)|monochrome maps]]. Extensions to the header format add extra bytes at the end; so far, there is one optional extra byte which controls the number of worm/object placement holes (the default is 18).
+
W:A stores the extra settings in an extra [[w:Portable Network Graphics#"Chunks" within the file|PNG chunk]], labeled '''w2lv''' or '''waLV'''. The chunk, excluding the label header, is at least 40 bytes long, and contains the same data as the header for [[Monochrome map (.bit)|monochrome maps]]. Extensions to the header format add extra bytes at the end; so far, there are two optional extra bytes which control the number of worm/object placement holes (the default is 18).
  
 
[http://entropymine.com/jason/tweakpng/ TweakPNG] allows manipulation of PNG images on the chunk level, thus allowing chunk import/export, etc.
 
[http://entropymine.com/jason/tweakpng/ TweakPNG] allows manipulation of PNG images on the chunk level, thus allowing chunk import/export, etc.
Line 40: Line 40:
 
=== Microsoft Paint ===
 
=== Microsoft Paint ===
 
Microsoft Paint will always save paletted PNGs with 256 colours in the palette, even if not all colours are used in the image. This makes it hard to create new maps with Microsoft Paint - however, if you don't want to use other image editors, this limitation can be overcome using [http://entropymine.com/jason/tweakpng/ TweakPNG]:
 
Microsoft Paint will always save paletted PNGs with 256 colours in the palette, even if not all colours are used in the image. This makes it hard to create new maps with Microsoft Paint - however, if you don't want to use other image editors, this limitation can be overcome using [http://entropymine.com/jason/tweakpng/ TweakPNG]:
 +
[[Image:TweakPNG_Palette.png|thumb|upright|Palette editor of TweakPNG]]
 
*You may edit an already existing map. This will not allow you to edit the palette with Microsoft Paint, however you can use TweakPNG to do that.
 
*You may edit an already existing map. This will not allow you to edit the palette with Microsoft Paint, however you can use TweakPNG to do that.
 
*You may create a new map in MS Paint as usual, and later reduce the number of colours in the palette using TweakPNG. You must however be careful to only use the colours at the beginning of the colour palette, otherwise your map will not load or will lose colour information.
 
*You may create a new map in MS Paint as usual, and later reduce the number of colours in the palette using TweakPNG. You must however be careful to only use the colours at the beginning of the colour palette, otherwise your map will not load or will lose colour information.
Line 46: Line 47:
 
To create a 256-colour PNG in MS Paint:
 
To create a 256-colour PNG in MS Paint:
 
#open or draw your map, or open a new image
 
#open or draw your map, or open a new image
#click '''File''', '''Save As...'''
+
#click '''File'''&nbsp;→ '''Save As...'''
 
#in the '''Save as type''' drop-down box, select '''256 Color Bitmap'''
 
#in the '''Save as type''' drop-down box, select '''256 Color Bitmap'''
 
#enter a temporary file name and click '''Save'''
 
#enter a temporary file name and click '''Save'''
 
#when prompted about loss of colour information, click '''Yes'''. This will downsample your current image to use a standard 256-colour palette.
 
#when prompted about loss of colour information, click '''Yes'''. This will downsample your current image to use a standard 256-colour palette.
#click '''File''', '''Save As...'''
+
#click '''File'''&nbsp;→ '''Save As...'''
 
#in the '''Save as type''' drop-down box, select '''PNG'''
 
#in the '''Save as type''' drop-down box, select '''PNG'''
 
#enter the name of your 256-colour .PNG image and click '''Save'''.
 
#enter the name of your 256-colour .PNG image and click '''Save'''.
Line 62: Line 63:
  
 
#draw or open your map
 
#draw or open your map
#select File&nbsp;→ Save for Web (or "Save for Web&nbsp;&amp; Devices" in CS3)
+
#select File&nbsp;→ Save for Web (or "Save for Web&nbsp;&amp; Devices" in CS3 and above)
 
#in the options in the right, set the following options:
 
#in the options in the right, set the following options:
 
#*set '''Optimized file format''' to '''PNG-8'''
 
#*set '''Optimized file format''' to '''PNG-8'''
Line 99: Line 100:
 
=== GIMP ===
 
=== GIMP ===
 
[[w:GIMP|GIMP]] (the GNU Image Manipulation Program) is a free advanced image editor. Here's how to author your W:A-compatible maps using GIMP:
 
[[w:GIMP|GIMP]] (the GNU Image Manipulation Program) is a free advanced image editor. Here's how to author your W:A-compatible maps using GIMP:
 +
[[File:GIMP_indexing.png|thumb|right|Indexed Color Conversion (step 3)]][[File:GIMP_save_options.png|thumb|right|Save as PNG (step 7)]]
  
 
#draw or open your map
 
#draw or open your map
Line 119: Line 121:
 
#click '''OK'''.
 
#click '''OK'''.
  
=== PhotoFiltre (Studio) ===
 
PhotoFiltre is the free edition of PhotoFiltre Studio available on http://photofiltre.free.fr/. You can create W:A compatible maps with it by following these steps:
 
[[Image:PhotoFiltre Studio IndexColor.png|thumb|"Indexed color" dialog (step 3)]]
 
  
#draw or open your map
+
<!-- add new programs here -->
#select Image → Mode → Indexed color...
+
#select the desired colour-reducing image options.
+
#*if you want to increase the image quality, enable the checkbox '''Diffusion'''. Warning: This can sometimes mess the black color and free space will be filled with slightly non-black pixels here and there.
+
#*'''64 colors''' is the recommended setting. Higher settings requires you to reduce the palette manually using TreakPNG, while lower settings decreases the image quality.<br/><small>''(see [[#Colour_limitation|above]] for details on side effects of using certain colour ranges)''</small>
+
#select File → Save as...
+
#enter a filename and select '''PNG (*.png)''' from the list of filetypes.
+
#click '''Save''' to open the '''PNG''' dialog
+
#*uncheck the '''Interlacing''' option as it will only increase your image's file size.
+
#*use no filtering option by activating the radio box '''None'''.
+
#click '''OK'''.
+
However, due to PhotoFiltre's inability to edit the image palette, you have to add the black color with TreakPNG. (the [http://www.photofiltre-studio.com/plugins/plugins/Palette.zip palette editor] plugin does not allow adding or removing a colour in the palette)
+
  
<!-- add new programs here -->
+
== Choosing a background ==
 +
For the best visual effect, you should select a [[Backgrounds|background]] for your map before distributing it. The background is set by selecting a map texture using W:A's map editor, which is stored in a custom PNG chunk in the .png file. If your map has over 96 colours, selecting a background matching your map's colour theme will allow W:A to render a better-looking gradient.
 +
 
 +
To set the map's texture, load the map in W:A's map editor, select the texture by clicking through the [[Map Editor Guide#texture|"soil and background" box]], then click ''Save'' to overwrite your map. You can use the image below to help you choose the texture:
  
[[Image:How to load maps.png|thumb]]
+
[[Image:BGtest full png std.png|thumb|center|600px|Backgrounds for colour maps (click to enlarge).]]
  
 +
[[Image:How to load maps thumb.png|thumb|upright=1.25]]
 
== Using colour maps ==
 
== Using colour maps ==
  
 
To load a colour map in W:A, copy it to your '''User\SavedLevels''' folder, or a subfolder of that folder. You can load your map in W:A by opening the map editor (right-click the map thumbnail in the offline multiplayer or host screen), and selecting the map from the drop-down combo box (see image).
 
To load a colour map in W:A, copy it to your '''User\SavedLevels''' folder, or a subfolder of that folder. You can load your map in W:A by opening the map editor (right-click the map thumbnail in the offline multiplayer or host screen), and selecting the map from the drop-down combo box (see image).

Revision as of 20:26, 22 August 2013

(Up to File formats)

Support for PNG colour maps were added to Worms Armageddon with the v3.6.19.7 Beta Update (released on 9 February 2004). W:A maps need to be in a paletted 256-colour mode. The number of colours that may appear in the map is restricted as well. W:A stores the extra map settings (water level, borders, etc.) in an extra PNG chunk.

The black colour, which must be present in the colour palette, is considered as transparent (zones/pixels painted black will appear as free space in the game).

Map size

Versions of W:A before 3.6.28.0 only allowed maps that are exactly 1920×696 pixels in size. Version 3.6.28.0 introduces support for arbitrarily-sized maps, with the following restrictions:

  • the width and height of a map must be divisible by 8;
  • a cavern map may now be up to 32512 pixels wide and 32600 pixels tall;
  • an island is limited to being 28408 pixels wide and 30552 pixels tall;
  • the minimum map size is 640×32 pixels.

A list of valid sizes having the standard aspect ratio (80:29) is available here.

Colour limitation

What the game will look like when playing on a 112-colour map (or 113-colour including black).

Since W:A uses a paletted display, the number of colours that may appear simultaneously on-screen is limited. The majority of the colour space is used for in-game graphics for the Worms, weapons, objects, water, UI elements, etc. Therefore, the colour maps may only use a limited number of colours in the palette (excluding black, which is treated as transparent), without affecting other Worms graphics:

  • 64 colours and less – the map will be displayed perfectly, with no glitches
  • 65–96 colours – the map background sprites (falling debris, clouds, etc.) are removed; the destroyed-soil background may be glitchy
  • 97–112 colours – destroyed soil will be transparent; the destroyed-soil border is solid gray ( #9C9D9C). You will become unable to adjust terrain holes (etc.) using the map editor (land girder palette limitation?). The background gradient palette will be evenly loaded into the remaining space in the palette, and the background gradient is redithered using the map + background palette—thus, a map with 112 colours (bar black) will have a background gradient dithered exclusively from the map's palette.
  • 113 colours and more – the map will not load.

These restrictions apply to the palette size, not merely the number of unique colours. WA will automatically reduce the palette losslessly, or offer to dither the image. Internally WA only supports a palette of 113 colours or less and requires that the colour at palette position 0 is black.

PNG chunk

W:A stores the extra settings in an extra PNG chunk, labeled w2lv or waLV. The chunk, excluding the label header, is at least 40 bytes long, and contains the same data as the header for monochrome maps. Extensions to the header format add extra bytes at the end; so far, there are two optional extra bytes which control the number of worm/object placement holes (the default is 18).

TweakPNG allows manipulation of PNG images on the chunk level, thus allowing chunk import/export, etc.

Authoring instructions

Microsoft Paint

Microsoft Paint will always save paletted PNGs with 256 colours in the palette, even if not all colours are used in the image. This makes it hard to create new maps with Microsoft Paint - however, if you don't want to use other image editors, this limitation can be overcome using TweakPNG:

Palette editor of TweakPNG
  • You may edit an already existing map. This will not allow you to edit the palette with Microsoft Paint, however you can use TweakPNG to do that.
  • You may create a new map in MS Paint as usual, and later reduce the number of colours in the palette using TweakPNG. You must however be careful to only use the colours at the beginning of the colour palette, otherwise your map will not load or will lose colour information.
  • Before drawing your new map, you may create your colour palette beforehand. To do that, create a new 256-colour PNG (see below), and then edit the palette chunk using TweakPNG, and resize the palette to at most 113 colours. You can also edit the palette colours from TweakPNG. After you're done, save the image and open it with Paint - Paint will now use the palette specified by you.

To create a 256-colour PNG in MS Paint:

  1. open or draw your map, or open a new image
  2. click File → Save As...
  3. in the Save as type drop-down box, select 256 Color Bitmap
  4. enter a temporary file name and click Save
  5. when prompted about loss of colour information, click Yes. This will downsample your current image to use a standard 256-colour palette.
  6. click File → Save As...
  7. in the Save as type drop-down box, select PNG
  8. enter the name of your 256-colour .PNG image and click Save.

After you're done, you may delete the temporary BMP file created in step 4. The saved PNG will have 256 colours in the palette - see above on how to reduce the number of colours with TweakPNG.

Adobe Photoshop

Use the following steps to create a WA-compatible map in Adobe Photoshop:

"Save for Web" dialog (step 3)
red: required settings
orange: may be needed depending on the image
  1. draw or open your map
  2. select File → Save for Web (or "Save for Web & Devices" in CS3 and above)
  3. in the options in the right, set the following options:
    • set Optimized file format to PNG-8
    • uncheck Transparency and Interlaced (if any was checked)
    • set Maximum number of colors in Color Table to 113 or below
      (see above for details on side effects of using certain colour ranges)
    • play with the Color reduction algorithm and Dither algorithm options until your map looks nice, increase/decrease the number of colours accordingly
    • if there is no black in the colour palette (e.g. Mole Shopper maps), you'll have to add it manually: set Colour reduction algorithm to Custom, choose the black colour using the controls to the left, and click the Add color (Adds eyedropper color to palette) button
  4. click Save, enter a file name.

Note: You could also use "Image → Mode → Indexed Color..." to make a paletted image, but the quality will be poorer comparing to "Save for Web" or ImageReady.

ImageReady (step 3)

Adobe ImageReady

The same thing can be done using ImageReady, if you prefer.

  1. draw or open your map.
  2. bring up the Optimize and the Color Table panels*.
  3. set the options as if it were in Photoshop.
  4. select File → Save Optimized, or Save Optimized As... and enter a file name.

*Note: The panels are called "palettes" in ImageReady.

Paint Shop Pro

Use the following steps to create a WA-compatible map in Paint Shop Pro:

  1. draw or open your map
  2. select Image → Decrease Color Depth → X Colors (8 bit)
    • set Number of colors to 113 or below (see above for details on side effects of using certain colour ranges)
    • it is recommended that you select Optimized Median Cut from the Palette options and Nearest color from the Reduction method options
    • The image will be saved as a 4-bit image if you select fewer than 17 colours. WA only accepts 8-bit images.
  3. select File → Save As
    • enter a file name
    • select Portable Network Graphics (*.png)
    • click Save

GIMP

GIMP (the GNU Image Manipulation Program) is a free advanced image editor. Here's how to author your W:A-compatible maps using GIMP:

Indexed Color Conversion (step 3)
Save as PNG (step 7)
  1. draw or open your map
  2. select Image → Mode → Indexed...
  3. select the desired colour-reducing image options.
    • Normally you'll want to generate an optimum colour palette and use some kind of dithering (you don't need transparency dithering as W:A doesn't understand PNG transparency).
    • Maximum number of colors should be set to 113 or below (see above for details on side effects of using certain colour ranges). It must also be a number above 16, otherwise GIMP will save your PNG as a 4-bit or 1-bit image, instead of an 8-bit image required by W:A.
  4. when creating a reduced colour palette, GIMP sometimes doesn't create a "pure black" palette entry. To check and fix this, do the following:
    1. open the Colormap by selecting Dialogs → Colormap
    2. find the black colour index (it's usually first)
      • Hint: you can find the colour index of a pixel in the image by selecting the Color Picker tool, and clicking in the transparent/black area. The Index field will show the clicked colour's index.
    3. double-click the black colour entry to open the Edit Colormap Entry dialog
    4. set the R, G and B values to 0.
  5. select File → Save as...
  6. enter a file name—the file name must include the extension and end with .png
  7. click Save to open the Save as PNG dialog:
    • uncheck Interlacing as it will only increase your image's file size.
    • you may uncheck all Save ... options, as W:A ignores them
    • compression level can be set to maximum (PNG is a lossless format, so compression does NOT affect image quality).
  8. click OK.


Choosing a background

For the best visual effect, you should select a background for your map before distributing it. The background is set by selecting a map texture using W:A's map editor, which is stored in a custom PNG chunk in the .png file. If your map has over 96 colours, selecting a background matching your map's colour theme will allow W:A to render a better-looking gradient.

To set the map's texture, load the map in W:A's map editor, select the texture by clicking through the "soil and background" box, then click Save to overwrite your map. You can use the image below to help you choose the texture:

Backgrounds for colour maps (click to enlarge).
How to load maps thumb.png

Using colour maps

To load a colour map in W:A, copy it to your User\SavedLevels folder, or a subfolder of that folder. You can load your map in W:A by opening the map editor (right-click the map thumbnail in the offline multiplayer or host screen), and selecting the map from the drop-down combo box (see image).

Personal tools