Jiss Tech
أيقونة تطبيق TimeStop

دراسة حالة · لعبة خفيفة على Android

من فكرة لعبة إلى قوائم ترتيب عالمية

TimeStop لعبة من تطوير جيس تك تعتمد بالكامل على إحساسك الداخلي بالوقت: تختفي الساعة، فتعد الثواني في ذهنك، وتقيّم اللعبة لحظة إيقافك بدقة الملّي ثانية. صُممت وبُنيت وأُطلقت على Google Play داخل فريقنا.

متاح على Google Playتقييم بدقة الملّي ثانيةقوائم ترتيب عالمية

تحدي العمل أو المنتج

لعبة تتمحور حول الملّي ثانية لا يمكنها التهاون في قياسها.

تعتمد فكرة TimeStop على قياس مدة قصيرة بصورة متسقة. يسجل مؤقّت Stopwatch رتيب التقدم المدة المنقضية قبل عرض حالة النتيجة، حتى لا تحدد الرسوم المتحركة أو تأخيرات الشبكة النتيجة.

وحول هذا الأساس توجد كل مقومات لعبة تنافسية مباشرة: قوائم ترتيب عالمية تتحدث مع لعب المستخدمين، وتحديات يومية وأسبوعية مشتقة من تواريخ التوقيت العالمي UTC، ورموز مواجهة تربط لاعبين عبر قناة لحظية، ونظام تقدم يحافظ على جاذبية لعبة ذات آلية واحدة عبر ٤٥ مستوى.

نبذة عن المنتج

آلية واحدة، هُندست لتستحق الإتقان.

تقييم بدقة الملّي ثانية

تختفي الساعة، فتعد الثواني في ذهنك، ويُقيَّم توقيت إيقافك بدقة الملّي ثانية. لا سرعة رد فعل ولا حظ؛ فقط إحساسك الداخلي بالوقت، يُقاس بصدق.

تحديات يومية وأسبوعية

يحصل الجميع حول العالم على التحدي نفسه ومحاولة واحدة. وتجعل قوائم الترتيب العالمية جولة من ثانيتين تستحق العودة كل يوم.

مواجهات فردية

شارك الرمز، واحصل على الهدف نفسه، وقارن النتائج عبر قناة لحظية مؤقتة.

٤٥ مستوى في ٥ عوالم

يحوّل مسار تقدم يضم تقييمات بالنجوم وسمات قابلة للفتح آلية واحدة إلى لعبة تمنحك أهدافًا تواصل السعي إليها.

شاشة TimeStop الرئيسية مع التحديات اليومية والأسبوعية والمواجهات والمستويات
نتيجة التحدي اليومي في TimeStop وترتيبها في قائمة المتصدرين العالمية
شاشة اختيار المستويات في TimeStop تعرض العوالم وتقييمات النجوم
شاشة المواجهة في TimeStop لتحدي صديق باستخدام رمز مشترك

البنية التقنية المتحقق منها

حلقة لعبة محلية أولًا مع واجهة خلفية صغيرة ومركزة في الوقت الفعلي.

يحافظ TimeStop على دورة اللعب الدقيقة والتقدم داخل الجهاز. تقيس ساعة Dart Stopwatch ذات الزمن المتزايد رتيبًا الجولات، ويحفظ SharedPreferences الحالة المجهولة والمحاولات غير المتزامنة، ويخزن Supabase نتائج لوحات المتصدرين اليومية والأسبوعية، ويوفر Supabase Realtime قنوات بث وحضور مؤقتة للمبارزات الفردية.

جارٍ عرض البنية التقنية المتحقق منها…

التقنيات

التقنيات المستخدمة، دون حشو السيرة الذاتية.

ترتبط كل تقنية أدناه بالشيفرة المصدرية للمشروع التي خضعت للمراجعة، وليس بقائمة عامة لقدرات الشركة.

التطبيق

FlutterDarthooks_riverpodgo_routerحلقة لعبة مخصصة

التوقيت والحالة

Dart StopwatchDurationSharedPreferencesمزامنة تبدأ محليًا

الواجهة الخلفية

Supabase Flutterجداول PostgRESTSupabase Realtimeوقت الخادم

المنافسة

لوحة المتصدرين اليوميةلوحة المتصدرين الأسبوعيةالمبارزات في الوقت الحقيقيمعرفات UUID مجهولة

العمليات

Sentry Flutterتتبّع بعيناتبيئات الإصدار

توزيع

Google Mobile Adsإعلانات بمكافأةحزمة أندرويد موقعةGoogle Play

القيود

المتطلبات التي كان على النظام الالتزام بها

  • يجب أن تأتي النتيجة الأساسية من ساعة ذات زمن متزايد رتيبًا لا تتأثر بتغيير ساعة الجهاز، لا من توقيت رسوم الواجهة المتحركة أو تغير الوقت الفعلي.
  • يجب الاحتفاظ بالمحاولات اليومية والأسبوعية عند بدء اللعب دون اتصال أو فشل إرسال النتيجة، دون منح محاولة محلية ثانية.
  • يجب أن تعمل المنافسة العالمية واللعب 1 ضد 1 دون مطالبة المستخدمين بإنشاء حسابات أو تقديم بيانات هوية شخصية.

الحل

القرارات الهندسية التي تلبي هذه القيود

  • ضبط كل جولة باستخدام ساعة Dart Stopwatch ذات الزمن المتزايد رتيبًا، مع فصل ظهور الواجهة عن المدة المنقضية الفعلية.
  • اشتق الأهداف اليومية والأسبوعية بشكل حتمي من تواريخ UTC بحيث يتلقى العملاء نفس التحدي دون جلب التكوين المستهدف.
  • حفظ المحاولات والتقدم والإعدادات والإحصاءات والإنجازات والقلوب محليًا، ثم مزامنة نتائج لوحة المتصدرين عند توفر Supabase.
  • استخدم قنوات الوقت الفعلي سريعة الزوال لبدء المبارزة والحضور والنتائج مع الحفاظ على المنافسة طويلة المدى في الجداول اليومية والأسبوعية.

التحديات الهندسية

القياس قبل العرض

تلتقط وحدة التحكم الوقت المنقضي لساعة الإيقاف قبل عمل حالة النتيجة، ثم تستمد فرق المللي ثانية المعروض من المدة المقاسة.

اجعل المنافسة محلية أولاً

يتم حفظ المحاولات محليًا قبل إرسال Supabase، ويتم عرض لوحات الصدارة المخزنة مؤقتًا على الفور، ويمكن إعادة محاولة عمليات الإرسال الفاشلة لاحقًا.

إنشاء لعب آني دون حسابات

يحدد UUID الذي تم إنشاؤه واسم العرض اللاعب بينما تستخدم القنوات المبارزة المكونة من ستة أحرف البث والتواجد في الوقت الفعلي بدلاً من ملفات تعريف المستخدمين المخزنة.

تكامل الأنظمة

أنظمة خارجية ذات وظائف محددة

  • الوصول إلى جدول Supabase لتقديم وقراءة لوحة المتصدرين يوميًا وأسبوعيًا.
  • Supabase البث والتواجد في الوقت الفعلي لغرف المبارزة 1 ضد 1 سريعة الزوال.
  • Sentry Flutter لتقارير الأعطال ووسوم البيئات والتتبّع بعينات.
  • إعلانات Google للجوال لتدفقات الإعلانات القياسية والإعلانات بمكافأة.
  • Google Play لإصدار Android المنشور.

الموثوقية والأمن

الضوابط الظاهرة في الشيفرة المصدرية

  • يستخدم محرك التوقيت ساعة Stopwatch ذات زمن متزايد رتيبًا، ويلتقط قيمة التوقف قبل أي معالجة أخرى للنتيجة.
  • تُحفَظ المحاولات اليومية والأسبوعية محليًا أولًا؛ وتظل النتائج التي تعذّر إرسالها أو أُنشئت دون اتصال متاحة للمزامنة لاحقًا.
  • يمنع العميل المحاولات المحلية المتكررة ويتعامل مع استجابات الإدراج المكررة دون إنشاء نتيجة ثانية.
  • يستخدم المصدر الذي تم فحصه معرفات UUID مجهولة بدلاً من مصادقة الحساب ويرسل قياس الأعطال عن بعد من خلال Sentry.

النتيجة

ما يوضحه التنفيذ الذي تم التحقق منه

أُطلق TimeStop للجمهور على Google Play بتوقيت معروض بالمللي ثانية، و45 مستوى موزعة على خمسة عوالم، وتحديات يومية وأسبوعية، ولوحات متصدرين عالمية مجهولة الهوية، ومبارزات فردية آنية، وإنجازات وتقدم وإعلانات وتقارير أعطال.

لا يتضمن المستودع ترحيلات Supabase أو سياسات الأمان على مستوى الصفوف، لذلك تصف دراسة الحالة هذه عقد تطبيق العميل المتحقق منه دون الادعاء بأن إعدادات سياسات الخادم خضعت لتدقيق مستقل.

الدروس المستفادة

  • الحفاظ على دقة اللعب باستخدام ساعة محلية ذات زمن متزايد رتيبًا؛ دور الشبكة هو إتاحة المنافسة، لا تحديد النتيجة.
  • يمنح حفظ النتائج محليًا قبل إرسالها جلسات المنافسة القصيرة القدرة على تحمل أعطال الاتصال المعتادة على الهاتف.
  • يمكن للواجهة الخلفية المركزة أن تدعم قوائم المتصدرين والمبارزات المباشرة دون فرض إنشاء الحساب في لعبة خفيفة الوزن.

ما الذي يثبته هذا

فهم للمنتج، وهندسة دقيقة، وإطلاق فعلي.

تثبت اللعبة المنشورة ما لا يثبته نموذج شكلي في معرض أعمال: هندسة دقيقة على جهاز المستخدم، وقوائم ترتيب وقنوات لحظية مدعومة بـSupabase، وتقديمًا للمتجر وإدارةً للإصدارات، وحسن تقدير يحافظ على متعة فكرة بسيطة. إنها القدرة المتكاملة نفسها التي تقف وراء خدماتنا في تطوير تطبيقات الهاتف ، وهي سبب ثقة العملاء بنا في التطبيقات التي يتعامل معها عملاؤهم مباشرة.

لديك فكرة لتطبيق أو لعبة خاصة بك؟

سنقدم لك تقييمًا صادقًا لأصغر إصدار يستحق الإطلاق، وسعرًا ثابتًا لإيصاله إلى المتجر.