پارس‌کدرز چگونه کار می‌کند؟

از پارس‌کدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.

پارس‌کدرز خریداران یا کارفرمایان را به مجری‌ها /فریلنسرهای خبره‌ای متصل می‌کند که برای انجام پروژه آماده هستند.

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

چهار سال پیش منتشر شده

تعداد بازدید: 427

کد پروژه: 124306


شرح پروژه

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

فرضیات مساله

بازی شما، یک فایل کانفیگ دارد که از آن مقدار n و m و همچنین تعداد بازیکن های هوش مصنوعی و تعداد بازیکنهای فیزیکی خوانده می شود.

 فرض کنید که دنیای شما به صورت یک ماتریس n*m هست که از هرخانه به خانه ی مجاورش میتوان حرکت کرد.

در این ماتریس هر خانه نماد یک سرزمین می باشد.

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

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

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

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

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

بازی زمانی پایان می یابد که یک بازیکن بتواند کل سرزمین ها را تصاحب کند

بعد از اینکه هر بازیکنی زمیناش بهش داده شده و تو هرکدوم ۱ سرباز هست و نوبتا مشخص شده تازه میرسیم به نوبت اول بازی و نوبت اول بازی استثناء هست از نوبت های دیگه

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

نکته1: به هنگام افزودن سرباز به خانه های خودی میتوان سرباز ها را به چندین خانه اضافه کرد، مثلا ۱۰ سرباز را به خانه ۳،۳ داد و ۵ سرباز را به خانه ۳،۴ و ‌... تا جایی که سرباز ها تمام شوند

نکته ۲: برای حمله اگر خانه خودی ۳۰ سرباز داشته باشد میتوان با ۱۰ تای آن حمله کرد و پس از اتمام حمله، با ۲۰ تای باقی مانده به خانه ای دیگر حمله کرد و ...

این پروژه شامل 1 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.

مهارت ها و تخصص های مورد نیاز


بودجه

100,000 تومان تا 300,000 تومان

مهلت برای انجام

9روز

وضعیت مناقصه

بسته


درباره کارفرما

عضویت چهار سال پیش

1 پروژه ثبت شده ،
0 پروژه در حال انجام ،
0 پروژه آماده دریافت پیشنهاد ،
نرخ پذیرش پیشنهاد 0%

برای پیدا کردن پروژه‌های مشابه ثبت نام کنید و پروفایل خود را بسازید.

ورود با گوگل
یا
نام نباید خالی باشد.
نام خانوادگی نباید خالی باشد.

نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟

سفارش پروژه مشابه

قادر به انجام این پروژه هستید؟

ثبت نام کنید

مهلت ارسال پیشنهاد قیمت برای این پروژه تمام شده است

سری به پروژه‌های مشابه بزنید

روش کار در پارس‌کدرز

به رایگان یک حساب کاربری بسازید

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

به شیوه‌ای که دوست دارید کار کنید

برای پروژه‌های دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصت‌های شغلی منحصر به فرد دسترسی پیدا کنید.

با اطمینان دستمزد دریافت کنید

از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.

می‌خواهید شروع به کار کنید؟

یک حساب کاربری بسازید


بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارت‌های شما است.

پیدا کردن کار (پروژه)

تماشای دمو روش کار