کمک تدریس | مبانی کامپیوتر و برنامه سازی - دانشگاه شهید بهشتی - ترم اول سال تحصیلی ۹۰-۸۹ | پروژه نهایی ۲ | جنگ مرغها ۲۸ دی ۸۹ / استاد احمدی فر / عباس نادری
اخرین به روز رسانی : ۲۸ دی ۸۹

پروژه نهایی دوم

جنگ مرغها


تعداد تیم‌هایی که مجاز به انتخاب این بازی هستند : ۱۵
امتیاز پایه (موارد اجباری) : ۲۲۰

معرفی

جنگ مرغها برداشتیست آزاد از بازی بسیار معروف Worms که در نسخه تحت داس، نسخه Worms Armageddon و Worms World Party ارائه شده است. از آنجایی که کرم به اندازه کافی جذاب نبود، آنرا با مرغ جایگزین کردیم! در این بازی، در سرزمینی که تصادفی ایجاد می‌شود، دو مرغ در دو طرف قرار می‌گیرند و باید با شلیک نارنجک و بازوکا یکدیگر را از پای دراورند (به صورت نوبتی)

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

برای قدرت شلیک حداکثری وجود دارد که وقتی به آن رسید (به صورت نمایشی) خودکار شلیک می‌شود. همچنین برای نارنجک زمان انفجار (یک تا پنج ثانیه) تعیین می‌شود که پس از گذشت آن زمان از شلیک منفجر خواهد شد. مرغها در نوبت خود مقداری زمان دارند (مثل ۴۰ ثانیه) که بر روی زمین حرکت کنند و شلیک کنند. در هر نوبت تنها یک شلیک ممکن خواهد بود. در صورتی که شلیک به جایی به غیر از مرغ بخورد، زمین آنجا را به صورت دایره‌ای نابود می‌کند. همچنین مرغها می‌توانند پرش انجام دهند که به مقداری آنها را به بالا می‌برد و به جلو و به وسیله آن می‌توانند از موانع ساده عبور کنند. در تمام جاهایی که زمین نیست، هوا هست. از ارتفاع خاصی به پایین که در صفحه بازی قرار دارد، آب وجود دارد که اگر کرمها درون آن بیافتند خواهند مرد. هر شلیکی که به مرغی بر خورد کند، بر اساس فاصله محل انفجار از محل قرارگیری مرغ، مقداری از کل جان مرغ کاسته می‌شود. مر تیم می‌تواند از یک تا چند مرغ داشته باشد. بازی دارای دو تیم است. هنگامی که تمام مرغهای یک تیم هلاک شدند، تیم حریف برنده شده است.

نکته : این بازی ممکن است دشوارتر از مابقی بازی‌ها به نظر برسد، ولی اینگونه نیست!

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

امکانات مورد نیاز

تمامی موارد زیر باید در بازی پیاده شوند.

  1. زمین بازی باید از صفحه بزرگتر باشد و مستقیما در آن نگنجد (پیاده سازی scroll)
  2. زمین به صورت خودکار توسط الگوریتمی ایجاد شود. دقت داشته باشید که این الگوریتم می‌تواند چند زمین از پیش تعریف شده داشته باشد و آنها را ارائه دهد یا به صورت تصادفی ایجاد کند. همچنین مرغها باید با فاصله معقولی از یکدیگر در اول مرحله قرار گیرند.
  3. پیاده‌سازی کامل یک مرغ برای هر تیم
  4. امکان راه رفتن و حرکت مرغ‌ها
  5. امکانات کاملی که برای بازوکا و نارنجک در تعریف آمد
  6. کم شدن مناسب جان هر مرغ در صورت اصابت
  7. مرگ صحیح مرغها و تشخیص درست برد (حتی در صورت در آب افتادن)
  8. دریافت نام هردو بازیکن در ابتدا و نمایش آن در کنار مرغهایشان (یا نمایش رنگی خاص که مشخص کند)
  9. انتخاب نوبت اول به صورت تصادفی
  10. پیاده‌سازی کامل زاویه و قدرت شلیک و منحنی‌های حرکت تیرها
  11. انیمیشن حرکت گلوله‌های تیر
  12. وجود پس زمینه
  13. رعایت زمان هر نوبت و اتمام نوبت در صورت اتمام زمان، به همراه نشان دادن آن در قسمتی از صفحه بازی

امکانات امتیازی

  • قابلیت زوم به داخل و به بیرون در بازی
  • انیمیشن حرکت مرغها
  • پرش مرغها
  • امکان انتخاب تعداد مرغ برای هر تیم
  • ایجاد زمین به وسیله بافت (texture)
  • پس زمینه متحرک و زنده به صورت Parallox Scrolling
  • موسیقی و افکت‌های صوتی، مخصوصا برای مرغها!
  • تاثیر گذاشتن انفجارها بر روی زمین بازی (تخریب زمین)
  • پیاده‌سازی باد
  • منوی انتخاب موارد مطرح شده قبل از شروع بازی
  • عدم امکان بالا رفتن از زمین‌هایی که شیبشان بیش از مقدار معقولی است
  • تنظیمات فعال و غیر فعال کردن صوت
  • امکان بازی با ماوس و کیبورد (هر کدام به تنهایی مکفی باشد)
  • هرگونه خلاقیت دیگری که بازی را جذاب کند

بازگشت

Site Footer

Sliding Sidebar