تم نقل Doom الأصلي لعام 1993 بالكامل إلى SQL، يعمل منطق اللعبة والمُحرك داخل قاعدة بيانات. يعمل حلقة اللعبة بمعدل 35 FPS الأصلي، بينما يُنتج المُحرك إطارات كاملة بدقة 320x200 بتردد يصل إلى 60 هرتز على AMD Ryzen 7 7840 U. يتعامل Python فقط مع التوقيت وإدخال لوحة المفاتيح وعرض الخريطة النقطية. يدعم اللعب الجماعي الميتشات بأربع فتحات على خوادم EU وUS. متاح إصدار البرمجيات المشتركة للحلقة الأولى، مع انتظار إذا امتلأت الخوادم. يعتمد المشروع على DOOMQL، إصدار ASCII فني سابق، لكنه الآن يتضمن أشجار BSP للترتيب العمق الصحيح والملمس وارتفاعات أرضية متفاوتة. تمت ترجمة ملف WAD إلى جداول علائقية، واستغرق الاستيراد حوالي 18 ثانية. يُخرج المُحرك بكسلات RGB دقيقة عبر SQL، ويعمل منطق اللعبة على حلقة ثابتة 35 Hz. العميل بسيط مقصودًا، يتعامل فقط مع الإدخال والتوقيت والعرض.
تفصل الهندسة منطق اللعبة والمُحرك في مسارين SQL: يُحدث منطق اللعبة جداول الحالة، بينما المُحرك دالة نقية من تلك الجداول. يسمح هذا للعميل بطلب الإطارات بقدر ما يحتاج. يُثبت المشروع أن آليات اللعب المعقدة يمكن تنفيذها بالكامل في SQL، باستخدام دوال مُعرّفة من المستخدم عند الحاجة. عامل المتعة في Doom الأصلي محفوظ، مع visuals والإحساس مطابقة للكلاسيك 1993.
الكيانات الرئيسية: المواقع: خوادم EU، خوادم US
المصدر: Hacker News · لخّصه HeadlinesBriefing