From 18 Jan, 2021 0:00 UTC: All services will be temporary unavailable for maintenance
  • R/O
  • SSH

waddle: Repository summary

Common Lisp library for manipulating Doom and Quake WAD files and PAK files.

Recent Commits RSS

Rev. Time Author Message
87dd607c039b 2019-12-29 10:35:49 Alexa Jones-Gonzales tip Added FIND-UNUSED-TEXTURES
df2da2c09b22 2019-12-29 09:45:53 Alexa Jones-Gonzales Support BSP2 and 2PSB loading
4cd7d6d646e7 2019-12-29 09:36:23 Alexa Jones-Gonzales Add classes for BSP2 and 2PSB files
674a1066483c 2019-12-22 17:03:45 Alexa Jones-Gonzales Make error handling more robust in wadtool
e7197e2e635b 2019-12-22 17:03:20 Alexa Jones-Gonzales Fix bug that led to images being entirely transparent mos...
e86055c80271 2019-12-22 10:54:50 Alexa Jones-Gonzales Remove the :reader options, not the custom methods
37b140ec756d 2019-12-22 10:49:08 Alexa Jones-Gonzales Remove duplicated methods
c70f98be99db 2019-12-22 09:31:22 Alexa Jones-Gonzales Add missing keyword
c215ee39aff2 2019-12-22 09:29:38 Alexa Jones-Gonzales Update ignores
ca4e7951cdfc 2019-12-22 09:29:20 Alexa Jones-Gonzales Move the BSP classes to their own file

Recently edited Tags

Name Rev. Time Author
tip 87dd607c039b 2019-12-29 10:35:49 Alexa Jones-Gonzales


Name Rev. Time Author Message
default 3df42f533dbe 2018-04-01 11:41:33 Alexa Jones-Gonzales Close old branch


Waddle is a library and command line tool for working with Doom's WAD files and some related formats. It started as a REPL session, then expanded as I needed to do more things, so it's a bit disorganized. But I'm working on that.


Supported Lisp implementations: SBCL, CLisp, or Clozure Common Lisp

You will also need these libraries:

  • p36-lib
  • closer-mop
  • cl-ppcre
  • chipz
  • zpng
  • flexi-streams
  • cl-fad
  • alexandria
  • imago

NOTE: Waddle is in the process of moving its PNG handling to a different library. There may be a few pieces of broken code until this is complete.

How do I get set up?

  • Clone the repository locally
  • Use ASDF to load the system inside of your Lisp implementation (e.g., (asdf:load-system :waddle))
  • Alternatively, load the make-waddle-cmdline.lisp into your Lisp implementation to build the command line program (e.g., sbcl --disable-debugger --load make-waddle-cmdline.lisp)

How to Use

Waddle is divided up into these packages:

  • :P36.WADDLE (nickname: :WADDLE)- This is the main package
  • :P36.WADDLE.UDMF (nickname: :UDMF) - UDMF structures and parsing
  • :P36.WADDLE.CLI - Command line routines, only exists if the waddle-cmdline.asd system is loaded
Show on old repository browser