آموزش یونیتی-قسمت ششم

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

طراحی بازی

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

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

طراحی بازی ، خیلی پیچیده تر از بررسی این شش وظیفه ذکر شده است . ما زمان نداریم تا به فرایند کامل طراحی بازی بپردازیم بنابراین فقط همین اجزای اولیه از بازی را طراحی خواهیم کرد . بازی ما Colt Farmer Little نام دارد . این بازی یک کشاورز جوان به نام Colt را نشان می دهد که باید یک مزرعه را مدیریت کند . اجازه دهید به اجزای این بازی بپردازیم.

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

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

  • ماموریت ۱ : یادگرفتن نحوه کاشت زمین . بازیکن ، این ماموریت را توسط صحبت با یک کشاورز سالخورده ، انجام خواهد داد.
  • ماموریت ۲:  پرورش جوجه ها . این کار توسط جمع آوری دانه و آب و تغذیه جوجه ها انجام خواهد شد.
  • ماموریت ۳:  پرورش گرازها . این کار نیز مثل پرورش جوجه ها توسط فراهم کردن غذا و آب انجام می شود .
  •  


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

 

آموزش یونیتی-قسمت ششم

آموزش یونیتی-قسمت ششم

 

رفتارهای بازیکن

یکی دیگر از اجزای طراحی بازی ، تعریف کارهائی است که بازیکنان قادر به انجام آن خواهند بود . این کارها می تواند شامل راندن یک کشتی ، شلیک یک موشک ، شناکردن ، بالاپریدن و … باشد . در بازی ما ؛ بازیکن قادر به انجام کارهای زیر خواهد بود :

  • راه رفتن در محیط بازی
  • برداشتن دانه
  • برداشتن آب
  • غذادادن به جوجه ها
  • غذادادن به گرازها
  • صحبت با کشاورز مسن

این رفتارها به عنوان فهرستی از چیزهائی است که در بخش های بعدی پیاده سازی می‌کنیم


هوش مصنوعی

هوش مصنوعی [ (AI (Intelligence Artificial ] هنگامی اجرا می شود که ما اشیاء بازی را براساس اشیاء دنیای واقعی برنامه نویسی می کنیم . بازیکن ، Colt  یعنی همان کاراکتر اصلی بازی را کنترل می کند اما برای کاراکترهای دیگر باید هوش مصنوعی را پیاده سازی کنیم . این کاراکترها عبارتند از : کشاورز مسن ، جوجه ها و گرازها.

 ما از کشاورز مسن برای نمایش یک سیستم گفتگو و محاوره استفاده می کنیم . بنابراین او هیچ هوش مصنوعی ندارد بلکه براساس انتخاب های Colt ، یک سری پاسخ های از پیش تعریف شده خواهد داشت . مرغ ها و گرازها ، هوش مصنوعی شبیه به هم خواهند داشت . آنها به شکل جوجه و بچه گراز متولد می شوند، با آب و دانه کافی ، بزرگ می شوند و هنگامی که کامل رشد کردند ؛ به صورت خودکار جوجه و بچه گراز تولید مثل می کنند. اگر آب و غذای کافی به آنها نرسد ، می میرند . بنابراین لیست هوش مصنوعی برای این بازی به شکل زیر خواهد

 Colt :

هوش مصنوعی  ندارد.
توسط بازیکن کنترل می شود.

کشاورز مسن :

هوش مصنوعی  ندارد.
توسط سیستم گفتگو کنترل می شود .

جوجه ها:

هوش مصنوعی : خوردن / آشامیدن – رشدکردن و تبدیل به مرغ شدن – مردن
توضیح : چندین نمونه از این شئ در بازی موجود خواهد بود .

مرغ ها:

هوش مصنوعی : خوردن / آشامیدن – تولید مثل جوجه – مردن 
توضیح : چندین نمونه از این شئ در بازی موجود خواهد بود.

بچه گراز:

هوش مصنوعی : خوردن / آشامیدن – رشدکردن و تبدیل به گراز بالغ شدن – مردن
توضیح : چندین نمونه از این شئ در بازی موجود خواهد بود .

گراز بالغ:

 هوش مصنوعی : خوردن / آشامیدن – تولید مثل بچه گرازها – مردن
توضیح : چندین نمونه از این شئ در بازی موجود خواهد بود
آموزش یونیتی-قسمت ششم

وضعیت پایان بازی

بخش پایانی طراحی بازی ، تعیین نحوه پایان بازی است . دو نوع وضعیت پایانی وجود دارد : برد و باخت . وضعیت برد ، هدف نهائی است . ما باید مشخص کنیم که بازیکنان چطور بازی را می برند . در بازی ما شرط پیروزی،  داشتن ۵ مرغ و گراز بالغ است . در بازی های بزرگ تر ، این وضعیت پایانی ممکن است حاکی از پایان مرحله اول باشد .

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

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

منبع: javad arbabi e-book