ModsBeforeFriday هي أداة تعديل لـ Beat Saber on Quest والتي تعمل بالكامل داخل المتصفح، باستخدام WebUSB للتفاعل مع المهمة. الهدف هو جعل تثبيت التعديلات أمرًا سهلاً قدر الإمكان، دون الحاجة إلى تنزيل أدوات خاصة أو البحث عن التعديلات الأساسية.
يحتوي MBF على بعض معلمات الاستعلام التي يمكن تمريرها باستخدام عنوان URL. تعد هذه مفيدة لمطوري التعديلات عند اختبار التعديلات الأساسية قبل إصدارها رسميًا.
?dev=true
: سيؤدي هذا إلى تجاوز التحقق من الإصدار العادي، ويطالب المستخدم دائمًا بتصحيح لعبة Beat Saber المثبتة حاليًا. ملاحظة: إذا لم تكن مطورًا، فلن يساعدك ذلك. كل ما يفعله هو السماح بتثبيت برنامج modloader، ولا يجعل الإصدار الجديد يدعم التعديلات بشكل سحري، واستخدام هذا لن يؤدي إلا إلى منعك من خفض مستوى Beat Sabre. هذا ليس "الحصول على تعديلات فقط".?setcores=prompt
: سيطالب هذا المستخدم بإدخال عنوان URL بديل للتعديلات الأساسية لاستخدامه لاختبار ما إذا كان التعديل الأساسي JSON جاهزًا للإصدار. سيتم بعد ذلك تخزين عنوان URL هذا في معلمة الاستعلام لتحديثات الصفحة في المستقبل. ./mbf-agent
على الوكيل، وهو ملف قابل للتنفيذ مكتوب بلغة Rust ويتم تنفيذه بواسطة الواجهة الأمامية عبر ADB. يقوم هذا الوكيل بكل العمل تقريبًا، بما في ذلك تثبيت التعديلات وتصحيح اللعبة../mbf-agent-wrapper
هو برنامج نصي بلغة Python يمكن استخدامه لاستدعاء الواجهة الخلفية لـ MBF من خلال واجهة سطر الأوامر، وهو مفيد للمطورين أو كارهي Chromium../mbf-adb-killer
هي أداة مساعدة للتطوير تعمل على إيقاف أي خادم ADB قيد التشغيل عندما تحاول الواجهة الأمامية الاتصال بمهمتك، وبالتالي تجنب التعارضات بين MBF والتطبيقات الأخرى أثناء التطوير فقط. ../mbf-res-man
على مشروع إدارة موارد MBF، والذي يحتوي على التعليمات البرمجية التي تستخدمها MBF للوصول إلى الموارد الخارجية مثل التعديلات الأساسية، ولكن أيضًا لتحديث مستودعات الموارد الخاصة بها، على سبيل المثال MBF Diffs كلما تم إصدار إصدار جديد من Beat Saber../mbf-zip
هي مكتبة بسيطة لقراءة/كتابة ملفات ZIP (وتوقيع ملفات APK) التي يستخدمها mbf-agent
../mbf-site
على الواجهة الأمامية التي تتواصل مع الوكيل عبر JSON. (مكتوب بخط مطبوع باستخدام React). تثبيت الهدف aarch64-linux-android:
$ rustup target add aarch64-linux-android
ANDROID_NDK_HOME
على المجلد الذي يحتوي على Android NDK الخاص بك.CC_aarch64-linux-android
على $NDK_PATH/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android31-clang.cmd
حيث يكون $NDK_PATH
هو مسار جذر Android NDK.AR_aarch64-linux-android
على $NDK_PATH/toolchains/llvm/prebuilt/windows-x86_64/bin/llvm-ar.exe
.(إذا كنت تستخدم نظام تشغيل آخر، فقد تكون المسارات مختلفة قليلاً. يرجى تحديث المسارات حسب الضرورة!)
قم بإنشاء ملف جديد بالمسار ~/.cargo/config.toml
. قم بإضافة المحتويات التالية، مع استبدال
بمتغير البيئة ذي الصلة.
[ target . aarch64-linux-android ] linker = "" ar = ""
public
بحيث يمكن استخدامه بواسطة الموقع، قم بتشغيل ./build_agent.ps1
. لخدمة الموقع للاختبار، انتقل إلى ./mbf-site
وقم بتشغيل yarn start
. (قد تحتاج إلى yarn install
أولاً).