Doom source port in Lisp
In the last few years I've been watching Doom videos a lot, particularly Decino's, and I've resumed playing occasionally, marveling at modern maps such as Ancient Aliens and Auger; Zenith. I suck, but I have fun playing. I love programming and I love Lisp, but haven't done much Lisp lately. So I'd like to 1. write some Lisp 2. understand Doom (and games) better, from a programmer's point of view.
- Port the open-source DOOM engine from Id as faithfully as practical
- Refactor it to make it Lispy (possibly looking at other ports such as Mocha DOOM)
- Implement more modern features:
- Boom
- UDMF
- Etc.
Useful resources and pointers:
- The open-sourced DOOM engine from Id Software which will be the initial source of inspiration for this port
- The Mocha DOOM implementation in Java for ideas for translating low-level C code to a higher-level language
- The CL-Dwaddle library to manipulate WAD files
- CL-MeltySynth to play MIDI possibly to play MIDI music if cl-sdl doesn't work