الباب الرابع – تعريب لعبة (بقية)


و الآن، بما أن عندنا فكرة عن المبدأ، لنجرب مع أجهزة أخرى و نحاول مع أمثلة جديدة.

بناء على طلب رواد الصفحة، سنأخذ مثالا من النينتندو دي اس.


مثال أول – دراغون كويست 4 (نينتندو دي اس)


الروم التي سنحتاج إليها ستكون:

Dragon Quest IV (U)

لجهاز النينتندو دي اس.

النسخة اليابانية أفضل بقليل لأن بها نصوصا حذفت من النسخ الأخرى كليا،

لكن لا حاجة للاهتمام بهذا التفصيل في الوقت الحاضر.

الروم ستكون بصيغة nds طبعا.


هذه الروم تستخدم نصا انكليزيا.

سنلقي نظرة في المحاكي (DesMume، يحمل من Emucr كالعادة) على أول حوارات اللعبة.

و سنتخذ هذا الحوار هدفا مباشرا لنا.



هناك ميزة مهمة في جهاز النينتندو DS و ما بعده من أجهزة،

بالمقارنة مع الجيم بوي أدفانس و السوبر نينتندو مثلا.


في حين أن تلك الأجهزة القديمة تخزن كل شيء كتلة واحدة (نص، صور، برمجة...)

و تضع لها مؤشرات أو بوينتر Pointer تشير لعنوانها أين تبدأ، كلما احتاجت إليها...


فإن النينتندو دي اس، و أمثالها من الأجهزة الجديدة، تقسم محتوياتها الى مجلدات و ملفات.

هذا الأمر يسهل علينا الكثير نظرا أن الملفات عادة أسماءها واضحة و تدل على محتواها.

و لو أن عدة حالات هناك مبرمجون يضعون ملفا واحدا يكون هو كتلة، لأنهم متعلقون بالماضي.


من بين الأدوات المستخدمة لفتح رومات الدي اس و تفكيكها ملفات منفردة، نجد:

برنامج الكريستال تايل (الذي يفترض أن يكون عندكم) – عبر اختصار CTRL+N.

برنامج Tinke –


نفتح الروم في برنامج الكريستال تايل، و نبحث عن النص أو أجزاء منه كما يظهر في الصورة،

نظرا أنه بالتجربة مع شاشة اختيار الاسم يتوضح لنا أن اللعبة تستخدم قيم ASCII.

تظهر لنا نتيجة هنا:



لو نركز في الأسفل، فهناك اسم الملف و المجلدات التي تحتويه.

يمكننا طبعا التعديل في الكريستال تايل، لكن لاستخراج هذا الملف منفردا،

نذهب الى Tinke

و نختار الملف و ننقر Extract.

الملف الذي سنحصل عليه صغير و سهل التعديل.


هذا الملف لم يكن مضغوطا، إذن لم تكن هناك حاجة لفك ضغطه عبر Unpack.

بالطبع كان يمكننا الاستغناء تماما عن الكريستال تايل،

نظرا أن Tinke نفسه يحتوي برنامج هيكس عبر الزر Hexadecimal

(لكنه قد يفسد بعض الرموز اليابانية نصف العرض للأسف لو استخدم للتعديل، مع ذلك

هو آمن نسبيا ان كنا نستخدم فقط الحروف الانكليزية).


لو نقوم بتغيير الملف في الخارج و نريد أن نعيد ادخاله في الروم، نضغط Change File.

طبعا لو كان الملف قد كان مضغوطا و فككنا ضغطه ب Unpack

يجب بعد التعديل على الملف الداخلي أن نضغط Pack لاعادة ضغط المجلد المضغوط الأب كما يجب.



ماذا لدينا عدا النص؟

الخط... و كلمة FONT الانكليزية هي "الخط" الذي نبحث عنه.



ننقر فوق كل من الملفات الأربعة ntfr و هي ملفات خطوط النينتندو دي اس

(هذا لن يمنع أي لعبة من عدم استعمالها، و استعمال خطوط غيرها)

و ننقر View لاظهارها و تعديلها:



نلاحظ أن الخطوط han10 و han12 (الذان هما نسختان مختلفتا الحجم لنفس الخط)

هما خطا النسخة الانكليزية و بالتالي هما فقط الذان سنهتم بهما.


يمكننا هنا أيضا الرسم و تعديل الخط بالبيكسل بالبيكسل،

و الميزة هنا أن كون الخط متغير العرض،

و الكريستال تايل يسمح لنا بتغيير قيمة العرض هنا.

(هناك ألعاب مثل البروفيسور لايتون تأخذ فقط رسم الخط و تحتقر القيمة المستعملة هنا للعرض

و تستعمل قيمة من ملف آخر عندها، لكن تلك حالات نادرة)


يمكننا كتابة نص في الأسفل لاختبار الخط كيف سيظهر في اللعبة.

فيما يخص القيم Width و Length فهي متعلقة بعرض الحرف.

و لو كنا نرسم خطا عربيا، يجب أن نجعلهما نفس القيمة،

و تلك القيمة هي العرض أفقيا بين أول و آخر نقطة في الحرف العربي.


إذن، سنجرب التعديل على هذين العنصرين (الخط و النص)...

سنجرب الآن رسم الحرف ب أول الكلمة مكان الحرف A.

يكون ذلك ببساطة بنقر البيكسلات على الصورة.

يمكنكم تغيير اللون بين الأبيض أو الأسود هنا أيضا.


و بالطبع، لا ننسى اصلاح عرض الحرف.

عوض البحث عنه في برنامج الهيكس، يمكننا تعديله بسهولة هنا.

بما أن عرض الحرف العربي (بـ) هنا هو 4 بيكسل،

نقوم بوضع 4 مكان Width و Length.

بالنسبة للقيمة Start هي لتداخل الحروف، نتركها 1 لجميع الحروف في الخط.


على سبيل الملاحظة: أمام Char Code توجد قيمة الحرف.

الرمز 0x يقول لنا أن هذا العدد مكتوب بالنظام الست عشري لذلك نتجاهله.

إذن قيمة هذا الحرف هي 41، و كما نلاحظ هو بايت واحد.

لو فتحنا خطا يابانيا سنجد هذه القيمة شيئا مثل 8602 مثلا، و هما بايتان اثنان.


هذا يوفر علينا الوقت في البحث عن التيبل و معرفة قيم الحروف...

لكن فقط في الحالات التي تستعمل فيها اللعبة خطوط NTFR.

في الحالات الأخرى... الأمر ليس بهذه السهولة.



عندما ننهي، نضغط Apply Changes لتسجيل تغييرات هذا الحرف فقط.

و نمر للحرف الذي بعده. نعوض B بحرف الباء آخر الكلمة.

الذي سيكون مختلفا في الشكل و العرض.



على سبيل الاحتياط نقوم دائما بضغط الزر Save New Font لتسجيل تغييرات الخط،

كي لا تضيع هذه التغييرات.


نمر لبقية حروف الأبجدية العربية

تـ ، ت ، ـة ، ة ، ثـ ، ث ، جـ ، ج ، ...


هناك حل يوفر بعض الوقت

و هو أن نقوم باستخراج ملف الخط Extract.

و نقوم بفتح ملف NTFR ذلك في برنامج الكريستال تايل،

حيث نعدل عليه كما نريد.

يمكننا أن ننسخ و نلزق (نظرا أن لدينا عدة حروف لا تختلف الا بالنقاط) أيضا.



نصائح في رسم الخط:

الحروف على نفس الاستقامة و الارتفاع

نفس الشيء لعلامات التنقيط

النقاط فوق و تحت الحروف على نفس الاستقامة

الحروف التي لا تتصل بما بعدها (ا د ذ ر ز و لا) نترك فراغا على يسارها


طبعا هذا يربحنا الوقت لكنه لا يسمح لنا بتعديل العرض نفسه.

نسجل في الكريستال تايل



نعود لبرنامج Tinke

و نضغط فوق اسم ملف الخط.

نضغط Change File لتعويض خط الروم بالخط الذي غيرناه.

و الآن نضغط View لفتح محرر الخط.

الآن يمكننا اكمال الرسم

لكن أهم شيء هو اصلاح عرض الحروف التي غيرناها في الكريستال تايل

و طبعا نسجل التغييرات Apply Changes بعد تغيير عرض كل حرف.



الآن هناك اطاران في الأسفل.

في الإطار الأول يمكننا الكتابة بالإنكليزية (أو اليابانية) لإختبار الخط.


في حالتنا هذه، سنكتب كلمة "تجربة" بالعربية.

النص من اليسار الى اليمين اذن ستكون معكوسة.

بناء على الحروف التي عوضناها، سيكون المقابل الانكليزي للكلمة،

لو استعملنا برنامجا مثل محول الحروف (أو في حالتنا، حسبناها ذهنيا بأنفسنا)

EAQIC


و لو كتبناها في الفراغ الأبيض،

و بالطبع لو كنا حرصنا أن يكون العرض صحيحا لكل الحروف،

ستظهر لنا الحروف متصلة و بالعربي هكذا:



الآن لو لم تكن عندنا حروف أو رموز بأعراض خاطئة،

نسجل التغييرات Save New Font و نذهب لتغيير النص.

في مثالنا اكتفيت بالأبجدية حتى حرف (ز) لكن يمكنكم انهاؤها لو أردتم.



الملف الذي نحتاجه موجود في الروم هنا:

/data/MESS/en/b0200000.mpt

ننقر فوقه مرة، لكن الآن عوض أن نستعمل برنامجا خارجيا لتغييره،

نضغط Hexadecimal.

هذا يفتح برنامج الهيكس الموجود في برنامج Tinke.

ننزل قليلا في الملف.


مبدئيا، يمكننا أن نلاحظ مما تعلمانه سابقا بعض رموز التحكم:

0A (هيكس) = العودة للسطر

%a00090 = اسم الشخصية الرئيسية

@c2@@a@b = اشارة انتهاء النص

(حيث اللعبة تنتظر اللاعب، أو تمر للحوار القادم، أو تطرح سؤالا، الخ)


لن نمس بأي من هذه الرموز.

سنغير ببساطة حوارنا و نكتب كلمة "تجربة" المعربة أي EAQIC

طبعا قبل أن نكتبها نضع نقطة على اليسار

(لأن العربي عندما ندخله في لعبة من اليسار لليمين يكون معكوسا)

و على اليمين نضيف فراغات لتعويض كل شيء قبل الرمز الذي يقابله في الهيكس 0A

لأنه رمز تحكم مهم لا نريد المساس به لحد الآن.


لا تنسخ و تلزق هذه الكلمة من هذا الملف!!

اكتبها بنفسك.

لأن برنامج الهيكس هذا على نقيض غيره،

لو "لزقت" فيه شيئا فهو لا يعوض النص السابق بالجديد

بل يزيد النص الجديد و يزيح للأمام النص السابق أي ان حجم الملف يتغير،

ما قد يتسبب في افساده كليا!


يمكن القول أن برنامج الهيكس هذا سيء لما نريد أن نستخدمه لأجله

(لا يمنع أن لديه استعمالات... أجدى)

و يجب أن نستخدم عوضه برنامج هيكس آخر مثل WindHex مثلا.

لكن هذه مجرد كلمة واحدة لذلك ليست هذه مشكلة كبرى..



هكذا...



عندما ننتهي، اضغط File ثم Save.

نغلق النافذة، ثم نضغط Save ROM.

سيصنع البرنامج نسخة جديدة من الروم و يطلب منك أين تسجلها

لذلك تأكد من كون الجهاز به مساحة كافية للملف الجديد.


السبب هو أن برنامج Tinke يعيد بناء الروم جذريا

نظرا أن تعويض ملف بملف أكبر منه داخل الروم أمر ممكن.

هذه طريقة تعمل مع 90% من الحالات.

لكن هناك بعض الألعاب (مثل Golden Sun 3) تعد هذه الطريقة معها خطأ فادحا.


و النتيجة عند تشغيل اللعبة ستكون:



نجاح مبهر!

بقي ربما البحث عن الصور و تعديلها،

و في تلك الحالة برنامج Crystaltile نستعمله على كل ملف مشتبه به لحل هذه المعضلة.


مثال ثان – Castlevania Dawn of Sorrow (نينتندو دي اس)


هذه المرة، سنقوم باختصار جهودنا قليلا.

نظرا أن هذه اللعبة لديها نسخة أوروبية تحتوي 5 لغات على نفس الروم،

فهذا يعني أن أي صورة و أي نص به كلام ستكون مكررة 5 مرات.


غالبا ما تكون أسماء الملفات بها الحرف الأول من إسم اللغة،

مع العلم أن هذه ليست قاعدة عامة دائما، و الاختصارات مختلفة من مطور لآخر.

مثلا: e أو en أو us / uk (نسبة لأمريكا و بريطانيا) للغة الإنكليزية،

f أو fr للفرنسية، g (من german) أو d (من deutsch) للألمانية، du أو nl للهولندية،

s أو es للإسبانية، i أو it للإيطالية، j لليابانية، الخ...


إذن أول ما سنفعله هو التحصل على النسخة الأوروبية من الروم.

من فوائد النسخة الأوروبية أن خطها به حروف زائدة عن النسخة الأمريكية تتطلبها بعض

اللغات الأوروبية، ما سيفيدنا جدا في النص.


و بالفعل، عندما نفتح Tinke لتفحص ملفات اللعبة، يتأكد لنا أن ظننا في محله.

أولا، نلاحظ أن لدينا تحت المجلد sc سلسلة من الملفات مكررة 5 مرات.

أول ملف من هذه السلسلة هو اسمه f_area_e00.dat

و معه نجد f_area_d00.dat و f_area_f00.dat و f_area_i00.dat و f_area_s00.dat


نحن اذن شبه متأكدون أن هذا الملف هو نسخة من شيء ما خاص للغة الانكليزية.

إذن على الأرجح في حالتنا سيكون إما ملف نص و إما ملف صورة.


نفتح الملف في برنامج الهيكس المرفق مع Tinke

عن طريق نقر Hexadecimal.

طبعا مما سبق تأكدنا أنه برنامج غير مثالي لتعديل النصوص،

لكن هذا لا يمنع أنه مفيد للغاية لإلقاء نظرة خاطفة على محتويات الملفات.



نجد أن هناك كميات كبيرة من الأصفار و نفس الرموز تتكرر، و بعض الرموز العشوائية.

إذن لدينا أسباب وجيهة لنشتبه في كون هذا الملف صورة.

نغلق اذن النافذة و نضغط Extract و نستخرج الملف.

و بعدها نفتحه في برنامج الكريستال تايل و نبدأ في البحث.


نظرا أننا نتعامل مع لعبة دي اس،

فإن ما نبحث عنه سيكون على الأرجح في وضع تايل من التي أشير لها في البرنامج

بالتسميات 1bpp أو مودات VB أو GBA.

و أيضا، على الغالب لن تكون أبعاد التايل هي 8×8.

سنجرب مع أبعاد من نوع 12، 16 و مضاعفات هذه الأعداد عادة.

أي أننا سنستعمل Alt+الاتجاهات كثيرا.

الصورة تبدو في الأول نقاطا مشتتة بلا معنى،

لكنها شيئا فشيئا سيقرب مظهرها إلى شكل شريط مطاطي مائل متمطط إلى درجة يكاد يتمزق.

شيئا فشيئا زاوية الميلان ستتقلص الى أن تصبح الصورة واضحة (عدا كون الألوان خاطئة):




هذه إذن إحدى الصور التي تظهر في اللعبة.

هذا الملف يحتوي هذه الصورة و معها صورة أخرى في الأسفل.

بقي علينا الآن فقط تصحيح الألوان (في قائمة الألوان Palette)

عن طريق ثلاث حلول

1/ نلتقط صورة للعبة و فيها الصورة و ننسخ الألوان بأنفسنا

2/ في المحاكي، نضغط View Palette و ننسخ الألوان بأنفسنا

3/ في الروم نبحث عن بيانات جدول الألوان. عادة هي تكون ملفا منفصلا،

لكن في حالتنا هذه الصيغة ليست معروفة تماما.


و عدا ذلك يصبح تعديل و ترجمة ما في هذه الصور في متناولنا تماما.


و الآن لنمر للبحث عن الخط.

شركة نينتندو ساعدت المطورين عن طريق توفير خطوط لهم في صيغة جاهزة إسمها NTFR

و كذلك الشأن بالنسبة للصور (سنرى ذلك لاحقا).

لكن في حين أن عددا هاما من الشركات استعمل تلك الصيغ، فهذا لا يعني أن الجميع استعملها.

مبرمجو الألعاب، مهما كان الزمن، كل يغني على ليلاه.


كما رأينا قبل قليل فالصورة التي فيها اسم المكان (القرية المفقودة) لم تكن مخزنة بتلك الصيغة.

و كذلك كان الأمر بالنسبة للخط و للنص.


كي نجد الخط، و تلك عملية قد تكون سهلة ممتنعة

أو صعبة مثل البحث عن ابرة في كومة قش (ذلك سبب تعطل جل محاولات ترجمة ألعاب البلاي 1 مثلا)

سنحاول أن نبحث عن ملف اسمه font أو فيه أعداد مثل 10 أو 12 أو كلمات ascii أو us أو jp الخ...


في Tinke، و في لعبة الكاستلفانيا هذه،

نجد مفاجأة سارة و هي أن المجلد FONT مخزن في مكان واضح و جلي.

و به ملفان، نجزم (من خلال الأرقام 10 و 12 في الأسماء) أن أحدهما متعلق بالخط الصغير و الآخر بالخط الكبير.

نقوم اذن باستخراج ملف الخط الكبير (الذي في اسمه 12) و نفتحه في الكريستال تايل.


الخط سيكون بلون واحد اذن من المحبذ استعمال أوضاع التايل التي بها أقل ألوان.

نستعمل Alt+الاتجاهات الى أن تتضح الصورة... نوعا ما.



لكن ما تلك النقاط المتتابعة فوق الحروف؟

من الحري بنا ألا نغيرها بتاتا لو أردنا رسم أشكال جديدة على هذه الحروف لدينا.

لأننا على الغالب قد نفسد ملف الخط اذا فعلنا ذلك.


نحن نعلم أن خطنا هذا متغير العرض.

أي أن لكل حرف عرض خاص به، فيكون عرض الحرف i أصغر من a الذي هو أصغر من w.


هل لتلك النقاط علاقة بعرض الحروف؟

لو ننظر للنقاط فوق نقطة التعجب و فوق a الصغيرة، فمع أنها نقاط بنفس الترتيب،

فعرض هذين الرمزين مختلف.

إذن نستنتج أن لا علاقة لهذه النقاط بعرض الحروف.

(ما يعني أن علينا البحث في مكان آخر في الروم عن مكان تخزين عرض الحروف

كي نغيره ليناسب الحروف العربية الجديدة!)

ما معنى تلك النقاط إذن؟

هذا أمر لا نحتاج أن نعلمه في الواقع لكنه قد يستحق التفكير فيه كي نتأكد أنه لا علاقة له بعرض الحروف.

لكن شكل هذه النقاط يذكرنا بالأعداد الثنائية:


______ = 000000 = 0

_____* = 000001 = 1

____*_ = 000010 = 2

____** = 000011 = 3

___*__ = 000100 = 4

___*_* = 000101 = 5

___**_ = 000110 = 6


هذا بالنسبة للنقاط فوق السبع رموز الأولى، و هي الفراغ و الرموز !"#$%&

بعبارة أخرى، هذه النقاط بمثابة ملاحظات كتبها المبرمج فوق كل حرف لترقيمه،

من 0، 1، 2... إلى 63 و التي هي الست نقاط المتتالية فوق الرمز (_) الذي تحت حرف O الكبير في الصورة أعلاه.


نحن الآن نستطيع أن نغير الخط، لكن لا يجب أن نلمس تلك النقاط بتاتا.

أي أننا سنرسم في حيز ارتفاع 12 بيكسل خطنا المعرب (من أصل ارتفاع 13 بيكسل الأصلي)،

ننسخ الخط الإنكليزي (بصفوف نقاطه) في برنامج صور،

و نلزق الخط العربي بالسطر بالسطر مع الحرص أن لا نلمس سطر بيكسلات النقاط.


لكن بالطبع قبل التفكير في هذا أصلا، يجب أن نحافظ على نسخة من الخط الانكليزي،

و نستعملها للبحث في الروم عن أين خزنت قيم عرض الحروف.


الآن سنلقي نظرة خاطفة على النص.

بعد تمرير عدة ملفات في الروم في Tinke على قارئ الهيكس المرفق به،

نكتشف أن ملفات النص، هي الأخرى مخزنة كل واحد منسوخا 5 مرات لكل اللغات الأوروبية في الروم.

نفتح إذن تحت مجلد ftc الملف overlay9_1 في برنامج الهيكس ب Tinke لرؤيته و ننزل.


على سبيل الملاحظة، ملفات overlay هذه هي ملفات فريدة من نوعها في رومات الدي اس،

نظرا أنها يمكن أن تشحن بسرعة أكبر في الذاكرة (حتى أن بعض الألعاب تعول حصريا عليها).

و من بين أهم هذه الملفات هو arm9 الذي به التطبيق الرئيسي للروم.

أحيانا تكون هذه الملفات مضغوطة بنوع ضغط خاص بها.

لكنه نوع معروف، و يمكن فك ضغطه.

و الأفضل من ذلك كله، يمكنك تغيير ملف في نفس المجلد في لعبة تضغط ملفات الأوفرلاي فيها،

كي تجبرها على استعمال ملفات غير مضغوطة، ما يسهل عليك مهمة الترجمة لاحقا بشكل كبير.

هذا الموضوع الشيق ربما أخوض فيه لاحقا بمزيد التفاصيل،

لكن حالتنا هذه فيها ملفات أوفرلاي غير مضغوطة ما يعني أنه لا داع للتعجل في الحديث عن هذا.


إذن ماذا نرى في الملف؟

هناك كلام بالإنكليزي لكن به عدة حروف ناقصة.



هل هو ملف مضغوط؟ كلا، الجمل تبدو و كأنها كاملة.

المشكل هنا لو تتذكرون الدروس الأولى، هو أن هذه اللعبة لا تستعمل ملف التيبل الصحيح،

أو بالأحرى لا تسند الحرف الصحيح لكل قيمة هيكس.

يمكنني من الصورة أعلاه أن أجزم أن هناك جملة Data has been saved

في هذا الملف. أقوم اذن باستخراجه عن طريق Extract.


و الآن، أتعامل مع هذا الملف المنفرد و كأنني أتعامل مع روم قديمة.

1/ أفتح الملف (و كأنه "الروم") في برنامج بحث نسبي (monkeymoore)

2/ ابحث عن كلمة Data من الجملة أعلاه

3/ أسجل التيبل الجزئي



4/ أفتح الملف (كأنه "الروم") و أفتح التيبل الجزئي في برنامج هيكس (Windhex)

5/ أقرأ النص في الملف و أكمل التيبل بالقيم الناقصة


6/ أستطيع أن أغش و ألقي نظرة على صورة الخط أعلاه و التي ستعطيني ترتيب الحروف أسرع لأكمل التيبل.

لاحظ أنني استعملت Shift+اتجاهات للحصول على 16 تايل في كل سطر ما يسمح لي بإيجاد القيم بسرعة

00=_

10=0

20=@

30=P

40=`

50=p

الخ... (طبعا بالنظام الست العشري، مثلا 1F=? ...)



لو نطبق ما رأيناه في الدروس السابقة، سنتوصل إلى تكوين ملف تيبل كامل.

نستطيع حينئذ تعديل النص في الملف في Windhex

و كالعادة لإعادته للروم ننقر فوق الملف overlay9_1 في Tinke و نضغط Change File.



لم يبق إلا اعداد جدول محول الحروف:

1/ تغيير الرموز في الخط الأصلي بالمحارف العربية

2/ تغيير ملف accdb في مجلد محول الحروف و وضع كل حرف عربي ماذا يقابله في الخط الأصلي

3/ فتح محول الحروف و فتح قاعدة البيانات accdb (التي يمكن أن تكون منها نسخة لكل لعبة)

4/ كتابة جملة عربية و نقر تحويل للانكليزية

5/ نسخ الجملة المحولة المكتوبة بالحروف الانكليزية

6/ لزقها في برنامج الهيكس في ملف النص


و التكرار لكل الجمل...

هل هناك طريقة أسهل بدل التكرار هكذا؟

يمكن القول، أن الجواب هو نعم، لكن هذا يتطلب أن نتعلم بخصوص أمرين (البوينتر و برامج استخراج النص)

و هذا أمر سيتأخر شرحه لوقت لاحق على الأرجح. العفو.


أمر وحيد لم نقم به الآن هو البحث عن قيم عرض حروف خط لعبة كاستلفانيا هذه،

قد أضيفه في مراجعة لاحقة لمحتوى هذا الدرس، لكن الطريقة لا تختلف عن التي سلف ذكرها،

فقط البحث عن سلسلة الهيكس سيكون على كامل الروم.



مثال ثالث – Phantom Hourglass The Legend of Zelda (نينتندو دي اس)


ا


مثال رابع – Parasite Eve (بلاي ستايشن 1)


ا