HeadlinesBriefing HeadlinesBriefing.com

Doom en SQL : logique jeu 1993 dans base de données

Hacker News •
×

Le Doom original 1993 a été entièrement porté en SQL, exécutant sa logique de jeu et son rendu dans une base de données. La boucle de jeu fonctionne au rythme original de 35 FPS, tandis que le rendu produit des images complètes 320x200 à jusqu'à 60 Hz sur AMD Ryzen 7 7840 U. Python ne gère que le timing, l'entrée clavier et l'affichage bitmap. Le multijoueur deathmatch est pris en charge avec quatre slots sur les serveurs EU et US. La version shareware du premier épisode est disponible, avec file d'attente si les serveurs sont pleins. Le projet s'appuie sur DOOMQL, une version ASCII art antérieure, mais inclut désormais des arbres BSP pour un ordre de profondeur correct, des textures et des hauteurs de sol variables. Le fichier WAD a été traduit en tables relationnelles, l'importation prenant environ 18 secondes. Le rendu produit des pixels RGB exacts via SQL, et la logique du jeu tourne sur une boucle fixe 35 Hz. Le client est délibérément minimal, gérant uniquement l'entrée, le timing et l'affichage.

L'architecture sépare la logique du jeu et le rendu en deux chemins SQL : la logique du jeu met à jour les tables d'état, tandis que le rendu est une fonction pure de ces tables. Cela permet au client de demander des images aussi souvent que nécessaire. Le projet démontre que des mécaniques de jeu complexes peuvent être implémentées purement en SQL, en utilisant des fonctions définies par l'utilisateur si nécessaire. Le facteur fun du Doom original est préservé, avec visuels et sensation correspondant au classique 1993.

Entités clés : Emplacements : Serveurs EU, Serveurs US

Source: Hacker News · Résumé par HeadlinesBriefing