From Worms Knowledge Base
Support for PNG colour maps were added to Worms Armageddon with the v22.214.171.124 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).
Versions of W:A before 126.96.36.199 only allowed maps that are exactly 1920×696 pixels in size. Version 188.8.131.52 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 28416 pixels wide and 30552 pixels tall;
- the minimum map size is 640×32 pixels.
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 solid black; the destroyed-soil border is solid gray. 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.
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 is one optional extra byte which controls 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.
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 would like to use just freeware products, this limitation can be overcomed using 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:
- open or draw your map, or open a new image
- click File, Save As...
- in the Save as type drop-down box, select 256 Color Bitmap
- 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.
- click File, Save As...
- in the Save as type drop-down box, select PNG
- 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.
If you don't want to use TweakPNG and you don't mind losing a lot of colour, you can replace step 3 with "in the Save as type drop-down box, select 16 Color Bitmap"
Use the following steps to create a WA-compatible map in Adobe Photoshop:
- draw or open your map
- select File -> Save for Web (or Save for Web & Devices in CS3)
- 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
- click Save, enter a file name.
Paint Shop Pro
Use the following steps to create a WA-compatible map in Paint Shop Pro:
- draw or open your map
- select Image -> Decrease Color Depth -> X Colors (4/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
- select File -> Save As
- enter a file name
- select Portable Network Graphics (*.png)
- click Save
The GIMP (GNU Image Manipulation Program) is a free advanced image editor. Here's how to author your W:A-compatible maps using The GIMP:
- draw or open your map
- select Image -> Mode -> Indexed...
- 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 The GIMP will save your PNG as a 4-bit or 1-bit image, instead of an 8-bit image required by W:A.
- when creating a reduced colour palette, GIMP sometimes doesn't create a "pure black" palette entry. To check and fix this, do the following:
- open the Colormap by selecting Dialogs -> Colormap
- 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.
- double-click the black colour entry to open the Edit Colormap Entry dialog
- set the R, G and B values to 0.
- select File -> Save as...
- enter a file name - the file name must include the extension and end with .png
- 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).
- click OK.
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), and selecting the map from the drop-down combo box.