The ultimate database flex
If you’ve ever looked at a database and thought, 'This could really use more demons,' you’re in luck. A developer named Lukas Vogel has officially brought Doom into an SQL database, a project aptly named SQLDoom. While Vogel himself admits that running a shooter inside a database is 'obviously a bad idea,' the results are actually highkey impressive.
How the magic happens
Don't get it twisted—this isn't just pure SQL doing the heavy lifting. The system uses a small Python client to handle the input, output, and game timing. However, the heavy lifting happens behind the scenes in CedarDB. Using roughly 1,300 lines of SQL queries and 89 common table expressions, Vogel managed to track game geometry and crank out 35 bitmap frames per second in full color.
This is a massive glow-up from his previous attempt, DoomQL, which was stuck in the era of simplistic, grayscale ASCII graphics. SQLDoom actually hits a 640×480 resolution that looks legit like the original game. By breaking down Doom’s classic WAD files into vertices and sectors, Vogel utilized SQL’s 'ORDER BY' statements to handle rendering, which is honestly a galaxy-brain move.
Why it matters
Ok, but why should you care? Beyond the sheer audacity of the project, there’s a genuine technical W here. Vogel notes that using a database for a game state provides a steady 'reference snapshot' of everything happening. This means no janky physics bugs or arguments over whether your rocket actually hit the target. It’s a rock-solid way to handle multiplayer synchronization. If you're feeling adventurous and want to see this chaotic beauty for yourself, the code is up on GitHub, or you can check out the hosted demo. Just don't be surprised if your laptop starts breathing heavy.






