Peter Gostev created DOOMQL, a Doom-style game implemented as a Python terminal script where SQLite functions as the core game engine. The system uses SQL to manage movement, collision detection, enemies, combat progression, and every RGB pixel on the screen.
- The game logic is driven entirely by SQL queries, including a large recursive CTE that implements a full ray tracer within SQLite.
- A Python script runs the terminal-based game, creating a local SQLite database file to store the game state.
- Users can explore the database using Datasette and the new Datasette Apps plugin to create custom HTML+JavaScript interfaces.
- An example app displays the current screen frame and a tactical minimap by querying the `frame_pixels` view directly within the browser.
This project demonstrates how SQL can be used not just for data storage but as the primary computational engine for real-time graphics and game logic.