نزّل حزمة تطوير Unreal
المتطلّبات
- Unreal Engine 5.5
- مشروع C++. أما المشاريع القائمة على Blueprint فقط فتحتاج إلى تثبيت سلسلة أدوات C++ لبناء الإضافة.
الإعداد
ثبّت الإضافة
Plugins/ في مشروعك، بحيث يصبح لديك YourProject/Plugins/FlockUnrealSdk/.ثم انقر بالزر الأيمن على ملف .uproject واختر Generate Visual Studio project files، وأعِد
البناء. والإضافة مُفعَّلة افتراضيًا — تحقّق من ذلك في Edit → Plugins → Online Platform →
Flock SDK.اضبط الإعدادات
DefaultGame.ini الخاص بمشروعك.اترك الإصدار يُخبز
أول استدعاء لك
تهيّئ الحزمة نفسها تلقائيًا مع لعبتك، فليس هناك ما تبدأه. سجّل دخول لاعب، ثم اقرأ شيئًا في المقابل.
سجّل الدخول عند BeginPlay، ثم اقرأ سجل اللعبة — بلا طرف Target في أيٍّ من العقدتين.
التهيئة
خيار Auto-Initialize On Load مُفعَّل افتراضيًا، لذا يكونUFlockSubsystem قيد التشغيل قبل
BeginPlay. ولتأجيل ذلك إلى ما بعد شاشة البداية أو اتفاقية الترخيص، عطّله واستدعِ
InitializeFromSettings() بنفسك.
ولأن التهيئة تقرأ معرّف إصدار مخبوزًا، فهي متزامنة ولا تُجري أي اتصال بالشبكة — فتبدأ لعبتك دون
اتصال تمامًا كما تبدأ مع الاتصال.
صادِق لاعبًا
البريد الإلكتروني، ومعرّف الجهاز، وGoogle، وApple، وSteam، وFacebook، وDiscord. تستبدل الحزمة بيان الاعتماد الذي أنتجته حزمة تطوير المنصة لديك بجلسة Flock، وتخزّن الرموز مشفَّرة بين مرات التشغيل، وتستعيد الجلسة تلقائيًا عند الإقلاع، وتجدّد رموز الوصول المنتهية بصمت.
تسجيل الدخول والتسجيل استدعاءان منفصلان — فالتسجيل لا يسجّل دخول اللاعب.
اعمل مع بيانات لعبتك
نقرة واحدة في القائمة تحوّل قوالب واجهتك الخلفية وإعداداتها ومتاجرها إلى عقد مُحدَّدة الأنواع. Tools → Flock → Sync Schemas — بلا C++، وبلا سلسلة أدوات، وبلا خطوة بناء.
يولّد Tools → Flock → Sync Schemas ملفات مُحدَّدة الأنواع من مخطّطاتك أنت.

تجلب Get Gameplay وتحوّل وتُعيد بنية مُحدَّدة الأنواع — فكّكها للحصول على أطراف حقيقية.
Get ← Set members in struct من المحرّك ← Save:

تُعيد Get معرّف الصف إلى جانب البنية، لأن Save يحتاج إليه.
Get.

التأشير على عضو يُظهر طرفه — والأعضاء غير الملموسين يبقون كما كانوا تمامًا.

اشترِ باختيار العنصر — فالمعرّف مخبوز ولا يمكن أن تخطئ في كتابته.
تفضّل C++؟
بدّل Codegen Target إلىC++ فتُصدِر المزامنة وحدة مُولَّدة بدلًا من ذلك — USTRUCT لكل قالب
وإعداد، وUENUM لكل مجموعة معرّفات، وسطح استدعاء مُحدَّد الأنواع.

يحدّد Codegen Target ما تُصدِره المزامنة. وBlueprint هو الافتراضي.
BlueprintType، فتظل
الرسوم ترى أنواعك بعد التبديل.
استكشف الميزات
اللاعبون والمصادقة
بيانات اللاعب
المتاجر والمخزون
الإعدادات عن بُعد
التحليلات والأحداث
الإعدادات المتقدّمة
يضبط Project Settings أيضًا التحليلات، وإعادات محاولة HTTP، وذاكرة وضع عدم الاتصال، ومسارات توليد الشيفرة. والقيم الافتراضية معقولة — فلا تغيّرها إلا عند الحاجة. وتفعيل Enable Debug Logs يتتبّع كل اتصال بالشبكة ضمن الفئةLogFlock، ويذكر كل سطر مصدر
الاستدعاء لتميّز رسم Blueprint من شيفرة C++:
التخزين المؤقّت دون اتصال
تُخزَّن قراءات الإعدادات واللعبة وفهرس المتجر وقوالب اللاعبين مؤقتًا على القرص، ضمن نطاق إصدار لعبتك، وتُقدَّم عند تعذّر الوصول إلى الخادم — إذ يُجرَّب الخادم أولًا دائمًا، ولا توجد مدد صلاحية. أما عمليات الكتابة على بيانات اللاعب فتُصفّ في طابور عند انقطاع الاتصال وتُعاد تلقائيًا عند عودته. أما منح العملات فلا يُصفّ أبدًا: إذ يفشل المنح بدل أن يُصفّ، ولا يُعاد إرساله إطلاقًا بعد إخفاق غامض، فلا يمكن أن يُقيَّد مرتين.معالجة الأخطاء
يردّ كل استدعاء بقيمةTFlockResult<T> بدل أن يرمي استثناءً — فـUnreal تُبنى مع تعطيل الاستثناءات.
تحقّق من bSuccess، ثم اقرأ Value أو Error.
Error نفسه، وتحوّله
UFlockErrorLibrary إلى نص للعرض أو إلى تحقّق من خطأ مُرمَّز دون مطابقة نصوص.