OpenTS2
OpenTS2 عبارة عن إعادة تنفيذ مفتوحة المصدر للعبة The Sims 2، باستخدام محرك اللعبة Unity. ويهدف أيضًا إلى توفير عدد من المكتبات المعيارية للعمل مع تنسيقات TS2 في بيئة C#.
تقدم
يتم حاليًا تنفيذ القائمة الرئيسية الأساسية مع منتقي الحي. يمكن معاينة معلومات الحي ويمكن الوصول إلى عرض الحي الأساسي.
شكر وتقدير
- InvertedTomato.CRC
- قارئ الصور TGA
- البرنامج المساعد لمؤشر الأجهزة
- مونشارب
- FreeSO
- DBPFSharp
- ناوديو
- نسبيكس
مشاريع مماثلة
- FreeSO - إعادة تنفيذ مفتوحة المصدر للعبة The Sims Online باستخدام C# وMonogame. يستعير OpenTS2 الكثير من التعليمات البرمجية والبنية من هذا المشروع.
- Las Marionetas - مشروع مشابه، يهدف إلى إعادة تنفيذ لعبة The Sims 2 عن طريق إجراء هندسة عكسية للكود الثنائي الخاص بها وتحويله إلى كود مصدر C/C++.
- SimUnity2 - محاولة سابقة لإعادة تنفيذ TS2 في محرك Unity. تم التخلي عنه ونجح بهذا المشروع.
- OpenTPW - إعادة تنفيذ مفتوحة المصدر لـ Sim Theme Park / Theme Park World.
- OpenRCT2 - إعادة تنفيذ مفتوحة المصدر للعبة Rollercoaster Tycoon 2.
رخصة
يخضع نموذج كود المصدر هذا لشروط ترخيص Mozilla العام، الإصدار 2.0. إذا لم يتم توزيع نسخة من MPL مع هذا الملف، يمكنك الحصول على واحدة على http://mozilla.org/MPL/2.0/.
تطوير
المتطلبات الأساسية
- Unity 2020.3.32f1 - يمكن العثور عليه ضمن "Unity 2020.x"، ويمكنك أيضًا تنزيل Unity Hub وتثبيته من هناك. إصدار Unity عرضة للتغيير، يرجى الانتباه لذلك!
- فيجوال ستوديو 2019
- نسخة من مجموعة The Sims 2 Ultimate Collection
يثبت
- يجب أن يكون لديك ملف "config.json" في المجلد الجذر الذي يوفر مسارات لتثبيت Sims 2 UC وأدلة المستخدم. انسخ الملف "config.example.json" وأعد تسميته إلى "config.json" للبدء، ثم اكتب المسارات الخاصة بك.
- في Unity، تأكد من تعيين Edit > Preferences > External Tools > External Script Editor على Visual Studio. افتراضيًا، يتم فتح الملفات بشكل منفصل بدلاً من فتحها في حل.
هيكل المشروع
نحن نتبع تخطيط مشروع Unity العادي باستثناء:
-
Assets/Scripts/OpenTS2
- تحتوي على الجزء الأكبر من كود C# الذي يتعامل مع تنسيقات وملفات TS2. -
Assets/Tests/OpenTS2/
- اختبارات الوحدة التي تتبع نفس بنية الدليل مثل مجلد Scripts
. -
Assets/Scenes/Test
- اختبارات ولكن أكثر على مستوى التكامل الذي يتضمن مشاهد الوحدة.-
Assets/Scripts/OpenTS2/Engine/Tests
- البرامج النصية للتحكم في الاختبارات المذكورة أعلاه.
اختبار
نستخدم حاليًا Unity Test Runner لرمز اختبار الوحدة. يمكن إجراء هذه الاختبارات داخل الوحدة من خلال علامة تبويب اختبار التشغيل أو إذا كنت تستخدم Rider كمحرر C# الخاص بك، فداخلها.