وحدة البطولة والمهمة: الأحداث والتصنيفات والجوائز
1) أهداف الأعمال وأنواع الأنشطة
الأهداف: عقد النمو (D1/D7)، ARPPU، وزيادة عمق الجلسة، وتعزيز الألعاب والأسواق الجديدة.
النماذج:- البطولات: بمقدار النقاط/الانتصارات/المضاعفات، سباقات السرعة (30-60 دقيقة)، النهار، الموسمية.
- المهام/المهام: تسلسلات المهام (العب N spins، اربح X، جرب مزود Y)، مع التقدم ومكافآت المرحلة.
- لوحات الصدارة: عالمية، حسب الأسواق/الألعاب/الرهانات، خاصة (الأصدقاء/كبار الشخصيات).
- تقييمات الجوائز الكبرى/الاستوديو: «أفضل مزودي الأسبوع»، «ابحث عن مضاعف».
KPI: المشاركة ≥ 12-25٪ من الجمهور النشط، حصة الدخل من العرض الترويجي 10-20٪، الشكاوى <0. 5٪ من المشاركين، مجموعة الجوائز ≤ الخطة الصادرة.
2) البنية وتدفق البيانات
المكونات
1. بوابة الأحداث → استقبال أحداث اللعبة (الدوران، الرهان، الفوز، round_end) من بوابة اللعبة/مقدمي الخدمات.
2. Rules Engine → تطابق الأحداث على قواعد البطولات/البعثات، نقاط الجوائز (الخصوصية).
3. تقوم خدمة Leaderboard → بتجميع النقاط والمتاجر/الشرائح وتدعم الفرز وفواصل التعادل.
4. دائرة التقدم (البعثات) → حالة المهام/المراحل، وإصدار قرارات التحكيم المؤقتة.
5. خدمة المكافآت → تسوية والدفع الآمن (عبر المحفظة: نقدًا/مكافأة/fs/points).
6. Admin/Studio UI → الإبداع والتخطيط ومعاينة الاقتصاد والمحاكاة.
7. Realtime/WS → نشر تحديثات مجلس القيادة والتقدم والإخطارات.
8. حدود → مكافحة إساءة الاستخدام، إشارات المخاطر، التكامل مع مدير مكافحة الاحتيال/الروبوت.
9. التخزين/التخزين المؤقت → KV/Redis للقمم الساخنة، OLTP للحقائق، DWH للتحليلات.
تيار (e2e)
'game _ event event gateway
3) نموذج الحدث (المجالات الدنيا)
جسون
{
«event_id": «e_9f2,» «ts»: «2025-10-23T17:41:26Z,» user_id": «u_123, «» السوق «:» DE «،» العلامة التجارية «:» X «،» game «: {» id «: «g _ 77»،» مزود «: «PragmaticPlay «،» type «: «slot»}،» bet «: {» مبلغ _ طفيف «: 100،»، «عملة»:» EUR»}, «win»: {«quant _ minor»: 250, «multiplier»: 2. 5}, «round': {» id «:» r _ abc «,» status «:» ended «},» device «: {» platform': «mobile», «asn':» mno «},» trace_id": «t_..»
}النقل - كافكا/HTTP، المعالجة الخفية (التخلص من 'event _ id')، توقيع المزود/بوابة اللعبة (HMAC).
4) قواعد البطولة ومصمم المهام
مخطط إعلاني (مثال YAML):yaml id: t_october_sprint window: {start: 2025-10-25T18:00Z, end: 2025-10-25T19:00Z, tz: Europe/Kyiv}
النطاق:
الأسواق: [DE، SE]
مقدمو الخدمات: [PragmaticPlay، Hacksaw]
تسجيل:
الصيغة: "نقاط = دقيقة (فوز. المبلغ/الرهان. الكمية، 50) 100» # مضروبة في min_bet_minor: 50 eligible_games: [«g _"]
لوحة المتصدرين:
النوع: "best_n_rounds" # تلخيص أفضل جولات N n: 20 الشوط الفاصل: ["أعلى _ فردي _ مضاعف"، "أقدم _ النهاية _ ts']
المكافآت:
المجمع: {العملة: اليورو، total_minor: 1000000}
التوزيع: «سلم» # سلم، أفضل 100 anti_abuse:
min_round_duration_ms: 800 max_rps_per_user: 0. 5 exclude_asn_categories: [«استضافة»، «وكيل»]يامل mission_id: خطوات m_halloween:
- id: s1 goal: {type: «spin_count,» game_type: «slot», count: 50}
المكافأة: {نوع: «freespins'، القيمة: 10، اللعبة:» g_66"}
- المعرف: الهدف s2: {النوع: «win_multiplier,» دقيقة: 10}
المكافأة: {النوع: «المكافأة»، amount_minor: 500}
completion_reward: {نوع: «نقاط»، المبلغ: 1000}5) التصنيفات وخوارزميات الحساب
النماذج الرئيسية
مجموع النقاط: خطي/لوغاريتمي/مع غطاء لكل جولة.
أفضل جولات N: يخفض الدفع مقابل الطحن، ويحافظ على زخم العدو.
المضاعف الأقصى (xWin): تطبيع العملات والأسعار.
MMR/نظام التصنيف: ELO مثل PvP/جداول المنافسة الودية.
فواصل التعادل
1. 'highest _ single _ multiplier' → 2) 'minest _ rounds' → 3)' alterest _ final _ ts' → 4) 'user _ id' معجميا (ثابت في القواعد).
الأداء
قم بتخزين أعلى K (على سبيل المثال، 10k) في Redis Sorted Set' عضو النتيجة الرئيسي ZADD ".
للحصول على «أفضل جولات N»: احتفظ بكومة دقيقة لأحدث N لكل مستخدم وكمية، قم بالتحديث أثناء الطيران.
لقطة دورية (كل 30-60 ثانية) في OLTP/object.
6) المكافآت والمدفوعات
أنواع الجوائز: النقد/المكافأة/الدوران المجاني/النقاط/العناصر/التذاكر.
القواعد:- الإصدار فقط بعد الانتهاء (نافذة الاستئناف 5-10 دقائق).
- تتم جميع المدفوعات من خلال خدمة المكافآت → محفظة (دفتر الأستاذ): الدخول المزدوج، والغباء بواسطة «المكافأة _ الهوية».
- بالنسبة للمراحل المتوسطة من البعثات - إصدار التعويضات «الميسرة» (FS/points)، النقدية - في نهاية السلسلة.
- CCM/لعبة مسؤولة: عند حجب حساب، احتفظ بالجائزة/جمدها حتى يتم التحقق منها.
- السلم الثابت: درجات محددة سلفا (المركز الأول 30%، 20% الثاني،...).
- النسبية: حصة من المجموعة بالنقاط، ولكن مع سقف على الفور.
- على أساس التذاكر: تمنح البعثات «تذاكر» بالاعتماد على التذاكر (RNG شفاف).
7) مكافحة الإساءة والصدق والامتثال
مرشحات الأهلية: الحد الأدنى للرهان/مدة الجولة، استبعاد «0-bet»، إعادة الشقوق المتكررة، «الرهانات الصغيرة» في طور الإعداد.
إشارات الروبوت: مقطوعة الرأس، تردد غير طبيعي، RPS مستقرة بشكل غير طبيعي، ASN بالوكالة → تحديات مخفية/نظارات متجمدة.
Dedup/idempotency: events by 'event _ id', accurals by 'score _ id'.
مسار التدقيق: لقطات لوحة المتصدرين، البذور RNG (لسحب التذاكر)، إصدار القواعد، تجزئة الحساب.
القانون: القواعد/القيود المفروضة على الأسواق والعمر والاستبعاد الذاتي.
8) اقتصاديات البطولة
حواجز حماية الميزانية: الحد الأعلى للمسبح + «صمام الأمان» الديناميكي (تقليل المكافآت الوسيطة عند ارتفاع درجة الحرارة).
المرونة: تحويل المكافآت إلى نقاط/خدمات مالية بدلاً من النقد للاحتفاظ بالهامش.
نسب الاسترداد: مجموع الجوائز/الإيصالات من قطاع ألعاب البطولة ؛ الهدف 8-15٪.
محاكاة في لوحة الإدارة: تشغيل الأحداث التاريخية → توقعات المدفوعات/المشاركة.
9) عقود API (مبسطة)
احصل على بطولات/مهام نشطة
http
GET/v1/المسابقات ؟ السوق = DE & brand = X
→ 200 [{«id»: «t _ october _ sprint',» start «:»..., «end':»..., «type»: «xwin», «status»: «live»}]حدث اللعبة (ابتلاع)
http
POST/v1/الأحداث
{«event _ id»:» e _ 9f2»، «... «: «... «}
→ 202 {«مقبول»: صحيح}لوحة المتصدرين (أعلى K وموقع المستخدم)
http
GET/ v1/leaderboards/t_october_sprint ؟ أعلى = 100 & me = u _ 123
→ 200 {«top»: [{«pos': 1،» user «:» u _ 9 «،» score «: 18400}،...]،» me «: {» pos': 342، «score»: 5600، «delta»: + 200}}التقدم المحرز في المهمة والمكافأة
http
GET/ v1/missions/m_halloween/progress ؟ المستخدم = u _ 123
→ 200 {«خطوات «: [{«معرف «: «s1 «، «تم «: صحيح}، {«معرف «:» s2»،» تم»: خطأ}]،» مكافأة _ جاهزة»: صحيح}
POST/v1/المكافآت/المطالبة
{«سياق «: «مهمة «، «هوية «:» m _ halloween»،» خطوة»:» s1»}
→ 201 {«وضع «: «منح «، «مكافأة _ معرف»:» rw _ 77»}10) التخزين والتحجيم
الطريق الساخن: Redis (مجموعات مرتبة/هاش) للقمم والتقدم ؛ TTL للمفاتيح "الصاخبة"، والشحن بواسطة "contest _ id'.
صحيح: OLTP (Postgres/MySQL) - حقائق النقاط/التقدم/الدفع (لقطات WORM).
قوائم الانتظار: كافكا - تدفق الأحداث ؛ مجموعات المستهلكين حسب المنطقة/العلامة التجارية.
المخابئ: TTL 1-5 s قصيرة ؛ إعادة التصديق على القمم العامة (عبر CDN).
WebSocket: مجموعة/تجمع منفصل للرسائل البريدية ذات الوقت الحقيقي والدفعة والحد الأقصى للمعدل.
11) إمكانية الرصد ومراقبة الجودة
SLI/SLO:- 'leaderboard _ update _ latency _ p95 ≤ 250мс'
- 'events _ interst _ success ≥ 99. 9%`
- 'مكافآت _ منحة _ نجاح ≥ 99. 9%`
- 'ws _ push _ rtt _ p95 ≤ 120мс'
- شكاوى الظلم <0. 5٪ من المشاركين.
- ومعدل الأحداث/المشاركين، واللاعبين الفريدين، والتوزيع حسب الرهان/الألعاب، والمضاعف المتوسط ؛ «grant _ rors'،» dedupe _ hits'.
- المسارات: تستوعب قواعد → → تسجل → تحديث LB → مكافأة ؛ "contest _ id'، علامات" rule _ id ".
- الجذوع: JSON مع 'trace _ id'، حظر PII ؛ WORM للتدقيق.
12) الحوادث وكتيب التشغيل و (مختصر)
ألف - تأخر مجلس القيادة (تأخر أكثر من 2 ثانية)
الإجراءات: زيادة مستهلكي كافكا، وتقليل «المفتاح الساخن» للحزب (التعويض)، وتمكين تحديث الدفعات.
مؤقت: تجميد الرسوم المتحركة في الوقت الحقيقي، إظهار «تأخير ~ 1-2s».
باء - أخطاء الجوائز
الإجراءات: إيقاف «المنحة» الجديدة، والتحقق من اللقطة، وإعادة تشغيل «المنحة» بحماسة ؛ تحديث الحالة في الردهة.
جيم - الارتفاع المفاجئ في الإساءة (بالوكالة ASN)
الإجراءات: تعزيز الأهلية، وتمكين التحدي غير المرئي، وتجاهل نقاط الجلسات المشكوك فيها مؤقتًا، والتحقق اللاحق.
13) UX والتوطين
الوقت الفعلي: مؤشر «مباشر»، دلتا سلسة للنقاط والموقع والمسافة إلى المكان التالي.
القواعد الشفافة: الوصول إلى الصيغة/الشوط الفاصل/القيود.
الإشعارات: «5 دقائق متبقية»، «أنت في أفضل 50»، «المكافأة متاحة».
التوطين/النصوص القانونية: حسب السوق والمناطق الزمنية (أوروبا/كييف ومواقع المشاركين).
14) الأمن والخصوصية
الأسماء المستعارة للاعبين على القمم العامة ؛ أخفي PII افتراضيًا.
التوقيعات على الحواسيب الشبكية/الأحداث، نظام التحليلات النقدية ؛ الحماية من «السم المخبأ» على الحافة.
واجهة برمجة التطبيقات ذات الحد الأقصى للمعدل، وحماية خبأ التخزين المؤقت، والتحكم في «الخصوصية _ المفتاح».
اللائحة العامة لحماية البيانات: الاحتفاظ بالحدث، والحق في حذف (إخفاء الهوية) دون الإضرار بالمراجعة.
15) الاختبارات والمحاكاة
إعادة الأحداث التاريخية للتحقق من القواعد والاقتصاد.
التحميل: انفجارات 30-120 ثانية قبل البداية ؛ نقع 2-4 ساعات.
الممتلكات: الثوابت («مقدار التعويضات الصادرة ≤ الميزانية»، «تحديد التعادل»).
ألف/باء: صيغ مختلفة للتسجيل، وعمق السلم، وشكل البعثة.
16) قائمة مرجعية لاستعداد الإنتاج
- القواعد الإعلانية (النسخ والتوقيعات)، جهاز محاكاة الاقتصاد.
- الخصوصية: 'event _ id', 'score _ id', 'reward _ id'; Inbox/Outbox.
- تم تحديد فترات التعادل في القواعد، وفرز الحتمية.
- لوحات المتصدرين: أعلى K في Redis + لقطات ؛ مضاد للعاصفة (رعشة، اندماج).
- مكافحة إساءة الاستخدام: الأهلية، الروبوتات/ASN، حدود السرعة.
- المكافآت → المحفظة عبر الدخول المزدوج ؛ شيك KYC قبل النقد.
- إمكانية الرصد: SLI/SLO، لوحات القيادة، التنبيهات ؛ تدقيق WORM.
- DR/Failover: multi-AZ، نسخ احتياطية/استعادة، نص «تجميد وإنهاء».
- التوطين والتراخيص والقواعد العامة والموافقة.
- Runbook 'و on lag/werrors gant/burst rots، أنماط الاتصال.
ملخص السيرة الذاتية
الوحدة الناجحة للبطولات والمهام هي حافلة الأحداث + القواعد الحتمية + لوحات المتصدرين السريعة + المدفوعات الآمنة. أضف شوطًا فاصلًا صارمًا، ومكافحة إساءة الاستخدام، ومحاكي الاقتصاد، وإمكانية ملاحظة SLO، وحافظ على جميع العمليات غبية وقابلة للتدقيق - وستحصل على أداة تزيد من المشاركة والإيرادات دون الجدال مع اللاعبين والمنظمين وفريق الدعم.
