Skip to main content

Converts media from a WAD file to modern formats.

Project description

Boom2Zoom

A CLI tool that extracts assets from a Doom WAD to a directory in ZDoom archive format.

This project was originally started to convert dump Doom texture packs. It is written in Python and uses omgifol to load data from WADs.

Features

  • Textures and flats are exported to PNGs under the textures and flats folders respectively.
  • Stock textures are filtered out by content using a set of known texture digests (more on this below).
  • ANIMATED and SWITCHES are converted into ANIMDEFS syntax.
    • Definitions from various Doom-engine games are omitted.
    • Animations are fully defined with PIC, but you can opt out and use RANGE instead.

Installation

Windows

A binary is available under releases. Download and make sure it's in your PATH. This is the quickest and simplest way to use Boom2Zoom on Windows.

Pipx

You can use Boom2Zoom via pipx.

pipx install boom2zoom

Of course, you can also install it directly with pip if you know what you are doing. Just be careful.

Quick-start

Let's first test that B2Z is installed correctly:

boom2zoom --help

At a minimum, you need to provide a wad and the directory to dump its assets into.

boom2zoom OTEX_1.1.wad otex

Textures need patches to be exported and B2Z will warn if there are patches missing.

As you may have put together, we use --base to specify additional sources of patches:

boom2zoom jimmytex.wad jimmytex --base doom2.wad

Texture Filtering

Note: When talking about textures, we are strictly speaking about wall textures.

Boom2Zoom only checks textures for infringement, not flats! If there are stock flats in the WAD, they will be exported.

Details

A WAD with custom textures usually contains redefinitions of stock ones. You probably do not want these, and they are copyright infringing. To help you not break the law, Boom2Zoom spots stock textures and won't emit them. It spots them by seeing if the digest of the texture is the same as a stock one. This digest comes from hashing the raw pixel values of the texture.

B2Z knows the texture digests of the main Doom games, Freedoom, Heretic, Chex 3, and Hexen.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

boom2zoom-2024.6.29.tar.gz (44.1 kB view details)

Uploaded Source

Built Distribution

boom2zoom-2024.6.29-py3-none-any.whl (47.7 kB view details)

Uploaded Python 3

File details

Details for the file boom2zoom-2024.6.29.tar.gz.

File metadata

  • Download URL: boom2zoom-2024.6.29.tar.gz
  • Upload date:
  • Size: 44.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.1 Windows/10

File hashes

Hashes for boom2zoom-2024.6.29.tar.gz
Algorithm Hash digest
SHA256 b82a398bc7e39c44b559020f18aa1e1a7c54be72203ad635714f50f16eb58fe7
MD5 12d35d24888753ad10a2ee549c2f481e
BLAKE2b-256 e7d74d69295c8ed161c03bf26d146f191e31ce87d5c81e3da8582db8623e2a02

See more details on using hashes here.

File details

Details for the file boom2zoom-2024.6.29-py3-none-any.whl.

File metadata

  • Download URL: boom2zoom-2024.6.29-py3-none-any.whl
  • Upload date:
  • Size: 47.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.1 Windows/10

File hashes

Hashes for boom2zoom-2024.6.29-py3-none-any.whl
Algorithm Hash digest
SHA256 d8f238c560ddddc3174856c4409144a56c367c3d17f065289a424f5d1d6b6d86
MD5 0edc64622ba1b5037ccc4df65d495876
BLAKE2b-256 c45d2a86254eddbdb5c5666344e3d82575eba823df56bead216487a6055d4ba5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page