Citrus Doom is a Doom port/remake made to run in Stormworks using its implementation of interpreted Lua 5.3. It aims for playability over accuracy
wad_data.py is the "master file", when run it will compile a complete vehicle file and insert it into the user's stormwork's vehicle save location. Note that all changes in configuration must be done by editing that python file, and that a DOOM.WAD from Ultimate Doom must be placed in the wad folder
Most recent steam workshop upload
Thanks to:
- Fabien Sanglard's website for the broad strokes of Doom's rendering
- The Doom Wiki for info on the Doom engine's level format and general rendering
- Coder Space's python Doom engine which I used as the basis for load doom's .wad into a microcontroller, and to understand texture mapping
- Doom source code for understanding roughly how it handles line-of-sight checks, and the very useful state list stored in info.c
- SLADE for telling what parts of a level are what and looking at sprites, and for basic map editing
- Chocolate Doom for being a very good point of comparison for what my remake should be like
- decino's yellow Doom Mechanics videos for general (mostly object-interation and enemy logic) info
- Ultimate Doom Builder for being a much less annoying map editor than Slade, used for settings map
- LifeBoatAPI for being a better (though buggier) code compressor than my own
- Friends for amoral support
Smaller help from:
- u/delelelelelelelele on the SW subreddit for suggesting the storage of data in text boxes
- u/alyxms on the SW subreddit for help with getting the colour correction right (well, good enough)
- Trapdoor and senty the flag on the SW Discord server, they suggested and helped set up LifeBoat