تحليل كامل لـ Retro Engine v4 والقوائم من Sonic 1 and 2 (2013).
بدون أصول من الإصدارات الرسمية، لن يتم تنفيذ عملية فك التجميع هذه.
يمكنك الحصول على الإصدارات الرسمية لـ Sonic 1 وSonic 2 من:
حتى لو لم تكن المنصة الخاصة بك مدعومة بالإصدارات الرسمية، فيجب عليك شراؤها أو تنزيلها رسميًا للحصول على الأصول (لا تحتاج إلى تشغيل الإصدار الرسمي، تحتاج فقط إلى أصول اللعبة).
إذا كنت تريد نقل ملفاتك المحفوظة من إصدار (إصدارات) الهاتف المحمول الرسمية، فإن مسار ملف Android السابق للأبد هو Android/data/com.sega.sonic1 or 2/SGame.bin
(قد تحتوي الإصدارات الأخرى على مسارات ملفات مختلفة ). انسخ هذا الملف إلى مجلد فك الترجمة بالاسم SData.bin
.
settings.ini
الذي تستخدمه اللعبة لتحميل كافة الإعدادات، على غرار ملف Sonic Mania.ESC
إذا كان ممكّنًا في التكوين.F12
والخطوة F11
والتصحيح السريع للأمام من Sonic Mania جميعها وتمكينها إذا تم تمكين devMenu
في التكوين.F1
بتحميل المشهد الأول في قائمة مرحلة العرض التقديمي (عادةً شاشة العنوان).F2
و F3
بتحميل المشهد السابق والتالي في قائمة المرحلة الحالية.F5
بإعادة تحميل المشهد الحالي، بالإضافة إلى جميع الأصول والبرامج النصية.F8
و F9
بتصور شاشة اللمس ومربعات إصابة الكائنات.F10
بتنشيط لوحة الألوان التي تعرض اللوحات الداخلية الثمانية للعبة في الوقت الفعلي.يستخدم هذا المشروع CMake، وهو نظام بناء متعدد الاستخدامات يدعم العديد من المترجمين والمنصات المختلفة. يمكنك تنزيل CMake هنا. (تأكد من تمكين ميزة إضافة CMake إلى مسار النظام أثناء التثبيت!)
من أجل استنساخ المستودع، تحتاج إلى تثبيت Git، والذي يمكنك الحصول عليه هنا.
استنساخ الريبو بشكل متكرر ، باستخدام: git clone --recursive https://github.com/RSDKModding/RSDKv4-Decompilation
إذا قمت بالفعل باستنساخ الريبو، فقم بتشغيل هذا الأمر داخل المستودع: git submodule update --init --recursive
للتعامل مع التبعيات، ستحتاج إلى تثبيت Visual Studio Community (تأكد من تثبيت Desktop development with C++
أثناء التثبيت) وvcpkg (تحتاج فقط إلى اتباع 1 - Set up vcpkg
).
بعد تثبيت هذه العناصر، قم بتشغيل ما يلي في موجه الأوامر (تأكد من استبدال [vcpkg root]
بالمسار إلى تثبيت vcpkg!):
[vcpkg root]vcpkg.exe install glew sdl2 libogg libvorbis --triplet=x64-windows-static
(إذا كنت تقوم بتجميع إصدار 32 بت، فاستبدل x64-windows-static
بـ x86-windows-static
.) أخيرًا، اتبع خطوات التجميع أدناه باستخدام -DCMAKE_TOOLCHAIN_FILE=[vcpkg root]/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_PREFIX_PATH=[vcpkg root]/installed/x64-windows-static/
كوسائط لـ cmake -B build
.
[vcpkg root]
بالمسار المؤدي إلى تثبيت vcpkg!x64-windows-static
بـ x86-windows-static
.قم بتثبيت التبعيات التالية: ثم اتبع خطوات التجميع أدناه:
sudo pacman -S base-devel cmake glew sdl2 libogg libvorbis
sudo apt install build-essential cmake libglew-dev libglfw3-dev libsdl2-dev libogg-dev libvorbis-dev
sudo dnf install make gcc cmake glew-devel glfw-devel sdl2-devel libogg-devel libvorbis-devel zlib-devel
sudo apk add build-base cmake glew-dev glfw-dev sdl2-dev libogg-dev libvorbis-dev
اتبع تعليمات إنشاء android هنا.
التجميع بسيط مثل كتابة ما يلي في دليل المستودع الجذر:
cmake -B build
cmake --build build --config release
سيتم تحديد موقع البناء الناتج في مكان ما في build/
اعتمادًا على نظامك.
تتوفر وسائط cmake التالية عند الترجمة:
-D[flag-name]=[value]
إلى نهاية أمر cmake -B build
. على سبيل المثال، للإنشاء مع ضبط RETRO_DISABLE_PLUS
على تشغيل، قم بإضافة -DRETRO_DISABLE_PLUS=on
إلى الأمر.RETRO_REVISION
: ما هي المراجعة المراد تجميعها. يأخذ عددًا صحيحًا، والإعدادات الافتراضية هي 3
(الأصول).RETRO_DISABLE_PLUS
: ما إذا كان سيتم تعطيل Plus DLC أم لا. يأخذ قيمة منطقية (تشغيل/إيقاف): يمكنك البناء on
عند التجميع للتوزيع. الإعدادات الافتراضية off
.RETRO_FORCE_CASE_INSENSITIVE
: يفرض عدم حساسية حالة الأحرف عند تحميل الملفات. يأخذ قيمة منطقية، ويوضع افتراضيًا على off
.RETRO_MOD_LOADER
: تمكين أو تعطيل أداة تحميل التعديل. يأخذ قيمة منطقية، ويتم تعيينه افتراضيًا on
.RETRO_NETWORKING
: تمكين أو تعطيل ميزات الشبكة المستخدمة لوضع 2P VS الخاص بـ Sonic 2. يأخذ قيمة منطقية، ويتم تعيينه افتراضيًا on
.RETRO_USE_HW_RENDER
: لتمكين عارض الأجهزة الذي تستخدمه القائمة الرئيسية وواجهة مستخدم عناصر التحكم باللمس. يأخذ قيمة منطقية، ويتم تعيينه افتراضيًا on
.RETRO_ORIGINAL_CODE
: يزيل أي رمز مخصص. لن يتم إنشاء لعبة قابلة للعب مع تمكين هذا. يأخذ قيمة منطقية، ويوضع افتراضيًا على off
.RETRO_SDL_VERSION
: قم بتغيير هذا فقط إذا كنت تعرف ما تفعله. التبديل بين استخدام SDL1 أو SDL2. يأخذ عددًا صحيحًا إما 1
أو 2
، ويكون الإعداد الافتراضي هو 2
. اتبع تعليمات التثبيت في الملف التمهيدي لكل فرع.
ونظرًا لأن هذه الفروع غير رسمية، فلا يمكننا تقديم الدعم لها وقد لا تكون محدثة.
الأنظمة الأساسية المدعومة حاليًا هي تلك المذكورة أعلاه، ومع ذلك تستخدم الواجهة الخلفية libogg وlibvorbis وSDL2 لتشغيلها (بالإضافة إلى tinyxml2 لواجهة برمجة التطبيقات mod وasio للشبكات)، وبالتالي فإن قاعدة التعليمات البرمجية متعددة المنصات للغاية. إذا كنت قادرًا على ذلك، يمكنك استنساخ هذا الريبو ونقله إلى منصة غير موجودة في القائمة.
يتطلب الخادم المتعدد اللاعبين إصدار Python 3.8 أو إصدار أحدث. يمكنك تحميل بايثون هنا. لاستخدام الخادم، افتح موجه الأوامر في المجلد الذي يوجد به Server.py، ثم قم بتشغيل الأمر py -3 Server.py [local IPv4 address] [port] debug
. يمكنك العثور على عنوان IPv4 المحلي الخاص بك باستخدام الأمر ipconfig
. لاحظ أن خادم C++ الموجود في مجلد Server
قد تم إهماله ولم يعد يعمل. وقد تم الاحتفاظ به في الريبو لأغراض مرجعية.
يمكنك العثور على الأسئلة الشائعة هنا.
انضم إلى Retro Engine Modding Discord Server لأية أسئلة إضافية قد تحتاج إلى معرفتها حول عملية فك التجميع أو التعديل.