This tool is designed for use with DOOMTools. When you use a WAD as a texture resource in DOOMTools, the `/src/wads/textures` process reads the texture definitions and associated graphics directly from the WAD files. This includes the texture data, the patches used to build those textures, and definitions such as switches and animations. However, DOOMTools does not automatically convert those graphics to match a custom palette when processing the texture resource. If the resource WAD was created for a different palette to that of the DOOMtools project, the resulting textures and patches will use incorrect index colour values. This tool converts the graphics in your resource WAD to your project's custom palette and creates a new, palettised version of the resource WAD. This converted WAD can then be used normally with DOOMTools through the `/src/wads/textures` resource system. DOOMTools can now handle the texture definitions, patches, switches, and animations directly from the converted WAD, while all relevant graphics are already converted to the correct project palette. This also removes the need to manually extract the texture resources and maintain a separate set of loose PNG files. ============================================================================== CONFORM2PALETTE - repalette every graphic in a WAD ============================================================================== Converts every graphic in a WAD to a new palette and writes a classic- format copy. Doom pictures, flats, palettised PNGs and truecolour PNGs all come out as standard Doom pictures (or raw flats in a flat namespace). PLAYPAL is replaced with the target's 14 palettes. Every other lump (colormaps, TEXTUREx, ENDOOM, sounds, maps...) is copied byte-for-byte. Names, order, markers and namespaces never change. USAGE conform2palette input.wad [output.wad] [-iwad name] [-pal source] [-replace] OPTIONS -i, -iwad name IWAD palette used as the target if no -pal (default: doom2) Options: doom, doom2, tnt, plutonia, heretic, hexen, free1, free2, doom94, doom294 -pal source Target palette. Accepts: WAD with PLAYPAL, raw PLAYPAL lump, DoomTools palette PNG (256 wide, one palette per row), SLADE pal0.png (16x16 grid), colourmap PNG (row 0), .pal (raw, JASC or RIFF; one or many palettes), GIMP .gpl -input / -output Explicit alternatives to the positional names -replace Overwrite the input instead of writing -palettised.wad NOTES - The input WAD must have its own PLAYPAL (that is the source palette). - A single-palette source gets the standard 13 tint palettes generated. - Nearest colour by weighted RGB; ties go to the lowest index. - PNG grAb offsets carry over; partial alpha is ordered-dithered. - Overwrites go via a temp file, so a failure never damages the input. - WAD files only (no PK3). IWAD paths are set at the top of conform2palette_script.py. EXAMPLES conform2palette res.wad -pal mypal.png - -> res-palettised.wad conform2palette res.wad new.wad -iwad tnt - TNT palette, -> new.wad conform2palette res.wad -pal p.pal -replace - overwrite res.wad