New SQLite exercise: Doom?

5 Likes

Hello, Isaac!

I saw this the other day as well, I’m not sure how feasible it would be in terms of complexity, but I think this is a great idea for people like me who have really struggled with SQL in the past.

Writing a (crap)raycaster in Python was a big thing for me and although I know that doom uses a BSP tree and not a raycasting engine, something in this vein would be great motivation to put the work in and get over the SQL hump.

You’ve probably already checked them out, but if not: the Wolfenstein 3D and Doom Engine Black Books are fantastic. I think Carmack actually endorsed them in some capacity.

Haven’t ever responded to a post on Exercise. Great post!

1 Like

This probably is not feasible nor would I recommend trying to do this :laughing: SQLite would be a terrible choice for Doom. But if you’re looking for a crazy challenge like this, have fun!

:face_holding_back_tears: Please, no!

1 Like

If you can do bowling in SQLite, I’m sure you could pull off Doom!

:thinking: It’s really hard. If I were to try, I’d start developing the objects and actions using art-ascii. I’m not good at art in general, so that’s the first big problem to me. After that, I’ll try to abstract a sql schema to make “thinks happen”. But it’s just a simple and oversimplified idea of ​​the problem.

1 Like

For the record:

I meant do something LIKE this in SQL. In the same ballpark, at 5fps. Haha. I am bad at reading tone. :sweat_smile: I’d be quite curious just to see how you even set up something like this.

Supposedly, these folx did a “pure sql” translation of a 150-line Python program. :woman_shrugging: Crazypants, but also they were careful to claim that it was “doom like”.

CedarDB:Buildng a Doom-Like Multiplayer Shooter…

Inspired by the folx at DuckDB, who did one using WASAM.

:thinking: It’s about how to make a game in pure sql and force it use 5 FPS or it’s about how to implement an exercise with TDD?

About the FPS I think it’s more like an consequence than an intentional implementation, we can use just art-ascii to be pure SQL. Or we need to develop a game client in a language that supports this kind of hardware manipulation and the SQL will be just a backend and/or server and not the whole (or near so) thing.

Thinking about an exercise, we can setup use cases and set the fun tests for you all :grin:. Like real games, only some parts are tested :grin:

I missed this. Thanks for the reply! Appreciate you shedding some light.