PDA

View Full Version : آموزش: آموزش یک سری موارد موبوط به بازی های تحت وب



mortezagt
چهارشنبه 31 اردیبهشت 1393, 22:08 عصر
سلام به دوستان عزیز
میخوام یه سری موارد موبوط به بازی های تحت وب رو براتون آموزش بدم
یه مدته که دارم روی ساخت یک بازی تحت وب کار میکنم
تقریبا بعضی از اصول ها و موارد اولیه رو با تحقیق کردن ، یاد گرفتم ( البته شاید اشتباه باشن و یا اینکه راه های بهتری هم باشه ) ولی من فعلا این چیزهایی که یاد گرفتم رو خواستم با شما به اشتراک بزارم شاید بدرد شما هم بخوره .

اول از همه باید بدونید من دارم بازی ایکاریم رو از پایه مینویسم و مطمعنا همه این بازی رو میشناسین، ( شبیه به بازی تراوین هستش ) .

این هم ادرسشه : http://ir.ikariam.gameforge.com/

mortezagt
چهارشنبه 31 اردیبهشت 1393, 22:09 عصر
یه مقدمه اول باید در این باره نوشت;

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


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

مثلا :

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

به این صورت :

زمان مورد نیاز برای ساخت ساختمان : 01:30:00
ساعت شروع ساخت : 14:00:00 ق.ظ
زمان پایان ساخت : ساعت شروع ساخت + زمان مورد نیاز برای ساخت ساختمان

----------------------------------------------------------------



حالا تمام موارد بالا در بانک ذخیره شده و برنامه با هر بار ورود بازیکن به بازی، محاسبه میکنه که آیا زمان پایان ساخت از زمان فعلی بیشتره یا کمتر .
اگر که زمان پایان ساخت از زمان فعلی ( زمان حاضر ) کمتر بود، اون ساختمون رو ساخته شده نشون میده.
اگر هم زمان پایان ساخت از زمان فعلی بیشتر بود، میاد زمان فعالی رو از زمان پایان ساخت کم میکنه و نشون میده که تا پایان ساخت این ساختمان مثلا 30 دقیقه دیگه زمان مورد نیاز هستش.

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

به این آدرس سایت منه که میتونید نمونه رو نگاه کنید

http://www.ikairan.ir (http://www.ikairan.ir/default.aspx)

البته کدها رو براتون میزارم ولی سورس کامل سایت همراه با گرافیک و غیره رو معذورم
نگران نباشید

mortezagt
چهارشنبه 31 اردیبهشت 1393, 22:10 عصر
دوستان توجه کنید فعلا فقط در مورد ساختمان ها دارم توضیح میدم و نمونه سایت فقط میتونید ساختمان سازی کنید .
منظورم اینه که منابع و چیزهای دیگه فعلا غیر فعاله

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

ضمنا برای تغییر دادن شهر هم میتونید از قسمت بالای سمت راست کنار دکمه قرمز رنگ که روش نوشته فروشگاه، یه لیست باکس گذاشتم که اسم 4 تا شهر توش هست و با تغییر دادن اون میتونید به فضای خالی شهرهای دیگه هم دسترسی داشته باشید
--------------------

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




اگر که دوستان علاقه داشتن که این بحث رو ادامه بدم لطفا اعلام کنن

1100182985
یک شنبه 25 خرداد 1393, 15:02 عصر
سلام خدمت شما
من برای پایان نامم یک سایت بازی آنلاین باید طراحی کنم خواهشا اگه آماده دارید همراه با سورس کد تماس بگیرید ممنون میشم
منتظرتون هستم09133384861 رهنما

aroshanzamir
یک شنبه 25 خرداد 1393, 15:34 عصر
سلام دمت گرم خیلی خوبه ادامه بدی ممنون میشم

mama13
یک شنبه 25 خرداد 1393, 23:09 عصر
سلام من میخوام یه باز انلاین تو سبک کانتر طراحی کنم میتونین کمکم کنید

mortezagt
سه شنبه 27 خرداد 1393, 09:40 صبح
سلام خدمت شما
من برای پایان نامم یک سایت بازی آنلاین باید طراحی کنم خواهشا اگه آماده دارید همراه با سورس کد تماس بگیرید ممنون میشم
منتظرتون هستم09133384861 رهنما

فقط یکی دارم و اون هم دارم تکمیلش میکنم و اینکه نمیتونم سورس رو در اختیار کسی قرار بدم
شما باید یکی طراحی کنی ولی هر جایی که مشکل داشتی بهم پیام بده تا کمکت کنم


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

باشه ادامه میدم ولی نمیدونم از کجاش شروع کنم برای همین فکر کنم اگر ازم سوال کنید بهتر باشه
ضمنا کلی موارد جدید به بازی اذافه کردم ولی هنوز توی سایت آپلود نکردم که بتونید ببینید

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


سلام من میخوام یه باز انلاین تو سبک کانتر طراحی کنم میتونین کمکم کنید

با asp.net که نمیشه همچین چیزی رو ساخت
شما باید با فلش این رو طراحی کنی یا Unity

weblox
جمعه 10 مرداد 1393, 23:37 عصر
توی تئوری که فرمودین بعد از ورود کاربر محاسبات را انجام میده آن وقت این مسئله در مورد منابع هم صدق میکنه؟
مثلا توی تراوین هر ساعت مقداری به منابع اضافه میشه و احتمال داره که هر لحظه حتی در زمان آفلاین بودن به شما حمله بشه آنوقت تکلیف منابع چه خواهد شد؟
فکر می کنم منابع جدا از این مبحث باشه.

mortezagt
شنبه 11 مرداد 1393, 01:40 صبح
توی تئوری که فرمودین بعد از ورود کاربر محاسبات را انجام میده آن وقت این مسئله در مورد منابع هم صدق میکنه؟
مثلا توی تراوین هر ساعت مقداری به منابع اضافه میشه و احتمال داره که هر لحظه حتی در زمان آفلاین بودن به شما حمله بشه آنوقت تکلیف منابع چه خواهد شد؟
فکر می کنم منابع جدا از این مبحث باشه.

بله صدق میکنه

خوب دقت کن

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

حالا فرض کنید 2 تا بازیکن داریم به نام محمد و علی

محمد کسیه که میخواد علی رو غارت کنه

منابعی که علی داره شامل : 10 تا دونه چوبه.
تولید منابع علی در هر ساعت، 2500 عدده
علی الان آفلاین هستش و بازی نمیکنه
آخرین ورود علی به بازی مثلا 3 ساعت پیش بوده.
پس یعنی اگر علی بعد از 3 ساعت به بازی برگرده، باید 7510 عدد چوب داشته باشه
درسته ؟
علی هنوز به بازی سر نزده و قطعا فعلا در بانک اطلاعاتی بازی، میزان چوب علی همون 10 تا دونه هست .
---------------------------
آقا محمد میره که علی رو غارت کنه
وقتی محمد موفق میشه که نیروهای علی رو شکست بده تا بتونه منابع علی رو غارت کنه، (( اینجا رو خوب دقت کن )) ساعت غارت شدن شهر علی، میشه ساعت آخرین فعالیت علی در بازی و طبق همین ساعت، ابتدا منابع علی از آخرین فعالیتش در بازی یعنی 3 ساعت پیش تا این لحظه که غارت شده، حساب میشه و اون 7500 عدد چوب بابت این 3 ساعت تولیدش، به شهر علی اذافه میشه و در آخر توسط محمد غارت میشن . :تشویق:
-------------------------------------------------------
بصورت خلاصه :
علی 10 تا دونه چوب داشته و از بازی خارج میشه
تولید چوب علی در هر ساعت 2500 تا دونه چوب بوده .
محمد به علی حمله و غارتش میکنه.
علی در آخرین حضورش توی بازی یعنی 3 ساعت پیش فقط 10 تا چوب داشته و قطعا اون 7500 عدد چوبی که در این 3 ساعت تولید داشته، پس از ورودش به بازی محاسبه میشه و در بانک اطلاعاتی ثبت میشه .

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

Binazir Gharibi
پنج شنبه 23 مرداد 1393, 00:55 صبح
فکر نمیکردم بجز زدن توی برجک دیگران، بازی انلاین هم بلد باشی بسازی:کف:
میشه بیشتر ادامه بدی ؟
خیلی جالب داره میشه برام

Binazir Gharibi
پنج شنبه 23 مرداد 1393, 01:02 صبح
تا اونجایی که فهمیدم زمانبندی خیلی مهمه و تمام محاسبات بر اساس اخرین خروج تا ورود مجدد هستش
یعنی مثلا در ساعت 20:30:00 کاربر از بازی خارج میشه و در ساعت 23:00:00 وارد بازی میشه

پس تمام محاسبات ( تولید منابع، ساختمان های در حال احداث) روی این 2 ساعت و نیم صورت میگره :متفکر: