We Ported The Original Doom To SQL
AIThis post was created with the assistance of artificial intelligence (AI).

TL;DR

Prime Big Deal Days · Oct 6–7Offer from Amazon

Get the latest gadgets 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
Start your free Prime trial Free trial for eligible customers · Cancel anytime
As an affiliate, we earn on qualifying purchases.

A CedarDB developer has ported the original 1993 Doom’s game logic and renderer into SQL queries that run inside a database. The developer reports that the game loop runs at 35 frames per second, with rendering up to 60 Hz on a laptop, and says four-player deathmatch is available online.

A CedarDB developer has ported the original 1993 Doom so its game logic and renderer run as SQL inside a database, rather than in the game’s usual executable. The developer says the game loop runs at 35 frames per second, with the database producing complete 320-by-200 frames at up to 60 Hz on a laptop; a four-player deathmatch mode is also available.

The project, called SQLDoom, keeps the game state, gameplay rules and rendering in database tables and queries. A Python client handles keyboard input, advances the game at its regular 35-tick-per-second rate, and displays the returned bitmap. The author says the renderer can be queried independently of the fixed-rate game loop, allowing it to produce frames as often as the client requests them.

The developer describes the port as more than a visual recreation: it includes player movement and shooting, enemy behavior, pickups, projectiles, explosions, animations, view bobbing and the heads-up display. The project uses the shareware version of Doom’s first episode for its online game. According to the report, four players can join a deathmatch, with additional visitors placed in a queue when all player slots are occupied.

The game’s WAD data is loaded into relational tables. The author says importing all of Doom 1 takes about 18 seconds on their laptop, using a Python importer of roughly 1,000 lines. The report also offers browser access to European and U.S. servers, though access may depend on available seats and queue capacity.

At a glance
announcementWhen: Published September 22, 2026
The developmentA CedarDB developer published SQLDoom, a project that runs the original Doom’s game logic and renderer inside a database.
Top Steam deals right now
The Outlast Trials-90%$3.99
The Elder Scrolls V: Skyrim Special Edition-90%$3.99
Red Dead Redemption 2-75%$14.99
Warhammer 40,000: Space Marine 2-75%$14.99
Cyberpunk 2077-70%$17.99
How to Fish-38%$4.95
Project Zomboid-33%$16.74
Baldur’s Gate 3-30%$41.99
Live · Steam store (current discounts)

A Database Runs the Game Loop

SQLDoom is a demonstration of how far a database’s query and data-processing capabilities can be pushed when a project is deliberately designed around them. Doom is not just a static image: the database has to update actors and world state, process inputs, calculate collisions and produce a rendered frame. Putting those jobs in SQL makes the project a technical experiment in using a database as an execution environment, not merely as storage.

The reported performance is meaningful within that experiment. The developer says the game maintains Doom’s original 35 Hz game loop while rendering at up to 60 Hz on a laptop. Those figures are the author’s measurements, not an independently published benchmark, and should be read as results for this implementation and hardware rather than a general claim about database performance.

For players, the practical draw is that the port is playable and includes multiplayer, rather than stopping at an unusual rendering demo. For database developers, it offers a concrete example of game state represented relationally and manipulated through queries. The project does not establish that SQL is a practical replacement for conventional game engines; its interest is in showing what can be made to work under unusually strict constraints.

Amazon

SQL database performance monitor

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

From ASCII Rendering to Doom

The author presents SQLDoom as a follow-up to DOOMQL, an earlier project that rendered a rough, ASCII-art view of a Doom-like environment at 30 frames per second. The developer says critics were right to point out that DOOMQL’s raycasting approach was closer to Wolfenstein 3D than to Doom’s rendering methods. The new project was intended to reproduce the original game more faithfully, including its visuals and moment-to-moment play.

The report explains that Doom’s WAD data maps naturally into relational records: vertices connect through linedefs, linedefs reference sidedefs, and sidedefs are associated with sectors. SQLDoom imports that level information into database tables, then uses queries for rendering and game updates. The project’s stated rules allow a non-SQL client only for input, timing and drawing the bitmap; the game logic and rendering must remain SQL-based.

The author’s announcement is the available source for the project’s design and performance figures. It describes a working game and links to live servers, but the supplied report does not include independent testing or a detailed performance methodology.

“The game loop runs at the original 35 FPS.”

— SQLDoom developer, in the CedarDB project report

Amazon

gaming laptop with high refresh rate

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Performance and Access Limits

The developer’s performance figures are reported without a full benchmark setup, so the report does not establish how results vary across database configurations, machines or player loads. It is also not clear from the supplied material how the database handles simultaneous activity during multiplayer sessions or what latency players experience on the hosted servers.

The online version is described as four-player deathmatch using the first episode’s shareware content. The report says visitors can wait in a queue if player seats are taken, but does not specify how many people the queue accepts or how long sessions last. Independent verification of the game’s reported features and performance is not included in the source material.

Amazon

SQL-based game development tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Play the Hosted Deathmatch

The immediate next step for interested readers is to try the hosted SQLDoom servers listed in the project report. The developer says the European and U.S. servers offer four deathmatch slots, with a queue when those seats are occupied; visitors can also inspect live game state through SQL while waiting, subject to the service’s availability.

The report does not announce a release schedule, future feature list or independent evaluation. Any further claims about broader compatibility, performance under heavier multiplayer use or plans to expand the port will depend on updates from the developer.

Amazon

multiplayer gaming accessories

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What is SQLDoom?

SQLDoom is a project that runs the original Doom’s game logic and renderer as SQL inside a database. A Python client handles input, timing and displaying the rendered bitmap.

Does the port include actual gameplay?

The developer says it includes player movement and shooting, enemies, pickups, projectiles, explosions, animations and the HUD. The report also describes an online four-player deathmatch.

How fast does SQLDoom run?

The developer reports that the game loop runs at 35 frames per second and that the renderer can produce 320-by-200 frames at up to 60 Hz on their laptop. These are project-reported figures, not independent benchmark results.

Can people play it online?

The project report links to European and U.S. servers for the shareware version of Doom’s first episode. The developer says the deathmatch supports four player slots; visitors may have to wait in a queue if those slots are full.

Does this mean SQL can replace a game engine?

No such conclusion is established by the project. SQLDoom demonstrates that this particular game can be implemented under the developer’s SQL-focused rules, but the report does not compare it with conventional game engines or argue that SQL is a practical general replacement.

Source: hn

FALL

Fall Picks

As an affiliate, we earn on qualifying purchases.

You May Also Like

I Found These Computers In A Ditch…

Search and coverage interest is rising around “I Found these Computers in a Ditch…,” but the cause of the attention is unconfirmed.

Porting My 1993 Amiga Game To Godot, With An LLM Reading The 68000 Assembly

A developer has successfully ported a 1993 Amiga game to Godot with the aid of a large language model reading 68000 assembly code, completing the process in a single evening.

How xAI’s Grok Voice Transcribe 2.0 Sets New Standards For AI Transcription

xAI announces Grok Voice Transcribe 2.0, its latest speech-to-text tool, promising improvements in accuracy and speed, though detailed benchmarks are not yet available.

The Pentagon’s Anthropic Blacklist Dispute Turns On Claude Features

An Ars Technica headline says a court ruled the Pentagon can blacklist Anthropic after a dispute over Claude features; key details remain unknown.