Shrinks DOOM resource files: PK3s (ZIP files), WADs, PNGs & JPGs.
Simply drag-n-drop any file, folder, or multiple-selection thereof on top of the "doom-crusher.bat" file and DOOM Crusher will recursively optimize anything it can recognise.
|WAD||Original (B)||(MB)||Crushed (B)||(MB)||Delta|
|boa_c1.pk3||373,344,372 B||356.0 MB||300,256,005 B||286.3 MB||-69.06 MB|
|DUMP-3.PK3||74,526,263 B||71.0 MB||68,149,144 B||64.9 MB||-6.08 MB|
|brutalv20b.pk3||37,046,275 B||35.3 MB||36,379,722 B||34.7 MB||-0.64 MB|
JPEG files are optimized using "jpegtran":
jpegtran works by rearranging the compressed data (DCT coefficients), without ever fully decoding the image. Therefore, its transformations are lossless: there is no image degradation at all ...
PNG files are run through a battery of optimizers:
- PNGOUT (not included in the download due to licence restrictions)
- DeflOpt (binary included due to original website going offline)
WAD files are first optimized by WADPTR:
WADPTR uses three seperate methods to compress WAD files: lump merging, graphic squashing and sidedef packing. These actually all work in quite similar ways. As well as compressing WADs, it also removes unused data in WADs (information that exists but is not part of any lump) and removes unused sidedefs (sidedefs that exist but are not bound to any linedef).
Sidedef packing is not used by DOOM-Crusher due to graphical glitches that may occure in certain WADs. WADs are then scanned for PNG and JPEG lumps and optimized as above.
PK3 files are the WAD format used by modern DOOM engines. A PK3 file is just a renamed ZIP file. The file is unpacked and the contents are optimized as above (PK3 files can contain WAD files, which themselves can contain PNG & JPEG files).
After the contents have been optimized, the PK3 file is repacked using 7Zip's superior ZIP compression (not to be confused with the ".7z" format). Finally, the PK3 file is run through DeflOpt to shave the last few KB off.
Caveats & Things to Consider
You should not run DOOM Crusher on your development-copy of your PK3/WAD. Whilst DOOM Crusher is designed to optimize "losslessly", it may remove 'unused' resources from WADs which you may be storing for later use. It's best to run DOOM Crusher on a final copy of your project before you test it and upload it for distribution
DOOM Crusher is slow. A 300+ MB project may take 3 to 7 hours to crush depending on your CPU