The ZIP file format is a standard container format developed by PKWARE and allowing a large number of compression methods. This is an open and widely used standard; however it is very seldom implemented fully.
The standard defines the following compression methods (bolded methods are supported by ZDoom):
0 - The file is stored (no compression) 1 - The file is Shrunk 2 - The file is Reduced with compression factor 1 3 - The file is Reduced with compression factor 2 4 - The file is Reduced with compression factor 3 5 - The file is Reduced with compression factor 4 6 - The file is Imploded 8 - The file is Deflated 9 - Enhanced Deflating using Deflate64(tm) 10 - PKWARE Data Compression Library Imploding (old IBM TERSE) 12 - File is compressed using BZIP2 algorithm 14 - LZMA (EFS) 18 - File is compressed using IBM TERSE (new) 19 - IBM LZ77 z Architecture (PFS) 97 - WavPack compressed data 98 - PPMd version I, Rev 1 (as of, only PPMd version H is supported (.7z/.pk7, not .zip/.pk3))
Each file in a ZIP archive can be compressed with a different method. In practice, ZIP implementation is generally limited to only formats 0 (stored) and 8 (deflated).
ZDoom and zipdir both support methods 0 (stored), 1 (shrunk), 6 (imploded), 8 (deflated), 12 (bzipped 2) and 14 (LZMA, also used by the 7z format). As of 2009, when , all the zip files on the Idgames archive can be opened successfully by ZDoom (unsupported methods are not used).
The implementation in ZDoom is based on the zlib library by Jean-Loup Gailly and Mark Adler.