- مرحبا يا هبر! اسمي Zhenya وأنا مدمن المشروع.
- (سلسلة غير متناسقة من الأصوات) مرحبا ، Zhenya!
بعد هذه المقدمة ، عادة ما يتم اتباع الإشارات إلى العمل حتى وقت متأخر من الليل في أيام الأسبوع وطوال اليوم في عطلات نهاية الأسبوع ، حيث يتم حساب عدد الكيلوغرامات من الوجبات السريعة التي يتم تناولها ، والأوصاف الملونة للليالي التي لا تنام قبل الموعد النهائي ، وفي نهاية المطاف ، يتم هذا الفراغ والانفصال الذي يأتي بعد نهاية المشروع ... وكل هذا سيكون أبعد في النص ، ولكن أولا خلفية صغيرة.

أنا مطور في Dodo Pizza Engineering. يشارك العديد من اللاعبين من فريقنا في مشاريع جانبية مختلفة. في العام الماضي ، على سبيل المثال ، كان البحث عن برقية عن ساعي
CMAN ، والذي
تم تخصيصه لموسكو DotNext 2018 . في هذا العام ، قررنا مواصلة التقليد وصنع لعبة أخرى بالفعل بحلول DotNext 2019. لذلك ، كان شهر سبتمبر ، كان هناك بضعة أشهر قبل المؤتمر ، ونحن بحاجة ماسة إلى خطة.
لمعلوماتك: هذا هو الجزء الأول من مقال حول تكنولوجيا المعلومات الخيمياء. الجزء التالي سيكون التفاصيل الفنية لتطوير اللعبة.
خطة المشروع المثالية
لقد فهمنا أن تكرار قصة العام الماضي لن ينجح. أولاً ، كانت هذه هي المرة الأولى ، وكانت المرة الأولى بحكم التعريف فريدة من نوعها. ثانياً ، وربما كان هذا هو الشيء الأكثر أهمية - تم تطوير هذا المشروع لعدة أشهر. وقبل أسابيع قليلة من الحدث ، غادر المطورون عمومًا للقيام بذلك بدوام كامل.
حسنًا ، كان هدفنا أكثر تواضعا: كان لدينا عدد أقل من الناس ، ومواعيد زمنية أقصر ، وعمل كبير للغاية للعب اللعبة خلال ساعات العمل. في جلسة عصف ذهني مشتركة ، اقترح شخص ما إنشاء تباين في تكنولوجيا المعلومات للعبة Alchemy الشائعة منذ سنوات عديدة.
دعني أذكرك بإيجاز لأولئك الذين لم يجدوا تلك الأوقات: لدى اللاعب عدد أولي من العناصر (عادة 4) ، من خلال الجمع بينها ، يمكنك جمع المزيد والمزيد من العناصر الجديدة التي أصبحت أكثر صعوبة. مهمة اللاعب: لفتح جميع العناصر. في الكيمياء الأصلية ، وصل عدد محدود من العناصر إلى عشرات الآلاف.
لقطة من نفس الكيمياء 2013بدت لي فكرتنا مشروعًا مثاليًا لمدة شهر لثلاثة أسباب:
- مهام واضحة تقنيًا: نشر خادم خلفية ، وكتابة عميل للهواتف ، ورسم واجهة وصور للعناصر.
- يطلب من الكلمات من IT- المواضيع لتكون مجتمعة مع بعضها البعض (الكالينجيون ، إذا فقط).
- المهمة التي قمت بتعيينها شخصيًا بنفسي: جعل اللعبة فقط في وقت فراغي ، في عطلات نهاية الأسبوع ، دون الكثير من الضغط. بالتأكيد لم نرغب في تكرار تجربة العام الماضي.
قواعد التجميع: لتكون في الوقت المناسب في 30 يوما
ما الذي يجب القيام به أولاً لتجميع مشروع قابل للحياة في شهر واحد؟ هذا صحيح - قطع المجال! في الواقع ، تم تقسيم جميع أعمالنا تمامًا إلى أربع كتل:
- خادم الخلفية. كانت ميشا كوماشيف ( Ceridan ) ، التي صممت الخلفية لـ CMAN ، مسؤولة عن ذلك.
- عملاء الوحدة لأجهزة Android و iOS. كان هذا الجزء خاصًا بي لأنني كنت أمتلك بالفعل عشرات النماذج وألعابين تم نشرهما على Google Play.
- تم تصميم الواجهة والأيقونات بواسطة تانيا تورمانيدزه.
- و ... محتوى اللعبة. ولكن هذه الكتلة لم يكن لديها مالك لفترة طويلة. وربما كان ذلك هو خطأنا الأكثر أهمية (والأكثر وضوحا).
كان مفهومنا الأساسي لا يختلف عن 2013 الأصلي: اللاعب لديه 4 عناصر أساسية ، في المجموع يمكنك جمع عناصر N أخرى. يجب أن يكون لكل عنصر: الاسم والصورة والوصف الفني. يتم جمع أي عنصر جديد من اثنين فقط من العناصر المفتوحة سابقا.
لمنع الاحتيال ، قمنا بتخزين جميع المعلومات على مجموعات من العناصر في الخلفية. أرسل العميل طلبًا من معرّف عنصرين حاول المشغل الاتصال بهما ، وعاد الخادم إلى ما إذا كانت هذه التركيبة ناجحة أم لا. في حالة نجاحه ، تم إرسال العميل معرف العنصر الجديد واسمه ووصفه. بالاسم ، وجد العميل الصورة المطلوبة ، وظهر عنصر جديد في المشغل. أي أنه تم تخزين جميع البيانات اللازمة للعبة بواسطة الواجهة الخلفية.
لقد خططنا أيضًا لجدول سجلات لأفضل 20 لاعبًا حصلوا على جوائز ، حيث تم تخصيص عدد معين من النقاط لكل عنصر تم جمعه. هذا ، في الواقع ، هو كل شيء.
تهدئة الحماس الخاص بك ، والتغلب على إغراءات لفعل الكثير
بطبيعة الحال ، في عملية المناقشات العديدة ، تتبادر إلى الذهن مجموعة كبيرة ومتنوعة من قائمة الأمنيات ، والتي رفضناها بحكمة. هؤلاء بعض منهم:
- كانت هناك فكرة لإضافة نظام من الإنجازات عندما يجمع اللاعب بعض فروع العناصر أو العناصر المعقدة أو المجموعة. بعد أن أدركنا أنه مع اختراع العناصر ، كانت الأمور بعيدة عن أن تكون وردية كما توقعنا ، تخلينا عن هذه الفكرة. ستكون الإنجازات منطقية على مقياس مكون من ألف عنصر ، ولكن في الواقع كان لدينا عدد أقل بكثير منهم.
- اقترح شخص ما تسليط الضوء بطريقة خاصة على العناصر التي لم يعد من الممكن استخدامها في المجموعات. ومع ذلك ، فقد أظهرت الاختبارات الأولية أن هذا ليس ضروريا.
- اللحظة التقنية. في التنفيذ النهائي ، تتم حماية جميع الصور داخل عميل الوحدة. أي أنه من أجل تحديث أو استكمال المحتوى ، من الضروري تحديث التجميع في المتجر. كانت هناك فكرة لنقل الصور إلى CDN ، بحيث يسحب العميل البيانات من الواجهة الخلفية ، والصور من CDN. بعد ذلك سيكون العميل "رفيع" تقريبًا بواجهة جميلة. إذا تمكنا من القيام بذلك ، فإن اللعبة ستكون قابلة للتوسيع بلا حدود مع فرصة ثابتة لتحميل بعض مجموعات العناصر الجديدة. لكن أذهلنا أنفسنا بحقيقة أن اللعبة قد تم إنشاؤها لمدة يومين ... كان هناك إغراء ، لكننا نجحنا في التغلب عليها.
حسنًا ، قمنا بخفض مهامنا الفنية تمامًا ، فقد كنا في الوقت المحدد بوضوح وفي الوقت المحدد أيضًا بهامش. تم إنقاذ أيام العمل ، ولم تتضرر مسودة عمل واحدة (والتي لا يمكن قولها عن أمسيات وعطلات نهاية الأسبوع).
مشاعري قبل أن أرى ما يحدث مع المحتوىلا تمزح مطلقًا مع حبوب المحتوى
لعبت الثقة للمكون الفني خدعة في حالة المكون الثاني الإبداعي في اللعبة - المحتوى. لقد ارتكبنا خطأين: لم نختار شخصًا مسؤولًا واتخذنا الكثير من الموضوعات لتوليد أزواج من الكلمات التي لم نتمكن من مضغها. تفاصيل:
- بعد جلسة العصف الذهني الأولى ، قررنا أن عناصر الخيمياء لدينا ستتعلق بثلاثة مواضيع: تقنية المعلومات ، تكنولوجيا الأغذية ، وشيء من عالم دودو. ولم نتخل عن هذه الفكرة على الفور. تم إنشاء الكلمات والمجموعات في وقت واحد في ثلاثة اتجاهات ، وعلى الرغم من أنها كانت ممتعة ، إلا أنها لم تتوصل على الفور إلى إدراك أن الموضوعات الثلاثة جميعها لا تحتوي على نقاط تقاطع كثيرة. في مرحلة ما ، أدركنا مع ذلك أن هناك شيئًا ما يحدث بشكل خاطئ ، لقد أسقطنا الأثر الرئيسي وتركنا الشيء نفسه من Dodo (البيتزا بالطبع). بعد ذلك ، بدأ شيء ما في التبلور. ولكن هنا في اللحظة الثانية لعبت دورا.
- كتبت أعلاه أن عملية تجميع المحتوى لم يكن لديك مالك. اخترعت الكلمات الأولى من قبل مجموعات مختلفة من الناس الذين ألقوا للتو كل ما يتبادر إلى الذهن. إذن ، في قائمتنا أشياء غريبة مثل "shkolota" ، "حبوب" أو "ابن صديقة أمي". (ونعم ، كان من الممكن رسم "الفول" على JavaBeans ، ولكن ... لا.). بالفعل في منتصف المشروع ، عندما لم تتمكن شجرة الكلمة من ترسيخها على أساس المنطق ، ظهر تجاوز - أنتون Bruzhmelyov ، تم طرح كل الكلمات التي تم اختراعها من قبل وجعل مجموعات جديدة أكثر منطقية.
- لكن النقطتين المذكورتين أعلاه أدت إلى حقيقة أنه كان هناك القليل من الوقت المتبقي لاختراع المحتوى. نتيجة لذلك ، حصلنا على 128 عنصر فقط. صحيح ، من اختبارنا التطوعي في مواجهة الزملاء ، تمكنت فتاة واحدة فقط من جمع كل العناصر في غضون أيام قليلة. طمأنتنا. لكن من الواضح أننا لم نأخذ في الاعتبار درجة المثابرة والتصميم من الأشخاص الذين قاتلوا للحصول على جوائز في المؤتمر.

تلك الفاصوليا نفسها ، وكذلك النحل السيبراني (!) ، الفضول وسجل. ماذا يحدث عندما يفوز الخيال بالحس السليمالمحتوى هو أهم جزء في اللعبة ، فهو الذي يمسك اللاعب أو لا يتشبث به. العمل على المحتوى يمكن ويجب أن يبدأ قبل العمل الفني. حسنًا ، يجب دائمًا أن يكون هناك شخص مسؤول يقوم ، بيده القاسية ، بقطع كل ما هو غير ضروري ويترك فقط ما يتكون من الصورة الكاملة.
حتى الآن جيدة جدا أو مشاكل مع أبل
منذ فترة طويلة وقصيرة ، ولكن قبل عشرة أيام من DotNext ، بدأت كيمياء تكنولوجيا المعلومات لدينا تتحول إلى منتج عامل. وصلنا أخيرًا إلى مجموعات الكلمات الأخيرة. لم يكن على المصمم تانيا إعادة رسم الصور 10 مرات. تم عمل الواجهة الخلفية بشكل جيد ودائمها بثقة إلى الوظيفة المقصودة ، وبعد ذلك أنهيت عميل الوحدة لدينا.
حان الوقت لبدء نشر تطبيقنا في المتاجر. لم أكن أتوقع أي مشاكل مع Google Play ، لقد سبق لي تجربة نشر تطبيقات كاملة ، لكن متجر Apple ، بناءً على قصص الزملاء ، بدأ يثير القلق. وهذه المخاوف لم تذهب سدى.
لقد قمنا بنشر تصميمات اختبار لكل من Android و iOS ، وقمنا أولاً باختبارها بأنفسنا ، ثم قمنا بدعوة المزيد من الزملاء. مسكت كل الأخطاء تقريبًا عندما اختبرت ذلك بنفسي. صحيح ، كانت هناك مشكلة واحدة في سرعة الرسوم المتحركة على أجهزة iOS ، والتي لم أتمكن من التقاطها لفترة طويلة ، لأن كل شيء كان يعمل بشكل جيد على المحاكي. لكن آمل أن أتحدث عن هذا في المقال الثاني عن الجزء الفني من مشروعنا.
معظم الأشياء التي كان لا بد من تصحيحها كانت مرتبطة بالتخطيط - فإما أن "الانفجار" على الزر سوف يسقط ، فإن النافذة لن تمتد بشكل صحيح في نسب مختلفة من الشاشة. لقد كان جزءًا كئيبًا وليس الجزء الأكثر إثارة للاهتمام من العمل ، ولكن في النهاية قمنا بربط التصميم بالتوافق مع جميع الشاشات الممكنة. لسوء الحظ ، لقد قضينا معظم الوقت على شاشة اللعبة ونظرنا إلى عضادة كبيرة واحدة ... لكن اتضح أنها غبية وكارثية بحيث تستحق فقرة منفصلة.
لذلك ، قبل ثلاثة أيام من المؤتمر حرفيًا ، كان لدينا مجموعة من 128 كلمة ، وخلفية جاهزة وعملاء تم جمعهم لأجهزة Android و iOS. حان الوقت لنشر الإصدارات العامة. مع Google Play ، أصبح كل شيء كالساعة. ولكن مع متجر أبل ، واجهنا صعوبات غير متوقعة.
في هذه الأثناء ، من Apple: "ما الذي تفكر به حتى تمنع اللاعبين من الإفراج؟"لقد حذرت من أن التمديد في الجانب أمر فظيع ، لكنني لم أفهم كم. أولاً ، لقد قُدمت لنا فكرة أننا كنا نمارس المقامرة ، ثم تمت إعادة توجيهنا لبعض الأسباب الغريبة للغاية: "إن طلبك ليس تطبيقًا ، بل طريقة عرض على الويب". بعد الافتتاح الثالث أو الرابع ، بدأنا ببساطة في الرد: "لا ، هذا ليس عرض ويب ، لا ، لدينا محتوى والتطبيق يفعل شيئًا مفيدًا."
كانت هناك الليلة الماضية قبل DotNext والمحاولة الأخيرة لنشر التطبيق. معجزة ، يحدث! لم أنم جيدا ، مثلما حدث في طفولتي قبل عيد ميلادي. أردت أن أستيقظ ، أنظر إلى بوابة مطور Apple وشاهد علامة اختيار خضراء هناك. للأسف ، لم تحدث المعجزة.
عن fakapy والقط
- بدء الشاشة والتحكم
وجها لوجه من أبل.
هذا هو ألمي الشخصي. لأنه أغفل. أيام الألعاب في أوائل العقد الأول من القرن العشرين ، عندما انقضت شاشة البدء على رف بألعاب الطاولة أو تمت محاكاة غرفة ألعاب ، فقد ولت منذ زمن طويل. ومع ذلك ، كان لدينا ذلك تماما.
تحولت شاشة البدء إلى طاقتها. لقد خرج تمامًا ، سواء من أسلوب اللعبة أو من هدفه المباشر - لإعطاء الشخص الفرصة للعب في أسرع وقت ممكن. حتى في منطق أعمال التصميم لدينا ، لم ير اللاعب إلا مرة واحدة شاشة البدء أثناء التسجيل. عند إعادة تشغيله ، تفتح شاشة اللعبة الرئيسية على الفور.
كانت الصورة في حد ذاتها رائعة ، وكانت هناك تفاصيل فيها ، وكان هناك قطة ... وكان بها أيضًا حقل إدخال صغير جدًا ، لم يستطع أي شخص الحصول عليه. ليس كل من يريد اللعب مع شاشة البدء ، لذلك فقدنا بالفعل في البداية بعض النسبة المئوية من اللاعبين.
ولكن أصبح أكثر الملفات غير السارة هو السبب الذي جعل Apple تسجلنا للمرة الأخيرة: على جهاز iPad (نسبة العرض إلى الارتفاع أقرب بكثير من المربع مقارنةً بجميع الأجهزة الأخرى التي فكرنا فيها) ، تم تكبير صورة البداية بحيث ارتفع القط على زر "OK" ، والشخص جسديا لا يمكن النقر عليه.
الرجل الصحي القط والقط المدخن على باد
بالطبع ، لم نكن نتوقع من لاعبينا أن يلعبوا على iPad على الإطلاق ، ولكن حقيقة أن رأس القط يعوق بدء اللعبة أمر لا يمكن إنكاره. حتى لا نقطع جزءًا من الجمهور ، كان علينا أن نذهب بطريقة أكثر تعقيدًا: لقد أعلنا بصدق أن Apple لديها سياسة صارمة ، وأعدوا توجيهنا ، لكننا دعينا الجميع للتسجيل للاختبار العام والمشاركة في اللعبة بهذه الطريقة.
الشيء الأكثر إزعاجًا هو أنني طوال فترة التطوير تقريبًا كنت أستخدم أبسط شاشة بدء التشغيل مع خلفية سوداء وحقل إدخال كبير وزر "موافق" ، والذي لم يتم حظره.
ما هو المعنوي لهذه القصة كلها؟ في حالتنا ، بذلنا المزيد من الجهد وجعلنا كل شيء أسوأ. الأفضل أسهل. تقوم بتوجيه الطاقة في الاتجاه الصحيح والحصول على النتيجة المرجوة ، وإذا بدأت تصبح حكيماً ، فإن الكرمة الشاملة تأتي إليك وتضرب رأسك بألم.
- حدث fakap الثاني بعدد محدود من العناصر في اللعبة. كما كتبت أعلاه ، قام شخص واحد فقط من جميع اختبارنا بجمع كل العناصر في غضون أيام قليلة. لكن اختبارنا لعب دورًا سريعًا بين العمل والقليل في المساء. لكن لاعبينا الحقيقيين في DotNext كانوا مصممين على الفوز بجوائز ، لذا بحلول منتصف اليوم الأول (!) ، قررنا المتسابقين الثلاثة. وهذا هو ، هؤلاء الناس ، وليس تجنيب أصابعهم ، اخترقت جميع 128 ، أو بالأحرى 133 عناصر.
عفوًا ، أين هو 133 ، إذا تحدثت طوال الوقت عن 128؟ باعتباري مدمنًا على مشروع مدمن ، في اللحظة الأخيرة أردت وضع شيء ما في اللعبة. لذلك ، رسم المصمم تانيا ، وأنا سراً من المشاركين الآخرين في المشروع ، أضافنا خمس بيضات عيد الفصح حول أشخاص مرتبطين بطريقة ما بتطوير اللعبة. وكان إجمالي عدد العناصر التي تم إظهارها للاعب مشفرًا للبساطة. نتيجةً لذلك ، جمع اللاعبون 128 عنصرًا فقط (وهو ليس الحد الأقصى لعدد النقاط) واعتقدوا أن هذا كان هو كل شيء.
رائع خمسة في شكل عناصر عيد الفصح.
بدلا من خاتمة
مرت DotNext. بالنسبة إلى Android ، تم تنزيل اللعبة بواسطة 146 شخصًا. آخر 43 اختراق اختبار بيتا العام لدائرة الرقابة الداخلية. لقد أجرينا
محادثة مع اللاعبين. معظم اللاعبين كانوا راضين (لم نتلق تعليقات سلبية مباشرة) ، وجدت الجوائز الفائزين. حسنًا ، كما هو الحال دائمًا ، وقع على عاتقي الإغاثة والخراب دائمًا.
الآن ، بعد أكثر من شهر ، تركتني ، كتبت هذا الوفاة. حسنًا ، لم نتمكن من تجنب fakaps. لكننا حققنا هدفنا - قمنا بتنفيذ مشروع متكامل في شهر واحد دون انقطاع عن العمل وأطلقناه بنجاح في المؤتمر. هل علمتني هذه القصة أي شيء؟ ربما حان الوقت للتوقف وربط أعمال التصميم؟ من الصعب القول ، انتظر المؤتمر القادم!
في الإصدار غير المتصل بالإنترنت من "IT-alchemy" ، بدون جدول السجلات ومع شاشة بدء ثابتة ، يمكنك اللعب عن طريق تنزيله على Google Play .