العودة
لعبة أميغا من 1993 تُبنى من جديد في Godot: نموذج لغوي قرأ 72,758 سطرًا من لغة التجميع 68000
SiTech AI Team3 წთ. საკითხავი

لعبة أميغا من 1993 تُبنى من جديد في Godot: نموذج لغوي قرأ 72,758 سطرًا من لغة التجميع 68000

لعبة Babylonian Twins التي كتبها رباح شهاب في بغداد عام 1993 لجهاز Amiga 500 نُقلت إلى Godot 4 بواسطة وكيل ذكاء اصطناعي قرأ كود لغة التجميع الأصلي. يشرح المؤلف أين أصاب النموذج وأين أخطأ لأسبوع.

لعبة من بغداد أُعيد بناؤها

في عام 1993 في بغداد، بنى رباح شهاب لعبة Babylonian Twins على جهاز Amiga 500: نصف ميغابايت من الذاكرة، بلا قرص صلب، ولغة تجميع 68000 خالصة مكتوبة يدويًا؛ رسم الفنّ مرتضى سلمان، وألّف الموسيقى ماهر السلمان. تحت العقوبات، وبكهرباء لا تتوفر إلا ساعات قليلة يوميًا، برمج الفريق العتاد مباشرة من نسخة واحدة من Amiga Hardware Reference Manual. صارت اللعبة أول منتج تجاري يُصنع في العراق، لكن كومودور انهارت وتراجع الناشرون؛ وعثر عليها منتدى أميغا على الرف في 2008 بعد أن نشر شقيق المؤلف مقاطع على يوتيوب. أما النقل اليدوي إلى آيفون في 2010، عبر 34,000 سطر من C++ كُتبت من الصفر، فقد تجاوز مليوني تنزيل.

ثلاث مهام مشروطة

في تدوينة نُشرت في الأول من سبتمبر، يكتب شهاب أنه لم يقم بنقل اللعبة الجديد إلى Godot 4: هو طلبه، ولعب النتيجة كل ليلة، واتخذ القرارات التي تحتاج شخصًا كان هناك في 1993. أما قراءة الكود فقد تولاها نموذج يعمل داخل Claude Code، بوصول إلى الطرفية وملفاته. كانت المهمة الأولى، «الآمنة»، نقل محركه من 2010 إلى Godot 4: مضت إحدى وعشرون دقيقة بين مشروع فارغ وشخصية قابلة للعب، وبحلول الساعة 02:15 كان المشروع يصدّر إلى macOS وiOS وAndroid. أما ضبط إحساس الحركة — مسارات القفز وتوقيت النطاطة وكشف الإصابة — فاستغرق نحو ثلاثة أيام إضافية.

وكانت المهمة الثانية 72,758 سطرًا من لغة تجميع 68000 الأصلية موزعة على 26 ملفًا، مكتوبة لجهاز خرج من الإنتاج قبل عقود وبلا تعليقات تقريبًا. وقبل نقل أي شيء، أعاد النموذج تجميع هذه المصادر بـ vasm وواصل حتى طابق الناتج الملفات الثنائية الصادرة بايتًا ببايت — بعد خمس عشرة دقيقة من الاستيراد. أما صيغة المراحل، التي قاومت قبل عام، فقد فُكّت هذه المرة في تمريرة واحدة وبلا تلميحات، وتطابقت المراحل المعاد رسمها مع تسجيلات المؤلف من 2020 بصفر بكسلات مختلفة. واستغرقت المهمة الثالثة — تشغيل لعبة 1993 داخل النسخة الحديثة مع نقل المحرك إلى 50 هرتز للنسخة القديمة — أمسية واحدة.

أين حدث الخطأ وما الذي يصدر الآن

لم ينجُ كل شيء من المراجعة. في المرحلة الثانية كان اللاعبون يتلقون ضربات من عدو يقف ثلاثة عشر مربعًا فوقهم وبينهما صخر صلب: أبقت النسخة الجديدة على الحد الأدنى لفحص المدى العمودي وأسقطت الحد الأعلى، فصارت اندفاعة مصممة لثلاثة صفوف تمتد على كامل العمود في الخريطة، عبر الأرضية. وفي مواضع أخرى، ترك رسم طبقة مربعات خفية كل الممرات السرية مفتوحة، ومضاعف تحديث الأعداء قبل اللاعبين قفزة النطاطة، وقُرئ مفتاح باب مكتوب كأربع قيم مفصولة بفواصل كمفتاح واحد فلم يُفتح مخرج المرحلة التعليمية. وأشار النموذج إلى غموض في أوراق الرسوم المستوية على أميغا وسأل بدلًا من التخمين. أما تقييم بنجمة واحدة الذي كشفه — الباب يُفتح لكن المرحلة لا تنتهي — فقد وصف عيبًا حقيقيًا عُولج في الإصدار 2.0.3.

أقراص عام 1993 الأصلية مجانية على itch.io؛ ونسخة Definitive Edition على iOS وAndroid الآن، وهناك عرض تجريبي مجاني على Steam، فيما يُنتظر الإصدار الكامل لويندوز وماك ولينكس في الخريف — وستضم داخله لعبة 1993 كخيار تشغيل ثانٍ. ويشير شهاب أيضًا إلى أن النموذج صاغ التدوينة من ملاحظاته وأنه حرّرها يدويًا على مدى أسبوع، وأن الادعاء الوحيد الذي لم يتحقق منه بنفسه هو تفسير النموذج للـ108 بايتات العنيدة في الملفات الثنائية.

SSiTech

SiTech — تطوير ويب مدعوم بالذكاء الاصطناعي

نبني مواقع سريعة وعصرية وندمج الذكاء الاصطناعي في سير عمل الشركات. لديك مشروع أو سؤال؟ يسعدنا مساعدتك.