.paq archive files into a browsable filesystem tree. Automatically converts proprietary formats (JAZ textures, TGA images) to standard PNG.
Usage
Arguments
Source directory containing
.paq files.Typically the installation directory of the original Crimsonland game.Destination directory for extracted assets.Will be created if it doesn’t exist. Each PAQ file becomes a subdirectory.
Behavior
Archive Discovery
Recursively searchesgame_dir for all .paq files:
Output Structure
Each PAQ is extracted to a subdirectory named after the archive:Format Conversions
The extractor automatically converts proprietary formats:Custom texture format with alpha channel.Converted to standard PNG with transparency preserved.
Targa image format.Converted to PNG for broader compatibility.
All other file types are copied as-is:
- Audio files (.ogg, .wav)
- Data files (.dat, .txt)
- Configuration files
Examples
Extract Original Game Assets
Extract from GOG Install
Browse Extracted Sprites
Error Handling
No PAQ Files Found
1
Invalid Game Directory
1
Path Safety
The extractor validates all archive entry names:- Rejects absolute paths
- Rejects parent directory references (
..) - Rejects path traversal attempts
- Normalizes path separators
Use Cases
Inspect Game Assets
Extract to browse sprites, textures, and data files:Asset Modding
Extract, modify, and use custom asset directory:Verify Asset Integrity
Extract and compare checksums:PAQ Format
The PAQ format is a simple archive structure:- Header with entry count
- Table of contents (filenames + offsets)
- Concatenated file data
grim.paq module for implementation details.
JAZ Format
JAZ is a custom texture format used by the original game:- Paletted image data
- Embedded alpha channel
- Custom compression
grim.jaz module for decoder implementation.
Performance
Extraction is fast but may take time for large archives:- ~1200 files extracted in under 5 seconds
- JAZ→PNG conversion is CPU-bound
- Disk I/O is the primary bottleneck
See Also
- Run Command — Launch game with custom assets
- PAQ Archives — PAQ archive specification
- JAZ Textures — Texture format details