Difference between revisions of "Colour map"
From Worms Knowledge Base
CyberShadow (Talk | contribs) |
m (Undo revision 33075 by Johnsmith1313 (talk)) |
||
(94 intermediate revisions by 18 users not shown) | |||
Line 1: | Line 1: | ||
− | 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 | + | {{ParentArticle|[[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 an 8 bit indexed/palette colour mode with an optional transparent colour. | ||
+ | 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 "transparent" colour will act as free space in the game, letting objects pass through it. (Before the [[Worms_Armageddon_ReadMe_(English)/v3.8_Update|v3.8 Update]], only the first occurrence of True Black, <span style="background-color: #000000"> </span> #000000, in the palette would perform this function). | ||
+ | |||
+ | == 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 [[Standard proportion map sizes|here]]. | ||
== 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 Transparent).]] | ||
+ | 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 (where Transparent is a special colour), without affecting other Worms graphics: | ||
− | + | * 64 (65 with Transparent) colours and less – the map will be displayed perfectly, with no glitches | |
− | + | * 65–96 (66-97) colours – the map background sprites (falling debris, clouds, etc.) are removed; the destroyed-soil background may be glitchy | |
+ | * 97–112 (98-113) colours – destroyed soil will be transparent; the destroyed-soil border is solid gray (<span style="background-color: #9c9d9c"> </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—thus, a map with 112 colours (bar transparent) will have a background gradient dithered exclusively from the map's palette. | ||
+ | * 113 (114) colours and more – the map will not load. | ||
− | + | NOTE: Saving a map with 16 colours or less in the palette may have issues in some software due to it automatically saving the map as less than 8 bit. A possible workaround is to save a color in the palette multiple times until there are 17 entries. | |
− | + | ||
− | + | 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. The total colour count as reported by your image editor will almost always include Transparent; however, when creating a 100% solid map (e.g. Mole Shopper), Transparent can be omitted. The omission of Transparent does not increase the total colour allowance -- so, on such a map, the maximum is 112 colours instead of 113, and the optimal zone ends at 64 colours instead of 65. | |
− | + | ||
+ | The ability to use the true Transparent colour for free areas on the map was introduced in the [[Worms Armageddon ReadMe (English)/v3.8_Update|v3.8 Update]]. It no longer matters at which position in the palette the Transparent cell is and what color it replaces, the game will correctly treat it as free space. However, if you want to preserve compatibility with pre-v3.8 hosts while having visual transparency in the PNG file, you can use the first occurrence of True Black, <span style="background-color: #000000"> </span> #000000, and then override it in-place with Transparent (e.g. with Alt+Click in the palette cell in Photoshop). | ||
== PNG chunk == | == PNG chunk == | ||
− | W:A stores the extra settings in an extra [[w: | + | 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. | ||
+ | |||
+ | == 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 [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 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. | ||
+ | |||
+ | === Adobe Photoshop === | ||
+ | Use the following steps to create a WA-compatible map in Adobe Photoshop: | ||
+ | [[Image:Photoshop_SaveForWeb.png|thumb|"Save for Web" dialog (step 3)<br/> | ||
+ | <span style="background-color: #ff0000"> </span> red: required settings<br/> | ||
+ | <span style="background-color: #ff8000"> </span> orange: may be needed depending on the image]] | ||
+ | |||
+ | #draw or open your map | ||
+ | #select File → Save for Web (or "Save for Web & Devices" in CS3 and above) | ||
+ | #in the options in the right, set the following options: | ||
+ | #*set '''Optimized file format''' to '''PNG-8''' | ||
+ | #*uncheck '''Interlaced''' (if any was checked) | ||
+ | #*check '''Transparency''' (unless you are creating a fully solid Mole Shopper map). | ||
+ | #*set '''Maximum number of colors in Color Table''' to '''113 or below'''<br/><small>''(see [[#Colour_limitation|above]] for details on side effects of using certain colour ranges)''</small> | ||
+ | #*play with the '''Color reduction algorithm''' and '''Dither algorithm''' options until your map looks nice, increase/decrease the number of colours accordingly | ||
+ | #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. | ||
+ | |||
+ | [[Image:ImageReady_Panels.png|thumb|x135px|ImageReady (step 3)]] | ||
+ | ==== Adobe ImageReady ==== | ||
+ | The same thing can be done using ImageReady, if you prefer. | ||
+ | |||
+ | #draw or open your map. | ||
+ | #bring up the '''Optimize''' and the '''Color Table''' panels[[#note1|'''*''']]. | ||
+ | #set the options as if it were in Photoshop. | ||
+ | #select File → '''Save Optimized''', or '''Save Optimized As...''' and enter a file name. | ||
+ | |||
+ | {{anchor|note1}}'''*'''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: | ||
+ | |||
+ | #draw or open your map | ||
+ | #select Image → Decrease Color Depth → X Colors (8 bit) | ||
+ | #*set '''Number of colors''' to '''113 or below''' (see [[#Colour_limitation|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. | ||
+ | #select File → Save As | ||
+ | #*enter a file name | ||
+ | #*select '''Portable Network Graphics (*.png)''' | ||
+ | #*click '''Save''' | ||
+ | |||
+ | === Paint.net === | ||
+ | #draw or open your map | ||
+ | #go to '''effects''' on the top, then in the drop down, go to '''color > quantize''' | ||
+ | #set the '''colors''' to, at most, 112 | ||
+ | #set the '''transparency threshold''' to 1 | ||
+ | #click '''OK''' | ||
+ | #save by going to '''file > save''' or '''file > save as''' | ||
+ | |||
+ | === 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 | ||
+ | #select <u>I</u>mage → <u>M</u>ode → <u>I</u>ndexed... | ||
+ | #select the desired colour-reducing image options. | ||
+ | #*Normally you'll want to generate an optimum colour palette and use some kind of dithering. | ||
+ | #*Make sure transparency is enabled unless you are creating a fully solid Mole Shopper map. (Transparency support was introduced in the [[Worms_Armageddon_ReadMe_(English)/v3.8_Update|v3.8 Update]].) | ||
+ | #*Don't include transparency in the colour count (i.e. you will want to use 64 / 96 / 112 colours instead of 65 / 97 / 113). | ||
+ | #*'''Maximum number of colors''' should be set to '''112 or below''' (see [[#Colour_limitation|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. | ||
+ | #select <u>F</u>ile → E<u>x</u>port As... | ||
+ | #enter a file name—the file name must include the extension and end with '''.png''' | ||
+ | #click '''Save''' to open the '''Export Image 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'''. | ||
+ | |||
+ | |||
+ | <!-- 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: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 == | ||
+ | |||
+ | 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). | ||
+ | |||
+ | {{clear}} | ||
+ | == External links == | ||
+ | * [https://www.mnpp.net/?p=219 Map Making Tutorial] by [[People/MnP|MnP]] | ||
+ | * [https://www.wmdb.org/10319 HOW TO: make simple maps in paint] by [[User:D1KSQu4D|D1KSQu4D]] | ||
+ | * [https://web.archive.org/web/20050212111433if_/http://home.iprimus.com.au:80/vahagn/wmmt/ Archive Map Making tutorial] | ||
+ | * [https://www.wmdb.org/18537 Methods to make maps] by [[User:PePaR|PePaR]] | ||
+ | * [https://youtu.be/-eoR3YkGY9c How to make a quick map for Worms Armageddon] [[w:YouTube|YouTube]] video by [[People/sHaDoWMaN|sHaDoWMaN]] | ||
+ | * [https://web.archive.org/web/20090419194941/http://www.wormsmania.net/Guida-mappe-WM.pdf Italian language archive guide to make maps] from [[Worms Mania]]. |
Latest revision as of 11:52, 30 April 2024
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 an 8 bit indexed/palette colour mode with an optional transparent colour. 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 "transparent" colour will act as free space in the game, letting objects pass through it. (Before the v3.8 Update, only the first occurrence of True Black, #000000, in the palette would perform this function).
Contents
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
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 (where Transparent is a special colour), without affecting other Worms graphics:
- 64 (65 with Transparent) colours and less – the map will be displayed perfectly, with no glitches
- 65–96 (66-97) colours – the map background sprites (falling debris, clouds, etc.) are removed; the destroyed-soil background may be glitchy
- 97–112 (98-113) 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 transparent) will have a background gradient dithered exclusively from the map's palette.
- 113 (114) colours and more – the map will not load.
NOTE: Saving a map with 16 colours or less in the palette may have issues in some software due to it automatically saving the map as less than 8 bit. A possible workaround is to save a color in the palette multiple times until there are 17 entries.
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. The total colour count as reported by your image editor will almost always include Transparent; however, when creating a 100% solid map (e.g. Mole Shopper), Transparent can be omitted. The omission of Transparent does not increase the total colour allowance -- so, on such a map, the maximum is 112 colours instead of 113, and the optimal zone ends at 64 colours instead of 65.
The ability to use the true Transparent colour for free areas on the map was introduced in the v3.8 Update. It no longer matters at which position in the palette the Transparent cell is and what color it replaces, the game will correctly treat it as free space. However, if you want to preserve compatibility with pre-v3.8 hosts while having visual transparency in the PNG file, you can use the first occurrence of True Black, #000000, and then override it in-place with Transparent (e.g. with Alt+Click in the palette cell in Photoshop).
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:
- 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.
Adobe Photoshop
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 and above)
- in the options in the right, set the following options:
- set Optimized file format to PNG-8
- uncheck Interlaced (if any was checked)
- check Transparency (unless you are creating a fully solid Mole Shopper map).
- 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
- 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.
Adobe ImageReady
The same thing can be done using ImageReady, if you prefer.
- draw or open your map.
- bring up the Optimize and the Color Table panels*.
- set the options as if it were in Photoshop.
- 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:
- draw or open your map
- 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.
- select File → Save As
- enter a file name
- select Portable Network Graphics (*.png)
- click Save
Paint.net
- draw or open your map
- go to effects on the top, then in the drop down, go to color > quantize
- set the colors to, at most, 112
- set the transparency threshold to 1
- click OK
- save by going to file > save or file > save as
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:
- 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.
- Make sure transparency is enabled unless you are creating a fully solid Mole Shopper map. (Transparency support was introduced in the v3.8 Update.)
- Don't include transparency in the colour count (i.e. you will want to use 64 / 96 / 112 colours instead of 65 / 97 / 113).
- Maximum number of colors should be set to 112 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.
- select File → Export As...
- enter a file name—the file name must include the extension and end with .png
- click Save to open the Export Image 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.
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:
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).