بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
بازی انلاین
سلام دوستان اگه من میخواهم بازی انلان بسازم و در اون اطلاعات رو روی سرور ذخیره کنم. اطلاعاتی مثل رتبه شخص در بازی و... برای این اموزشی سراغ دارید که برای اندروید استودیو مشاهده کنم . در ضمن تا حالا بازی انلاین نساختم و فکر کنید از صفر میخوام شروع کنم مرسی ممنون
+1
0
سلام.
احتمالا یه گیم سرور نیاز دارید که در ساده ترین حالت اگر فرض کنیم منطق بازی رو سمت کلاینت هندل کنین باید یه سیستم message passing باشه که یه سری پیام رو شما از طریق سوکت به سرور ارسال میکنین و یه سری پیام دریافت میکنین و با توجه به این پیاما کارای مختلفی انجام میدین.
مثلا در یک بازی turn based (نوبتی) فرض کنین یه بار نوبت منه که کارت بندازم یه بار نوبت شما. این که من چه کارتی انداختم به صورت یه پیام میره سرور و از سرور منتقل میشه در قالب یک پیام به شما و توی صفحه نشونش میدین.
برای این سیستم به جهت سادگی و اینکه در شروع سرعت خیلی حیاتی نیست میتونین از JSON استفاده کنین. یعنی پیام ها رو با فرمت جی سان انتقال بدین بجای باینری.
البته باید بگم گیم سرورهای رایگان زیادی هست. یه مثال واقعا سریع و خوبش گیم سرور Nakama هست. که با همین سیستم بالا پیاده شده (راستش همه همینن). امکان نوشتن منطق سمت سرور هم داره البته.
با توجه به اینکه بازی آنلاین یکم کار سختی هم هست مخصوصا اگه Real Time (بلادرنگ) باشه نوع بازیتون (مثل یه بازی مسابقه ماشین آنلاین). پیشنهاد میدم اول با یه برنامه کوچیک شروع کنین که به یه API متصل میشه و یه کاری انجام میده. مثل ای پی آی گیت هاب که بدون توکن یا ... هم در دسترسه. بعد یاد بگیرین با socket کار کنین. بیشتر بخونین و بخونین و بخونین و کمکم شروع کنین وقتی با این چیزا راحت بودین یه گیم سرور کوچیک بنویسین و یه بازی ساده باهاش پیاده کنین.
برای این میگم یه گیم سرور کوچیک بنویسین که متوجه نحوه کار کل سیستم بشین. چون بعدش میتونین گیم سرور اماده استفاده کنین. اما بازم باید براش کد بزنین.
احتمالا پیشنهاد من زیادی سخت و حوصله سربر به نظر بیاد. اما مسیر معمولا همینطوره. هر چقدر سعی کنیم مسیرو کوتاه کنیم بازم تهش باید همون میزان وقتو گذاشت. :) (5 سال پیش)
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .