TL;DR
Get games and gaming gear delivered free — and shop member deals
- Fast, free delivery on millions of items
- Access to Prime Big Deal Days deals on October 6–7
- Prime Video, Amazon Music and more included
A CedarDB developer reports porting the original 1993 Doom’s game logic and renderer into SQL queries that run inside a database. The game loop runs at 35 ticks per second, and the project supports four-player deathmatch; a Python client handles input, timing and display.
A CedarDB developer has ported the original 1993 Doom so its game logic and renderer run as SQL inside a database, with a fixed 35-tick-per-second game loop and working multiplayer deathmatch. The project, called SQLDoom, uses Python only to read keyboard input, trigger game ticks and display the returned image, according to the developer’s report published September 22, 2026.
The report says SQLDoom produces the game’s complete 320-by-200 RGB frame buffer, with the renderer able to return frames at up to 60 Hz on the developer’s laptop. Game logic and rendering are separate database operations: game state is stored in tables, the logic updates it on the 35 Hz loop, and the renderer queries that state when the client requests a frame. The report identifies the test laptop as using an AMD Ryzen 7 7840U.
The database also holds data imported from Doom’s WAD files. The developer says importing all of Doom 1 takes about 18 seconds on the laptop, using a Python importer of roughly 1,000 lines. The playable release is the shareware version of the first episode. Its deathmatch supports four player slots; the project page says players can queue when the slots are full, and can query live game state through SQL if the queue is also full.
The author says the port includes more than image rendering: player movement and shooting, enemy behavior, pickups, moving projectiles, rocket blast damage, animations, view bobbing and the HUD. The source report presents these as features of the implementation. It does not provide independent testing or benchmark results, so its performance figures and feature descriptions remain attributable to the developer.
SQL Takes On Doom’s Game Loop
SQLDoom is a demonstration of how far database queries can be pushed beyond conventional data storage and retrieval. The project places game state, game logic and rendering in the database, while leaving the client with a narrow supporting role. That makes the port a technical experiment in expressing a real-time, interactive program through relational data and queries.
The claim matters partly because Doom is not just a static scene to reproduce. A playable port must update enemies and projectiles, respond to player input and maintain timing as well as draw the screen. The report’s account of a 35 Hz game loop and multiplayer makes a broader technical claim than an SQL query that merely generates a Doom-like image. It does not, by itself, show that databases are a practical replacement for conventional game engines.
gaming keyboard with programmable keys
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
From DOOMQL to a Full Port
The developer describes SQLDoom as a follow-up to DOOMQL, an earlier project that produced ASCII-style images resembling Doom at 30 frames per second. In the new report, the author says readers were right to point out that the earlier renderer was closer to Wolfenstein 3D because it used raycasting. Doom uses binary space partitioning (BSP), which supports depth ordering for textured walls, angled geometry and varying floor heights.
For SQLDoom, the author says the aim was both visual similarity and the feel of the original game, with rendering and the game loop handled in SQL. The report allows database user-defined functions and a client in another language, provided that client is limited to input, timing and drawing the returned bitmap. The described Python client uses Pygame for those tasks.
“The original Doom’s game logic and renderer, both implemented as SQL queries.”
— SQLDoom developer, in the CedarDB report
Independent Testing Is Not Provided
The technical details and performance figures in the available material come from the developer’s own report. It does not set out independent verification, detailed hardware comparisons, or a full account of how performance changes in different environments. The stated 60 Hz rendering rate applies to the developer’s laptop, and should not be read as a result for other systems.
The report also does not quantify the SQL workload, database resource use or performance under multiplayer conditions. It says deathmatch works and offers four slots, but does not describe a broader test or report how many concurrent games the hosted servers can support. Those limits do not negate the project’s demonstration; they define what the published information establishes so far.
Try the Hosted Deathmatch
The project report points readers to hosted European and United States servers for four-player deathmatch. The first episode’s shareware version is playable, subject to slot availability; players who arrive after all four seats are taken are sent to a queue. The page says that when the queue is full, visitors can still inspect live game state with SQL.
No further release, benchmark or development milestone is specified in the report. The next practical step for readers is to try the hosted version or examine the project materials, while treating performance and capability descriptions as claims from the developer until independently tested.
Key Questions
What does SQLDoom run inside the database?
According to its developer, the game logic, game state and renderer run in the database through SQL. The client uses Python for keyboard input, game-tick timing and displaying the returned bitmap.
Does SQLDoom run at Doom’s original speed?
The developer says the game loop runs at 35 ticks per second, matching the original Doom rate. The report also says the renderer returned frames at up to 60 Hz on a laptop with an AMD Ryzen 7 7840U; that figure is not an independent benchmark.
Can people play multiplayer?
Yes. The project report describes four-player deathmatch on hosted European and U.S. servers. Players may wait in a queue if all four slots are occupied.
Which version of Doom is included?
The playable version is the shareware release of Doom’s first episode, according to the project page.
Has SQLDoom been independently tested?
The source material is the developer’s report and does not provide independent verification of its feature claims or performance figures. The stated results should be understood as the author’s account.
Source: hn
Halloween Picks
halloween
As an affiliate, we earn on qualifying purchases.
