(C) BoingBoing
This story was originally published by BoingBoing and is unaltered.
. . . . . . . . . .



Doom ported to SQL: welcome to hell [1]

['Rob Beschizza']

Date: 2025-09-16

Getting seminal first-person shooter Doom running on minimal or bizarre hardware is a sport among hackers, but the fact that Doom runs in fast, portable C makes it possible. What if Doom were instead ported to the least convenient and most inappropriate language? How about Structured Query Language, designed exclusively for use manipulating relational databases?

A computer scientist used only "pure SQL" to construct a multiplayer DOOM-like game. The resulting first-person shooter game, cobbled from a mere ~150 lines of Python code, is dubbed DOOMQL. Despite the self-imposed software architecture restrictions, Lukas Vogel, co-founder of database performance outfit CedarDB, says DOOMQL plays at "a breezy ~30 FPS." It isn't the most graphically splendid DOOM-inspired game, though.

I don't know how it works and I don't want to know how it works. If you want to play it, head over to the GitHub repo and get cracking.

Features



Pure SQL renderer: Raycasting, sprite projection, occlusion, and HUD, all implemented as VIEWS .

Multiplayer: CedarDB handles concurrent players, synchronization, and state.

Hackable game state: Change config, teleport players, or balance weapons with a single UPDATE .

First-class cheating support: Since everyone just talks SQL to the DB, half the fun is figuring out sneaky cheating queries.

Minimal client: 150 lines of Python to capture key presses and display frames to your terminal.

[END]
---
[1] Url: https://boingboing.net/2025/09/16/doom-ported-to-sql-welcome-to-hell.html

Published and (C) by BoingBoing
Content appears here under this condition or license: Creative Commons BY-NC-SA 3.0.

via Magical.Fish Gopher News Feeds:
gopher://magical.fish/1/feeds/news/boingboing/