RuneTranslate يترجم الآن ألعاب AliceSoft System (Rance وEvenicle…)
يترجم RuneTranslate الآن ألعاب System 3.x وSystem 4 من AliceSoft — سلسلة Rance وEvenicle وDaiakuji وبقية الكتالوج الواسع — إلى الإنجليزية وأكثر من 30 لغة. يقرأ أرشيفات .ald / .afa بلغة TypeScript خالصة، ويستخرج نص الرسائل من System39.ain (System 3.x) أو من .ain الخاص بكل لعبة (System 4، بما في ذلك الحاويات المضغوطة بـ zlib والمشفّرة بـ MT19937)، ثم يصدّر نسخة مترجمة عبر استبدال بملفات منفصلة. ميزة جديدة تمامًا وبأفضل جهد ممكن — ترجم بضعة أسطر واختبر النسخة المصدَّرة قبل مشاركتها.
يقرأ RuneTranslate الآن واحدًا من أكبر الكتالوجات وأكثرها طلبًا في ألعاب الكمبيوتر اليابانية: محرك System من AliceSoft — العائلة التي تشغّل سلسلة Rance بأكملها وEvenicle وDaiakuji وألعاب Toushin Toshi وعقودًا من الإصدارات. إن سبق لك أن فتحت مجلد لعبة Rance، ورأيت كومة من ملفات .ald وملف System39.ain أو Rance6.ain لا يحوي شيئًا قابلًا للقراءة، ولم تكن لديك أدنى فكرة عن مكان الحوار أصلًا — فهذا هو ذلك المحرك. يكتشفه RuneTranslate الآن، ويفتح الأرشيفات بلغة TypeScript خالصة، ويعثر على نص الرسائل أينما اختبأ، ويصدّر نسخة مترجمة تحمّلها اللعبة من تلقاء نفسها. إنه أحدث محرك يدعمه RuneTranslate — الرابع عشر لدينا.
هذا محرك جديد تمامًا، ولنبدأ بالجزء الصريح: دعم AliceSoft بُني حديثًا. الاستخراج وإعادة الكتابة الدقيقة على مستوى البايت مُتحقَّق منهما على ألعاب حقيقية — Rance 5D وSengoku Rance وRance VI — لكن الخطوة الأخيرة، وهي تشغيل نسخة مترجمة بالكامل والتأكد من ظهورها داخل اللعبة، ما زالت قيد التأكيد. لذا قبل أي شيء: إذا وجّهت RuneTranslate إلى لعبة AliceSoft فلم يكتشفها، أو لم يفتحها، أو صدّر شيئًا لا تحمّله اللعبة، فأخبرنا من فضلك. المزيد عن كيفية ذلك في النهاية.
ما هو محرك “System” من AliceSoft فعلًا
بنت AliceSoft محركها الخاص داخليًا واستخدمته في كل شيء تقريبًا. وهو في الحقيقة محركان تحت علامة واحدة:
- System 3.x — العناوين الكلاسيكية. مفسّر صغير (
alice.exe/System39.exe) يشغّل ملفات سيناريو مُصرَّفة، مع فهرسSystem39.ainوأرشيفات.aldتحتوي البيانات. - System 4 — العناوين الحديثة. مفسّر
System40.exeيشغّل ملف.ainخاصًا بكل لعبة، وهو صورة برنامج مُصرَّفة بالكامل، إلى جانب أرشيفات.aldوأرشيفات.afaالأحدث.
كلاهما يخزّن النص الظاهر للاعب في أماكن لا تُفتح في Notepad، وهذا بالضبط ما جعل هذا الكتالوج الضخم بعيد المنال عن أدوات الترجمة الآلية العادية.
لماذا كانت ألعاب AliceSoft صعبة الترجمة إلى هذا الحد
- الحوار ليس حيث تتوقع. في System 3.x، لا تحتوي ملفات السيناريو المُصرَّفة (
.SCO) على الحوار إطلاقًا — بل تشير إلى كل رسالة برقمها. الأسطر الفعلية موجودة في قسمMSGIمنSystem39.ain، وهذا القسم مُدوَّر على مستوى البِتّات بحيث لا يجد البحث النصي العادي شيئًا. - System 4 يغلّف كل شيء. ملف
.ainبرنامج مُصرَّف كامل، ويُشحن في إحدى حاويتين: حاوية مضغوطة بـ zlib (صيغة “AI2”) أو حاوية مشفّرة بالكامل (تدفّق مفاتيح MT19937 على الملف بأكمله). عليك فكّ الحاوية أولًا قبل أن يكون هناك ما يُقرأ. - النص يقبع داخل برنامج، لا داخل سكربت. بعد فكّ الغلاف، تكون تجمّعات الرسائل والسلاسل النصية مدفونة بين الـ bytecode والدوال والمتغيرات العامة وجداول الأنواع. والعثور عليها يعني اجتياز بنية البرنامج كاملةً قسمًا قسمًا.
- ليست كل سلسلة نصية حوارًا. مختلطة بالأسطر توجد سلاسل تنسيق ونصوص تصحيح ومعرّفات يعتمد عليها منطق اللعبة. ترجم واحدة منها سهوًا، وينكسر شيء ما بهدوء.
هذا هو العمل الذي يقوم به RuneTranslate نيابةً عنك الآن — قارئ أرشيف، وفاكّ تشويش، وفاكّ حاويات، ومجتاز برنامج، وحارس يميّز الحوار عن السلاسل الداخلية للمحرك.
ماذا يفعل RuneTranslate الآن
يتعامل RuneTranslate مع AliceSoft كمحرك من الدرجة الأولى، ويتولّى خط الأنابيب بأكمله بلغة TypeScript خالصة — بلا GARbro، وبلا أدوات خارجية، وبلا sidecar بلغة Python، ولا شيء لتثبيته:
- يقرأ أرشيفات `.ald` / `.afa` مباشرةً. يفتح حاويتَي Alice Linked Data وAlice File Archive داخليًا ويسرد ما بداخلها.
- System 3.x: يعثر على الرسائل المخفية. يفكّ تشويش قسم
MSGIمنSystem39.ainويسرد كل سطر في المحرر. - System 4: يفكّ كلتا الحاويتين. سواء كان
.ainبصيغة AI2 المضغوطة بـ zlib أو بالصيغة المشفّرة، يفكّه RuneTranslate ويجتاز صورة البرنامج ويستخرج تجمّع الرسائل (الحوار) وتجمّع السلاسل النصية. - يميّز الحوار عن الآليات. محدِّدات التنسيق وسلاسل التصحيح والمعرّفات تُعرض لكنها مُستبعَدة افتراضيًا — تظهر كصفوف حمراء تُفعَّل يدويًا — بحيث لا تترجم أبدًا عن طريق الخطأ شيئًا يعتمد عليه البرنامج.
- يعيد الكتابة دون كسر المراجع. يشير bytecode اللعبة إلى كل سطر بالفهرس لا بالموضع، فيمكن أن تكون الترجمة بأي طول ويبقى كل شيء متطابقًا. عند التصدير يعيد كتابة بيانات الرسائل — في مكانها لـ System 3.x، وبإعادة تعبئة الحاوية الأصلية لـ System 4 — وتكون النتيجة متطابقة بايتًا ببايت إن لم تغيّر شيئًا.
اليابانية → الإنجليزية هي المجال الأمثل، لكن يمكنك استهداف أي من أكثر من 30 لغة — الإسبانية والفرنسية والألمانية والبرتغالية والروسية والصينية والإيطالية والتركية والفيتنامية وغيرها.
ما تحتاجه
- RuneTranslate لنظام Windows — مجاني؛ كل محرك وكل مزوّد مفتوح (الفئة المجانية مقيّدة في السرعة لا في الميزات).
- مجلد لعبة AliceSoft — الدليل الذي يحوي المفسّر (
alice.exe/System39.exeلـ System 3.x، أوSystem40.exeلـ System 4)، وملفSystem39.ainأو.ainخاصًا بكل لعبة، وأرشيفات.ald/.afa. - لغة هدف — الإنجليزية والإسبانية والفرنسية والألمانية والبرتغالية والروسية والصينية والإيطالية والتركية والفيتنامية وأكثر من 20 لغة أخرى.
- مزوّد ترجمة واحد. Google Translate المجاني يعمل مباشرةً؛ ولـ DeepL فئة مجانية؛ وأما OpenAI وAnthropic ونموذج محلي وأي واجهة برمجية متوافقة مع OpenAI فتتطلب مفتاحك الخاص. وألعاب Rance ورفيقاتها غنية بالحوار، لذا يقدّم LLM (OpenAI / Anthropic) أو DeepL عادةً أفضل قراءة.
الخطوة 1: افتح مجلد اللعبة
شغّل RuneTranslate، وانقر مشروع جديد، ووجّهه إلى دليل لعبة AliceSoft. يعمل اكتشاف المحرك تلقائيًا — إذ يرصد مفسّر System39/40 إلى جانب أرشيفات .ald / .afa، ويتعرّف على المشروع بأنه AliceSoft، ويخبرك بإصدار System. لا يُعدَّل مجلد لعبتك الأصلي أبدًا.
الخطوة 2: كيف يُقرأ النص
في لعبة System 3.x، يفكّ RuneTranslate تشويش قسم الرسائل MSGI من System39.ain ويسرد كل سطر. أما في لعبة System 4، فيفكّ حاوية .ain — المضغوطة بـ zlib أو المشفّرة — ويجتاز صورة البرنامج ويستخرج تجمّعَي الرسائل والسلاسل النصية. في كلتا الحالتين تُعرض السلاسل الداخلية للمحرك (محدِّدات التنسيق ونصوص التصحيح والمعرّفات) لكنها مُستبعَدة افتراضيًا، فلا تترجم إلا ما يراه اللاعب.
الخطوة 3: ترجم
اختر مزوّدًا وشغّله. لهذه الألعاب، يُعدّ LLM (OpenAI / Anthropic) الأفضل لصوت الشخصيات ونبرة السلسلة المبالَغ فيها الشهيرة، وDeepL سريع ونظيف للسرد، وGoogle Translate المجاني كافٍ لسلاسل القوائم القصيرة وأسماء العناصر. أنشئ مسردًا لطاقم الشخصيات والمصطلحات المتكررة مسبقًا كي تظهر الأسماء متطابقة عبر اللعبة كلها — راجع Glossary 101. وعند الانتهاء، تعيد تمريرة اختيارية بـ منقّح الذكاء الاصطناعي قراءة كل سطر في سياقه وتشذّب الصياغة الجامدة الحرفية التي تميل الترجمة الآلية إلى تركها.
الخطوة 4: صدّر نسخة جاهزة للتشغيل
انقر تصدير. يكتب RuneTranslate نسخة مترجمة من اللعبة مع ملف .ain المُعاد بناؤه موضوعًا منفصلًا بجوارها. لا إعادة تعبئة للأرشيف — يحمّل المفسّر ملف .ain المترجَم، فتقرأ اللعبة ترجماتك ببساطة. شغّلها، فتُلعب بلغتك الهدف.
قيود معروفة
- نص AliceSoft بترميز Shift-JIS (cp932). الإنجليزية واللغات الهدف الأخرى القابلة للتمثيل بـ cp932 تُصدَّر بنظافة — ويطبّع RuneTranslate خط كل سطر بحيث تصمد علامات الترقيم الذكية والحروف اللاتينية المعلَّمة بالحركات. أما اللغات الهدف التي تحوي حروفًا خارج cp932 (السيريلية الموسّعة والكورية والصينية التقليدية) فتتطلب تعديلًا يدويًا لخط اللعبة/الترميز لم يُؤتمت بعد.
- تحميل ترجمة كاملة داخل اللعبة ما زال قيد التأكيد. الاستخراج والدورة الكاملة الدقيقة بايتًا ببايت دون تغيير مُتحقَّق منها على Rance 5D وSengoku Rance وRance VI؛ أما تشغيل نسخة مترجمة بالكامل من البداية إلى النهاية فهو الجزء الذي ما زلنا نتحقق منه، لذا اختبر نسختك المصدَّرة أولًا.
- System 4 مُتحقَّق منه على `.ain` بالإصدارين 4 و5. أما صيغ البرامج الأحدث v8+ التي تستخدمها بعض العناوين الحديثة فمدعومة بأفضل جهد ولم يُتحقق منها في اللعبة بعد. وكذلك تُفكّ فهارس أرشيف
.afav3 المشفّرة بأفضل جهد. - النص المطبوع داخل الرسوم — شاشة عنوان أو CG مرسومة كصورة نقطية — بكسلات لا نص سكربت. لهذا، راجع ترجمة النص داخل الصور.
إنها ميزة جديدة تمامًا — أخبرنا بما يتعطّل
يستحق الأمر التكرار بوضوح: دعم AliceSoft إضافة جديدة. قارئات الأرشيف، واستخراج نصوص System 3.x وSystem 4، وإعادة الكتابة الدقيقة على مستوى البايت مبنيّة ومختبَرة وحدويًا، ومُتحقَّق منها على ألعاب Rance حقيقية — لكن كتالوج AliceSoft يمتد عقودًا وفيه مراجعات صيغ كثيرة لم نرها كلها. لذا إذا وجّهت RuneTranslate إلى لعبة AliceSoft فلم يكتشفها، أو لم يفتح الأرشيفات، أو لم يستخرج شيئًا، أو صدّر شيئًا لا تحمّله اللعبة، فأبلغنا من فضلك عبر Discord الخاص بنا — فاسم اللعبة وإصدار System هما بالضبط ما يساعدنا على تقويتها بأسرع ما يمكن.
نزّل RuneTranslate، ووجّهه إلى لعبة Rance التي طالما انتظرت أن تقرأها، وجرّبه. ولإلقاء نظرة على كيفية تعاملنا مع محرك آخر قائم على الأرشفة، اقرأ بعد ذلك دليل YU-RIS.
مستعد لتجربة RuneTranslate؟
تفتح الباقة المجانية كل محرك + كل مزود ترجمة. باقة Supporter ($3/mo) تفتح السرعة الكاملة.
التنزيل لنظام Windows