نمودارهای تانک استادان آمریکا. Tank Masters - بازی پازل موبایل در مورد تانک ها

  • توسعه اپلیکیشن موبایل
  • داستان درباره این است که چگونه سازندگان Berserk Online تصمیم گرفتند به تانک ها روی بیاورند و چه نتیجه ای حاصل شد.

    همانطور که می دانید، هر گونه احترام به خود شرکت بازی سازیمن باید یک بازی در مورد تانک بسازم. ما، بایتکس، از این قاعده مستثنی نبودیم.

    بازی Tank Masters یک تغییر در موضوع قدیمی است بازی کلاسیکبرای DOS "Alchemy"، اما از تنظیم تاریخچه توسعه تانک سازی استفاده می کند. بازی بسیار ساده است، قوانین ابتدایی هستند، بنابراین اهمیت اصلی در بازی فهرست عناصر و "دستورالعمل ها"، گیم پلی متفکرانه و همچنین گرافیک و صدا است.

    اندیشه

    ایده کلی خیلی سریع شکل گرفت، اما جزئیات چندین بار در مرحله پیش تولید تغییر کردند. در ابتدا، یک شاخه بزرگ برنامه ریزی شده بود که در آن همه کشورهای بزرگ تانک مخلوط شده بودند. این ایده به سرعت کنار گذاشته شد، و متوجه نیاز به نمایش تعداد زیادی از عناصر در رابط شدند، و آنها بر روی گزینه دیگری قرار گرفتند: یک ملت = یک کمپین در بازی. در نتیجه، با "بیل زدن" در بسیاری از طرح های رابط، ارزیابی از نظر راحتی رابط دریافت کردیم - حداکثر 12 گروه از هر کدام 10 عنصر.

    گزینه های صفحه اصلی بازی:

    سپس انتخاب عناصری بود که قرار بود در بازی گنجانده شوند.

    از آنجایی که Bytex یک شرکت بازی سازی روسی است، تصمیم گرفته شد که با مدرسه تانک سازی اتحاد جماهیر شوروی به عنوان نزدیک ترین و آشناترین شروع به کار کند. انتخاب گروه های اصلی از جمله تانک ها کار سختی نبود. این بلافاصله شامل اتومبیل هایی می شود که برای بسیاری از آنها آشنا هستند بازی آنلایندنیای تانک ها شروع با "سی و چهار" افسانه ای و IS ها و پایان دادن به نمونه های اولیه A-20، A-44 و KV-13 که به تولید نرسیدند. در مرحله بعد ، "قطعات یدکی" کمتر آشکاری برای مخازن اضافه شد: عناصر مختلف شاسی ، محفظه موتور ، اسلحه ها و غیره.




    برای افزایش تنوع تاریخی، طراحان معروف و رویدادهای معروف اضافه شدند که به هر طریقی با ساخت تانک مرتبط هستند:


    شروع کنید

    سخت ترین و جالب ترین، البته، روند نوشتن واکنش ها بود. برخی از عناصر از قبل برنامه ریزی شده باید حذف می شدند و با برخی دیگر جایگزین می شدند تا ارتباطات منطقی بیشتری ایجاد شود. واکنش های به ظاهر عجیب، اما کاملا منطقی نیز وجود داشت.

    هنگام ایجاد لیست واکنش ها، اعتیاد آور بودن گیم پلی، درگیری بازیکن و انگیزه استفاده از نکات را نیز فراموش نکردیم. تعداد واکنش‌های موجود در ابتدای بازی به طور مداوم در حال افزایش است، بنابراین بازیکن فقط باید 10-15 عنصر اول را جمع‌آوری کند تا از این روند غافل شود. این تا زمان ایجاد اولین تانک که طبق قوانین World of Tanks، MS-1 است ادامه دارد. سپس شماره واکنش های احتمالیبه تدریج کاهش می یابد تا پس از کشف یک عنصر کلیدی جدید دوباره افزایش یابد و به بازیکن با فرصت پیشرفت سریع در بازی برای تلاش های خود پاداش دهد. هنگامی که عناصر ناشناخته کمی باقی می ماند، یافتن ترکیبات قابل قبول بسیار دشوار می شود.

    فهرست عناصر در ابتدا بر روی یک تکه کاغذ در یک جعبه گردآوری شده بود که تغییر و بررسی آن بسیار ناخوشایند بود. بنابراین، تقریبا بلافاصله ابزاری برای ویرایش بصری مجموعه ها و واکنش ها اجرا شد.

    از آنجایی که برای یک کار ساده، ترکیب بزرگی را به عنوان Grails در نظر گرفتیم، به راحتی می توان حدس زد که از قابلیت های چارچوب تا حد زیادی استفاده شده است. برای راحتی طراح بازی، می توانید عناصر را با استفاده از AJAX ویرایش کنید:

    ما شروع به مقابله با خطاهای آینده در backend با استفاده از مکانیزم های اعتبارسنجی کردیم. همچنین برای جلوگیری از بروز مشکل در آینده، فیلترهایی نوشته شد که به یافتن کمک می کند اشتباهات احتمالی(تصاویر شکسته، توضیحات فراموش شده); یا فیلتری که مواردی را نشان می دهد که به هیچ گروهی تعلق ندارند.

    نوشتن اسکریپت برای جستجوی عناصری که در اصل نمی توان به دست آورد مفید بود. وجود چنین عناصری اشتباه بسیار بزرگی است. عناصر اولیه (که از دیگران نیز قابل دریافت نیستند) با پرچم "پایه" مشخص شده اند.

    اپلیکیشن موبایل

    این برنامه در سی شارپ با استفاده از Unity3D پیاده سازی شده است. با وجود پسوند سه بعدی، Unity برای توسعه بازی های دو بعدی نیز کاملاً مناسب است. مهمترین چیز: اگر برخی از عملکردها در خود فریم ورک Unity وجود ندارد، می توانید یک افزونه را در فروشگاه Unity Asset پیدا کنید. بسیاری از افزونه ها رایگان هستند.

    انتخاب معماری بازی یکی از مهمترین تصمیمات قبل از شروع توسعه است. بازی‌های زیادی با موضوعات مشابه را مطالعه کردیم و به این نتیجه رسیدیم که گزینه ایجاد صفحه‌های مختلف در صحنه‌های مختلف برای ما مناسب نیست. این اجازه نمی‌دهد که جابجایی بین صفحه‌ها به نرمی نیاز داشته باشد و افزودن ترانزیشن‌ها هنگام تغییر آن‌ها را بسیار دشوار می‌کند.

    ما چیزی شبیه به صحنه ها را اجرا کردیم اما با امکانات خودمان. ما یک مدیر صفحه داریم که دستگاه حالت خود را دارد که می تواند بین صفحه نمایش جابجا شود. هر صفحه یک رابط با متدهای Hide و Show پیاده سازی می کند و دارای چندین رویداد از نوع OnShow، OnHide است. این به ما امکان استفاده از Mecanim را برای ایجاد انیمیشن‌های انتقال صفحه نمایش داد و کار با آنها را آسان‌تر کرد.

    در ابتدای توسعه، ما با یک انتخاب دشوار روبرو بودیم: از کتابخانه های شناخته شده ای استفاده کنید که توسعه دو بعدی را ساده می کنند (به عنوان مثال، ngui)، یا ریسک کنید و سعی کنید همه چیز را با استفاده از سیستم Unity UI تازه ظاهر شده پیاده سازی کنید. ما دومی را انتخاب کردیم و تقریباً از آن پشیمان نشدیم، اگرچه در پایان بازی با ترکیبی از sprite (بیشترین استفاده از آن) به پایان رسید. گیم پلی) و بوم (در منوها، سرصفحه ها، راهنمای ابزار استفاده می شود).

    برنامه فوق العاده ساده است. در مجموع 7 صفحه بازی وجود دارد که مربوط به 7 کنترلر است - MonoBehaviour. از یک طرف، آنها رویدادهایی را از اشیاء نامرئی، به عنوان مثال، به رویدادها مشترک می کنند فروشگاه بازی. از طرف دیگر در صورت لزوم پنجره ها و دیالوگ های پاپ آپ ایجاد می کنند، صداها و موسیقی را کنترل می کنند.

    کمی در مورد کتابخانه های مورد استفاده. ما افزونه ها را بر اساس ویژگی های زیر انتخاب کردیم:

    ● افزونه در حال توسعه است، یک انجمن وجود دارد - Unity ثابت نمی ماند، نمی خواهم با مشکل ناسازگاری مواجه شوم نسخه قدیمیافزونه با یونیتی جدید و عدم تمایل توسعه دهندگان به ارتقاء افزونه.

    ● این افزونه رایگان است یا یک نسخه "رایگان" (اشتراک گذاری) برای آزمایش وجود دارد - خرید یک افزونه فقط برای درک اینکه مناسب نیست برای ما مناسب نیست.

    ● منبع باز - نه شرط لازم، اما بسیار مطلوب است. گاهی اوقات شما نیاز فوری به رفع برخی از باگ های پیدا شده دارید، و صرف یک هفته منتظر تغییرات از سوی توسعه دهندگان همیشه امکان پذیر نیست.

    برای ذخیره داده ها، ما از JSON استفاده می کنیم که به راحتی با چشمان شما قابل مشاهده است و به راحتی از ویرایشگر واکنش صادر می شود. برای کار با JSON در داخل یونیتی، انتخاب ما بر روی JSONObject قرار گرفت - همه چیز مورد نیاز شما را دارد و سرعت عملیاتی نسبتاً بالایی دارد؛ به طور خودکار لیستی با سابقه واکنش شامل 2-3 هزار عنصر را در کمتر از یک ثانیه پردازش می کند. .

    حالت همهجانبه اندروید- این یک پلاگین بسیار کوچک اما بسیار مهم است که غوطه ور شدن بازیکن را در بازی افزایش می دهد. بر این اساس زمان صرف شده در بازی افزایش می یابد. این یک افزونه مورد نیاز برای اندروید است، بنابراین مجبور شدم کمی در منابع جستجو کنم و "#if UNITY_ANDROID" را اضافه کنم: بدون آنها، پلاگین با ساخت پروژه برای iOS تداخل داشت. حالت Immersive حالتی است که در آن برنامه شما به صورت تمام صفحه به کاربر نشان داده می شود، در حالی که هیچ پنل سیستمی از جمله نوار ناوبری قابل مشاهده نیست.

    فیس بوکمی تواند به عنوان یک راه حل جهانی استفاده شود. پیوند دادن یک بازیکن به حساب فیس بوک به شما امکان می دهد دستاوردها را از طریق Graph API منتشر کنید. بعلاوه، رسانه های اجتماعیمی توان از آن برای برقراری ارتباط با بازیکن استفاده کرد. در صورتی که یک پخش کننده چندین دستگاه (به عنوان مثال، یک لپ تاپ ویندوز، یک تبلت اندروید و یک تلفن iOS) داشته باشد، مجوز دادن از طریق شبکه های اجتماعی راحت تر است. تیم FB با انتشار یک افزونه برای Unity، زندگی را برای توسعه دهندگان بسیار آسان کرده است. مجوز/اشتراک گذاری - همه چیز خارج از جعبه کار می کند.

    DOTween- همه انیمیشن های داخل برنامه با استفاده از Unity استاندارد، Mecanim و گاهی اوقات انیمیشن های قدیمی ساخته می شوند، اما حرکت عناصر به صورت مارپیچی در حین واکنش ها با پلاگین های شخص ثالث آسان تر است؛ برای این، قبل از شروع حرکت، چندین مورد نقاطی ایجاد می شوند که DOTween مسیری را برای حرکت شی ایجاد می کند.

    سوملا- "ویترین"، که به شما امکان می دهد برنامه را همزمان به چندین "بازار" متصل کنید: گوگل پلیمارکت، آیتونز اپ استور، فروشگاه Apps Amazon، فروشگاه Windows Phone. به نظر ما، این تنها افزونه ای است که پشتیبانی از بسیاری از فروشگاه ها را ترکیب می کند، جامعه خوبی دارد، به سرعت در حال توسعه است و همچنین رایگان است.

    از کتابخانه برای ترجمه برنامه استفاده شد محلی سازی هوشمند. منابع زیادی در Github وجود دارد بازخورد مثبتدر فروشگاه دارایی صادرات/واردات به csv وجود دارد، تقریباً بدون هیچ نظری کار می کند. در ابتدا، ترجمه عناصر در ویرایشگر عنصر انجام شد، اما سپس یک صادرات به سرعت در XML نوشته شد که برای SmartLocaliztion قابل درک بود.

    Response.addHeader("Content-Type"، "text/xml; charset=utf-8") def xml = new MarkupBuilder(response.writer) xml.root() ( برای (def o: objects) ( data([" name": o.key، "xml:space": "Reserve"]) ( value(o.value) ) ) answer.writer.flush()
    سپس ترجمه ها به محیط Unity وارد شده و در سایت ویرایش شدند. به لطف این، می توان دید که آیا متن ترجمه شده در جایی خارج از محدوده است یا خیر و در نهایت همه چیز چگونه به نظر می رسد.

    شیوه هنری

    پس از مشخص شدن لیست عناصر بازی، دو نفر از هنرمندان ما شروع به کار بر روی طراحی گرافیک کردند.

    اولین قدم ترسیم چند طرح از پنجره های بازی برای تصمیم گیری بود ظاهربازی ها. در نتیجه، رنگ‌های اصلی در طراحی بازی، رنگ‌های خاکستری روشن و خاکی بود، به طوری که متن کوچک به راحتی قابل خواندن بود، تصاویر روی پس‌زمینه روشن به وضوح قابل مشاهده بودند و سایه‌های سبز تداعی‌هایی را در بازیکن با یک مخزن برانگیخت. موضوع.

    انتخاب مناسب سبک بصری، ما شروع به ترسیم پنجره های رابط باقی مانده و به طور همزمان روی تصاویر اشیاء کردیم. تصمیم گرفته شد که تانک ها و اشیاء دیگر را به سبک کمیک بوک به تصویر بکشیم تا با مکانیک ساده و حالت کلی بازی مطابقت داشته باشد. برای انتقال تونسکته مغزی به جای گرادیان استفاده شد (ما این تکنیک را از تصاویر در ادبیات فنی قدیمی قرض گرفتیم). به قطعات کوچکمخازن روی صفحه گوشی قابل مشاهده بودند، در تصاویر ما آنها را کمی بزرگ کردیم، سبک انتخابی با این منافات نداشت.







    پس از آماده شدن، محتوای گرافیکی به برنامه نویسان منتقل شد و به طور معجزه آسایی در بازی ظاهر شد. روز به روز تعداد عناصر بازی بیشتر می شد. پس از آن، هر تانک یک الگوی استتار به دست آورد که گرافیک بازی را متنوع کرد.

    تمامی انیمیشن های بازی در یونیتی ساخته شده است که هم مناسب برنامه نویسان و هم برای هنرمندان است. هنرمندان از راحتی کار با یک پنجره زمانی مشابه با Adobe AfterEffects یا Photoshop CS6 خوششان می آمد و برنامه نویسان از عدم نیاز به جستجوی راه هایی برای وارد کردن انیمیشن به Unity خوششان می آمد.

    صداپیشگی

    در ابتدای توسعه، صداگذاری و موسیقی را از پروژه دیگر خود گرفتیم. آخرین نسخهما آن را از یک فریلنسر سفارش دادیم. وقتی اولین گزینه های صداگذاری را ارائه کرد، معلوم شد که صداها از نظر مدت زمان متفاوت هستند. بدتر از همه، مدت زمان آنها با صداهایی که ما استفاده می کردیم متفاوت بود و بنابراین مناسب انیمیشن نبود. در این مرحله به فریلنسر اپلیکیشنی با مجموعه صداهای ارائه شده دادیم. پس از آن، تمام صداها برای مدت زمان و حجم نرمال شدند و چندین ایده جدید برای صداگذاری پیشنهاد شد.

    آمادگی شماره 1 و رهاسازی

    در نتیجه با ترکیب همه این قسمت ها به بازی خود رسیدیم. سپس، برنامه مونتاژ شده برای آزمایش عبور از آتش و آب ارسال شد. آزمایش بر روی بیش از 30 دستگاه مختلف انجام شد. در نتیجه، مجبور شدیم برخی از عکس‌ها را فشرده کنیم، زیرا به هر حال فقط هنرمند می‌توانست تفاوت را با چشم متوجه شود - این باعث صرفه‌جویی در حدود 40 مگابایت شد. حافظه دسترسی تصادفی. سپس تصاویر عناصر را با شیت های اسپرایت ترکیب کردیم که تعداد تماس های قرعه کشی را از 430 به 80 ~ کاهش داد. اضافه شدن حذف اشیاء واقع در خارج از صحنه، اگرچه قابل مشاهده نبودند، اما هر یک از آنها فراخوانی های قرعه کشی اضافی را اضافه کردند. این بازی در حال حاضر روی آیفون 4 به خوبی اجرا می شود و بر روی اندروید با 512 مگابایت رم اجرا می شود.

    اکنون که آزمایش کنندگان هوشیار و دقیق از همه چیز راضی هستند، تنها چیزی که باقی می ماند این است که برنامه را در موارد مختلف بارگذاری کنند. پلتفرم های معاملاتیو منتظر لحظه هیجان انگیز پرتاب باشید.

    سعی کنید خود را در دوران شگفت انگیز نیمه اول قرن بیستم غوطه ور کنید، زمانی که تانک ها از هیولاهای بزرگ به قهرمانان واقعی جنگ تبدیل شدند.

    نظرات کاربران

    کانال آندروشا
    13.01.2018 — 10:57

    شما باور نمی کنید، اما من 14 ساله هستم)))

    همه چیز در مورد تانک
    14.01.2018 — 18:50

    والردوس درای
    17.01.2018 — 17:31

    دو MTO را باز کنید

    بازی Minecraft Clash Royale
    19.01.2018 — 18:50

    Q1+Q2=جنگ زمستانی

    کانال بازی ها
    21.01.2018 — 11:14

    BT 2 و BT 5 را وصل کنید

    گربه مارکوس کوتوفی در روستا
    24.01.2018 — 09:14

    کانال بازی ها
    23.01.2018 — 12:42

    BT 2 و BT 5 را وصل کنید

    بوریس لیاخوف
    26.01.2018 — 04:42

    BT5 + BT 7 = شراب برای ماسکوا

    کانال Nadka Kisya Ala Gubchak
    27.01.2018 — 08:27

    واسیا سوخومسکی
    28.01.2018 — 16:10

    به صورت مجازی

    کانال آندروشا
    30.01.2018 — 10:53

    ماکس بیلینوویچ
    31.01.2018 — 23:15

    جریان مارسی
    03.02.2018 — 00:19

    به من بگویید چگونه از اتحاد جماهیر شوروی عبور کنم

    alvamar.ru

    دستور العمل های تانک استادان اتحاد جماهیر شوروی - همه دستور العمل ها

    نظرات کاربران

    کانال آندروشا
    28.09.2018 — 07:11

    شما باور نمی کنید، اما من 14 ساله هستم)))

    همه چیز در مورد تانک
    29.09.2018 — 20:03

    چند سالتونه لطفا بگید 8.5

    والردوس درای
    01.10.2018 — 16:33

    دو MTO را باز کنید

    بازی Minecraft Clash Royale
    04.10.2018 — 15:42

    Q1+Q2=جنگ زمستانی

    کانال بازی ها
    05.10.2018 — 16:07

    BT 2 و BT 5 را وصل کنید

    گربه مارکوس کوتوفی در روستا
    07.10.2018 — 10:44

    کانال بازی وجود خواهد داشت یک نقشه با تشکر Aya فکر بدهی

    کانال بازی ها
    07.10.2018 — 21:32

    BT 2 و BT 5 را وصل کنید

    بوریس لیاخوف
    10.10.2018 — 20:27

    BT5 + BT 7 = شراب برای ماسکوا

    کانال Nadka Kisya Ala Gubchak
    13.10.2018 — 10:55

    بوریس لیاخوف نوشتن را یاد می گیرد و سپس می نویسد

    واسیا سوخومسکی
    12.10.2018 — 01:38

    به صورت مجازی

    کانال آندروشا
    13.10.2018 — 23:00

    لودمیلا بیلینوویچ
    15.10.2018 — 12:33

    و من قبلاً در آلمان هستم و از اتحاد جماهیر شوروی فارغ التحصیل شدم

    جریان مارسی
    18.10.2018 — 06:14

    به من بگویید چگونه از اتحاد جماهیر شوروی عبور کنم

    alena-suveniry.ru

    استادان تانک - کیمیاگری با تانک

    امروزه تانک ها به بخش مهمی از صنعت بازی تبدیل شده اند. با کمک آنها می توانید در نبردهای بزرگی شرکت کنید که قبلاً قلب میلیون ها نفر در سراسر جهان را به دست آورده اند. همچنین شایان ذکر است که در اخیرابر دستگاه های تلفن همراهبیشتر و بیشتر پیشرفت های اصلی از این نوع بیرون می آیند که قطعاً شایسته توجه هستند.

    که در در این موردما در مورد بازی مانند Timelines: Assault on America صحبت نمی کنیم، جایی که باید در نبردهای سخت شرکت کنید، بلکه در مورد جهان های بازی کاملاً متفاوت صحبت می کنیم.

    ویژگی های روند بازی

    یک بازی استادان تانکبه تازگی منتشر شده است، اما در حال حاضر توانسته است تعداد قابل توجهی از طرفداران را به دست آورد. در این توسعه جزئیاتی از تانک های مدرن و کلاسیک به ما ارائه می شود. با کمک آنها، جمع آوری تجهیزات کاملاً باورنکردنی امکان پذیر می شود که توانایی های آنها فقط به تاکتیک های ما در بازی بستگی دارد. این بازی دارای گرافیک عالی و همچنین تعداد زیادی ویژگی است که در هیچ بازی کیمیاگری یافت نمی شود.

    فیلم روند بازی

    دانلود از گوگل پلی | از سایت دانلود کنید

    samsung-galaxy.mobi



    داستان درباره این است که چگونه سازندگان Berserk Online تصمیم گرفتند به تانک ها روی بیاورند و چه نتیجه ای حاصل شد.

    همانطور که می دانید، هر شرکت بازی سازی که به خود احترام می گذارد باید یک بازی در مورد تانک ها بسازد. ما، بایتکس، از این قاعده مستثنی نبودیم.

    Tank Masters یک نسخه از بازی قدیمی کلاسیک DOS Alchemy است، اما از تنظیمات تاریخ توسعه تانک سازی استفاده می کند. بازی بسیار ساده است، قوانین ابتدایی هستند، بنابراین اهمیت اصلی در بازی فهرست عناصر و "دستورالعمل ها"، گیم پلی متفکرانه و همچنین گرافیک و صدا است.

    اندیشه

    ایده کلی خیلی سریع شکل گرفت، اما جزئیات چندین بار در مرحله پیش تولید تغییر کردند. در ابتدا، یک شاخه بزرگ برنامه ریزی شده بود که در آن همه کشورهای بزرگ تانک مخلوط شده بودند. این ایده به سرعت کنار گذاشته شد، و متوجه نیاز به نمایش تعداد زیادی از عناصر در رابط شدند، و آنها بر روی گزینه دیگری قرار گرفتند: یک ملت = یک کمپین در بازی. در نتیجه، با "بیل زدن" در بسیاری از طرح های رابط، ارزیابی از نظر راحتی رابط دریافت کردیم - حداکثر 12 گروه از هر کدام 10 عنصر.

    گزینه های صفحه اصلی بازی:

    سپس انتخاب عناصری بود که قرار بود در بازی گنجانده شوند.

    از آنجایی که Bytex یک شرکت بازی سازی روسی است، تصمیم گرفته شد که با مدرسه تانک سازی اتحاد جماهیر شوروی به عنوان نزدیک ترین و آشناترین شروع به کار کند. انتخاب گروه های اصلی از جمله تانک ها کار سختی نبود. این بلافاصله شامل اتومبیل‌هایی می‌شود که خیلی‌ها از آنلاین آشنا هستند بازی جهاناز تانک ها شروع با "سی و چهار" افسانه ای و IS ها و پایان دادن به نمونه های اولیه A-20، A-44 و KV-13 که به تولید نرسیدند. در مرحله بعد ، "قطعات یدکی" کمتر آشکاری برای مخازن اضافه شد: عناصر مختلف شاسی ، محفظه موتور ، اسلحه ها و غیره.




    برای افزایش تنوع تاریخی، طراحان معروف و رویدادهای معروف اضافه شدند که به هر طریقی با ساخت تانک مرتبط هستند:


    شروع کنید

    سخت ترین و جالب ترین، البته، روند نوشتن واکنش ها بود. برخی از عناصر از قبل برنامه ریزی شده باید حذف می شدند و با برخی دیگر جایگزین می شدند تا ارتباطات منطقی بیشتری ایجاد شود. واکنش های به ظاهر عجیب، اما کاملا منطقی نیز وجود داشت.

    هنگام ایجاد لیست واکنش ها، اعتیاد آور بودن گیم پلی، درگیری بازیکن و انگیزه استفاده از نکات را نیز فراموش نکردیم. تعداد واکنش‌های موجود در ابتدای بازی به طور مداوم در حال افزایش است، بنابراین بازیکن فقط باید 10-15 عنصر اول را جمع‌آوری کند تا از این روند غافل شود. این تا زمان ایجاد اولین تانک که طبق قوانین World of Tanks، MS-1 است ادامه دارد. سپس تعداد واکنش‌های احتمالی به تدریج کاهش می‌یابد تا پس از کشف یک عنصر کلیدی جدید دوباره افزایش یابد و به بازیکن فرصت پیشرفت سریع در بازی را برای تلاش‌هایش پاداش دهد. هنگامی که عناصر ناشناخته کمی باقی می ماند، یافتن ترکیبات قابل قبول بسیار دشوار می شود.

    فهرست عناصر در ابتدا بر روی یک تکه کاغذ در یک جعبه گردآوری شده بود که تغییر و بررسی آن بسیار ناخوشایند بود. بنابراین، تقریبا بلافاصله ابزاری برای ویرایش بصری مجموعه ها و واکنش ها اجرا شد.

    از آنجایی که برای یک کار ساده، ترکیب بزرگی را به عنوان Grails در نظر گرفتیم، به راحتی می توان حدس زد که از قابلیت های چارچوب تا حد زیادی استفاده شده است. برای راحتی طراح بازی، می توانید عناصر را با استفاده از AJAX ویرایش کنید:

    ما شروع به مقابله با خطاهای آینده در backend با استفاده از مکانیزم های اعتبارسنجی کردیم. همچنین برای جلوگیری از مشکلات در آینده، فیلترهایی نوشته شد که به یافتن خطاهای احتمالی (تصاویر شکسته، توضیحات فراموش شده) کمک می کند. یا فیلتری که مواردی را نشان می دهد که به هیچ گروهی تعلق ندارند.

    نوشتن اسکریپت برای جستجوی عناصری که در اصل نمی توان به دست آورد مفید بود. وجود چنین عناصری اشتباه بسیار بزرگی است. عناصر اولیه (که از دیگران نیز قابل دریافت نیستند) با پرچم "پایه" مشخص شده اند.

    اپلیکیشن موبایل

    این برنامه در سی شارپ با استفاده از Unity3D پیاده سازی شده است. با وجود پسوند سه بعدی، Unity برای توسعه بازی های دو بعدی نیز کاملاً مناسب است. مهمترین چیز: اگر برخی از عملکردها در خود فریم ورک Unity وجود ندارد، می توانید یک افزونه را در فروشگاه Unity Asset پیدا کنید. بسیاری از افزونه ها رایگان هستند.

    انتخاب معماری بازی یکی از مهمترین تصمیمات قبل از شروع توسعه است. بازی‌های زیادی با موضوعات مشابه را مطالعه کردیم و به این نتیجه رسیدیم که گزینه ایجاد صفحه‌های مختلف در صحنه‌های مختلف برای ما مناسب نیست. این اجازه نمی‌دهد که جابجایی بین صفحه‌ها به نرمی نیاز داشته باشد و افزودن ترانزیشن‌ها هنگام تغییر آن‌ها را بسیار دشوار می‌کند.

    ما چیزی شبیه به صحنه ها را اجرا کردیم اما با امکانات خودمان. ما یک مدیر صفحه داریم که دستگاه حالت خود را دارد که می تواند بین صفحه نمایش جابجا شود. هر صفحه یک رابط با متدهای Hide و Show پیاده سازی می کند و دارای چندین رویداد از نوع OnShow، OnHide است. این به ما امکان استفاده از Mecanim را برای ایجاد انیمیشن‌های انتقال صفحه نمایش داد و کار با آنها را آسان‌تر کرد.

    در ابتدای توسعه، ما با یک انتخاب دشوار روبرو بودیم: از کتابخانه های شناخته شده ای استفاده کنید که توسعه دو بعدی را ساده می کنند (به عنوان مثال، ngui)، یا ریسک کنید و سعی کنید همه چیز را با استفاده از سیستم Unity UI تازه ظاهر شده پیاده سازی کنید. ما دومی را انتخاب کردیم و تقریباً پشیمان نشدیم، اگرچه در نهایت بازی ترکیبی از sprite (در خود گیم‌پلی استفاده می‌شود) و canvas (استفاده شده در منو، هدر، راهنمای ابزار) بود.

    برنامه فوق العاده ساده است. در مجموع 7 صفحه بازی وجود دارد که مربوط به 7 کنترلر است - MonoBehaviour. از یک طرف، آنها مشترک رویدادهایی از اشیاء نامرئی هستند، به عنوان مثال، رویدادهای فروشگاه بازی. از طرف دیگر در صورت لزوم پنجره ها و دیالوگ های پاپ آپ ایجاد می کنند، صداها و موسیقی را کنترل می کنند.

    کمی در مورد کتابخانه های مورد استفاده. ما افزونه ها را بر اساس ویژگی های زیر انتخاب کردیم:

    ● افزونه در حال توسعه است، یک انجمن وجود دارد - یونیتی ثابت نمی ماند، نمی خواهید با مشکل ناسازگاری نسخه قدیمی افزونه با یونیتی جدید و عدم تمایل توسعه دهندگان برای ارتقای افزونه مواجه شوید. ;

    ● این افزونه رایگان است یا یک نسخه "رایگان" (اشتراک گذاری) برای آزمایش وجود دارد - خرید یک افزونه فقط برای درک اینکه مناسب نیست برای ما مناسب نیست.

    ● منبع باز - پیش نیاز نیست، اما بسیار مطلوب است. گاهی اوقات شما نیاز فوری به رفع برخی از باگ های پیدا شده دارید، و صرف یک هفته منتظر تغییرات از سوی توسعه دهندگان همیشه امکان پذیر نیست.

    برای ذخیره داده ها، ما از JSON استفاده می کنیم که به راحتی با چشمان شما قابل مشاهده است و به راحتی از ویرایشگر واکنش صادر می شود. برای کار با JSON در داخل یونیتی، انتخاب ما بر روی JSONObject قرار گرفت - همه چیز مورد نیاز شما را دارد و سرعت عملیاتی نسبتاً بالایی دارد؛ به طور خودکار لیستی با سابقه واکنش شامل 2-3 هزار عنصر را در کمتر از یک ثانیه پردازش می کند. .

    حالت همهجانبه اندروید- این یک پلاگین بسیار کوچک اما بسیار مهم است که غوطه ور شدن بازیکن را در بازی افزایش می دهد. بر این اساس زمان صرف شده در بازی افزایش می یابد. این یک افزونه مورد نیاز برای اندروید است، بنابراین مجبور شدم کمی در منابع جستجو کنم و "#if UNITY_ANDROID" را اضافه کنم: بدون آنها، پلاگین با ساخت پروژه برای iOS تداخل داشت. حالت Immersive حالتی است که در آن برنامه شما به صورت تمام صفحه به کاربر نشان داده می شود، در حالی که هیچ پنل سیستمی از جمله نوار ناوبری قابل مشاهده نیست.

    فیس بوکمی تواند به عنوان یک راه حل جهانی استفاده شود. پیوند دادن یک بازیکن به حساب فیس بوک به شما امکان می دهد دستاوردها را از طریق Graph API منتشر کنید. علاوه بر این، از رسانه های اجتماعی می توان برای ارتباط با پخش کننده استفاده کرد. در صورتی که یک پخش کننده چندین دستگاه (به عنوان مثال، یک لپ تاپ ویندوز، یک تبلت اندروید و یک تلفن iOS) داشته باشد، مجوز دادن از طریق شبکه های اجتماعی راحت تر است. تیم FB با انتشار یک افزونه برای Unity، زندگی را برای توسعه دهندگان بسیار آسان کرده است. مجوز/اشتراک گذاری - همه چیز خارج از جعبه کار می کند.

    DOTween- همه انیمیشن های داخل برنامه با استفاده از Unity استاندارد، Mecanim و گاهی اوقات انیمیشن های قدیمی ساخته می شوند، اما حرکت عناصر به صورت مارپیچی در حین واکنش ها با پلاگین های شخص ثالث آسان تر است؛ برای این، قبل از شروع حرکت، چندین مورد نقاطی ایجاد می شوند که DOTween مسیری را برای حرکت شی ایجاد می کند.

    سوملا- "ویترین"، که به شما امکان می دهد برنامه را همزمان به چندین "بازار" متصل کنید: Google بازار بازی, iTunes App Store, Amazon Appstore, Windows Phone Store. به نظر ما، این تنها افزونه ای است که پشتیبانی از بسیاری از فروشگاه ها را ترکیب می کند، جامعه خوبی دارد، به سرعت در حال توسعه است و همچنین رایگان است.

    از کتابخانه برای ترجمه برنامه استفاده شد محلی سازی هوشمند. منابعی در Github وجود دارد، بسیاری از نظرات مثبت در فروشگاه دارایی. صادرات/واردات به csv وجود دارد، تقریباً بدون هیچ نظری کار می کند. در ابتدا، ترجمه عناصر در ویرایشگر عنصر انجام شد، اما سپس یک صادرات به سرعت در XML نوشته شد که برای SmartLocaliztion قابل درک بود.

    Response.addHeader("Content-Type"، "text/xml; charset=utf-8") def xml = new MarkupBuilder(response.writer) xml.root() ( برای (def o: objects) ( data([" name": o.key، "xml:space": "Reserve"]) ( value(o.value) ) ) answer.writer.flush()
    سپس ترجمه ها به محیط Unity وارد شده و در سایت ویرایش شدند. به لطف این، می توان دید که آیا متن ترجمه شده در جایی خارج از محدوده است یا خیر و در نهایت همه چیز چگونه به نظر می رسد.

    شیوه هنری

    پس از مشخص شدن لیست عناصر بازی، دو نفر از هنرمندان ما شروع به کار بر روی طراحی گرافیک کردند.

    اولین قدم ترسیم چند طرح از پنجره های بازی برای تصمیم گیری در مورد ظاهر بازی بود. در نتیجه، رنگ‌های اصلی در طراحی بازی، رنگ‌های خاکستری روشن و خاکی بود، به طوری که متن کوچک به راحتی قابل خواندن بود، تصاویر روی پس‌زمینه روشن به وضوح قابل مشاهده بودند و سایه‌های سبز تداعی‌هایی را در بازیکن با یک مخزن برانگیخت. موضوع.

    با انتخاب یک سبک بصری مناسب، شروع به ترسیم پنجره های رابط باقی مانده و در عین حال کار بر روی تصاویر اشیا کردیم. تصمیم گرفته شد که تانک ها و اشیاء دیگر را به سبک کمیک بوک به تصویر بکشیم تا با مکانیک ساده و حالت کلی بازی مطابقت داشته باشد. برای انتقال تونال، سکته مغزی به جای گرادیان استفاده شد (ما این تکنیک را از تصاویر ادبیات فنی قدیمی قرض گرفتیم). برای اینکه جزئیات کوچک مخزن روی صفحه نمایش گوشی قابل مشاهده باشد، آنها را کمی در تصاویر بزرگتر کردیم؛ سبک انتخاب شده با این موضوع مغایرتی نداشت.







    پس از آماده شدن، محتوای گرافیکی به برنامه نویسان منتقل شد و به طور معجزه آسایی در بازی ظاهر شد. روز به روز تعداد عناصر بازی بیشتر می شد. پس از آن، هر تانک یک الگوی استتار به دست آورد که گرافیک بازی را متنوع کرد.

    تمامی انیمیشن های بازی در یونیتی ساخته شده است که هم مناسب برنامه نویسان و هم برای هنرمندان است. هنرمندان از راحتی کار با یک پنجره زمانی مشابه با Adobe AfterEffects یا Photoshop CS6 خوششان می آمد و برنامه نویسان از عدم نیاز به جستجوی راه هایی برای وارد کردن انیمیشن به Unity خوششان می آمد.

    صداپیشگی

    در ابتدای توسعه، صداگذاری و موسیقی را از پروژه دیگر خود گرفتیم. ما نسخه نهایی را از یک فریلنسر سفارش دادیم. وقتی اولین گزینه های صداگذاری را ارائه کرد، معلوم شد که صداها از نظر مدت زمان متفاوت هستند. بدتر از همه، مدت زمان آنها با صداهایی که ما استفاده می کردیم متفاوت بود و بنابراین مناسب انیمیشن نبود. در این مرحله به فریلنسر اپلیکیشنی با مجموعه صداهای ارائه شده دادیم. پس از آن، تمام صداها برای مدت زمان و حجم نرمال شدند و چندین ایده جدید برای صداگذاری پیشنهاد شد.

    آمادگی شماره 1 و رهاسازی

    در نتیجه با ترکیب همه این قسمت ها به بازی خود رسیدیم. سپس، برنامه مونتاژ شده برای آزمایش عبور از آتش و آب ارسال شد. آزمایش بر روی بیش از 30 دستگاه مختلف انجام شد. در نتیجه، مجبور شدیم برخی از تصاویر را فشرده کنیم، زیرا به هر حال فقط هنرمند می توانست تفاوت را با چشم متوجه شود - این باعث صرفه جویی در حدود 40 مگابایت رم در ما شد. سپس تصاویر عناصر را با شیت های اسپرایت ترکیب کردیم که تعداد تماس های قرعه کشی را از 430 به 80 ~ کاهش داد. اضافه شدن حذف اشیاء واقع در خارج از صحنه، اگرچه قابل مشاهده نبودند، اما هر یک از آنها فراخوانی های قرعه کشی اضافی را اضافه کردند. این بازی در حال حاضر روی آیفون 4 به خوبی اجرا می شود و بر روی اندروید با 512 مگابایت رم اجرا می شود.

    اکنون که آزمایش‌کنندگان هوشیار و دقیق از همه چیز راضی هستند، تنها چیزی که باقی می‌ماند این است که برنامه را در پلتفرم‌های معاملاتی مختلف آپلود کرده و منتظر لحظه هیجان‌انگیز راه‌اندازی باشید.

    سعی کنید خود را در دوران شگفت انگیز نیمه اول قرن بیستم غوطه ور کنید، زمانی که تانک ها از هیولاهای بزرگ به قهرمانان واقعی جنگ تبدیل شدند.



     

    شاید خواندن آن مفید باشد: