PDA

View Full Version : گفتگو: بازسازی مجدد -- بازی شورش در شهر 2 (Streets of Rage 2)



behzadkhan
جمعه 25 مهر 1393, 17:41 عصر
با سلام

چند وفتی هست که در حال ساخت مجدد بازی Streets of Rage 2‌ یا همان شورش در شهر 2 سگا می باشم.

تا یک جاهایی پیش رفتم
بیشتر رو حرکات کاراکتر ها کار کردم.
روی محیط بازی کاری صورت نگرفته.

یک فیلم از بازی گرفته و در سایت آپارات قرار دادم:

لینک:
http://www.aparat.com/v/wOEry

کیفیت ویدیو را پایین آوردم تا همه بتونن ببینن
================================================== =================


لطفا نظر بدید: کمک کنید: نقد کنید:

اونایی که می خوان ببینند که چه جوری این بازی را ساختند
کسایی که می خواستند این بازی یا مشابه آن را درست کنند
در ساخت این گونه بازی ها مشکل دارند
و هر کسی که به ساخت بازی علاقه داره

================================================== =================

بازی کردن بازی های کامپیوتری یک لذتی داره ولی ساخت بازی های کامپیوتری یک لذت دیگه داره

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


با تشکر

ghasem110deh
جمعه 25 مهر 1393, 18:26 عصر
سلام
22 سال پیش یه شرکت بزرگ (در موقع خودش) این بازی رو نوشته !
منم دوست دارم یاد بگیرم ...
یه بار خواستم یه ماشین (عکس) رو توی فرم جابجا کنم و چند تا مانع هم سر راش بزارم ......................
چون خیلی قوی بود همیشه از روی موانع هم رد میشد :قهقهه:

behzadkhan
جمعه 25 مهر 1393, 18:31 عصر
با سلام

زبان برنامه نویسی : c#

کتابخانه گرافیکی : xna

با تشکر

behzadkhan
جمعه 25 مهر 1393, 18:36 عصر
با سلام

ممنون از نظرتون

=================================

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

در صورتی که وقتی من موزیک های زمینه بازی را دانلود کردم در حد پنجاه مگ بود البته در فرمت mp3

با تشکر

behzadkhan
جمعه 25 مهر 1393, 18:47 عصر
با سلام

به نظر دوستان اگر در بازی برای کاراکتر های صداگذاری به زبان فارسی انجام بدم چه تاثیری در مخاطب دارد؟

چند نمونه از دیالوگ هایی که می توان گذاشت:

"جونم داره تموم میشه"

"کشتمش"

"چند نفر به یه نفر"

"برسید به دادم! یکی کمک کنه "

و ...

با تشکر

behzadkhan
جمعه 25 مهر 1393, 19:41 عصر
با سلام

لینک ویدیویی که گذاشتم چه مقدار به نسخه اصلی شباهت دارد.

لطفا نظر بدهید.

با تشکر

vistacali
جمعه 25 مهر 1393, 23:10 عصر
سلام دوست گرامی با سی شارپ میخواهی این رو بنویسی ؟ (خودم قبلا چند تا بازی با سی شارپ برای دوران دانشجویی تهیه کردم ، سوپر ماریو تا چند مرحله اولیه ، تخته نرد ، بازی تشخیص رنگ ها ) بیشتر هم با GDI+ کار کردم ، یک توصیه بهت میکنم براساس تجریه چند ساله من اصلن با سی شارپ سراغ بازی سازی نرو ، اردیبهشت امسال تیم ما توی مسابقات IranGdc2014 (http://irangdc.ir/) خواستیم نوین رفتار کنیم توی بخش 2D با اینکه میتونستیم با گیم انجین هاس مختلفی کار کنیم با سی شارپ کد نویسی کردیم حتی داور ها هم گفتن تا 2 سال اینده اون چیزی که باید بشه رو نمیشه با سی شارپ و کتاب خانه های جانبی تهیه کرد ، والا راست میگفتن ابزار کار برای بازی سازی خیلی مهم است ، برو سراغ cry engin و یا Unity خودم بیشتر بازUnity کار کردم همه چیز اماده دم دست است .

پیروز موفق و سربلند باشی

behzadkhan
شنبه 26 مهر 1393, 01:39 صبح
سلام دوست گرامی با سی شارپ میخواهی این رو بنویسی ؟ (خودم قبلا چند تا بازی با سی شارپ برای دوران دانشجویی تهیه کردم ، سوپر ماریو تا چند مرحله اولیه ، تخته نرد ، بازی تشخیص رنگ ها ) بیشتر هم با GDI+ کار کردم ، یک توصیه بهت میکنم براساس تجریه چند ساله من اصلن با سی شارپ سراغ بازی سازی نرو ، اردیبهشت امسال تیم ما توی مسابقات IranGdc2014 (http://irangdc.ir/) خواستیم نوین رفتار کنیم توی بخش 2D با اینکه میتونستیم با گیم انجین هاس مختلفی کار کنیم با سی شارپ کد نویسی کردیم حتی داور ها هم گفتن تا 2 سال اینده اون چیزی که باید بشه رو نمیشه با سی شارپ و کتاب خانه های جانبی تهیه کرد ، والا راست میگفتن ابزار کار برای بازی سازی خیلی مهم است ، برو سراغ cry engin و یا Unity خودم بیشتر بازUnity کار کردم همه چیز اماده دم دست است .

پیروز موفق و سربلند باشی

با سلام

از پیشنهادتون تشکر می کنم و اونو به خاطر اینکه شخصا بازیسازی کرده اید قبول دارم.
================================================== ========
اما چرا با این وجود این آگاهی به سراغ مواردی که گفتید نرفتم.

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

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

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

همچنین کد های خود را به گونه پیاده کردم که کمتر به زبان و کتابخانه خاصی وابسته باشد تا بتوانم آن را مثلا در Direct SDK هم بسط دهم.

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

================================================== ======

همچنین خوشحال می شوم بدانم که چگونه از GDI+برای ساخت بازی خود استفاده کرده اید

با تشکر

elec60
شنبه 26 مهر 1393, 15:25 عصر
سلام،

خیلی عالیه، سورسشو نمیزارین؟
من چند تا بازی iPad رو با WPF نوشتم و تو قسمت WPF گذاشتم. می خواستم XNA کار کنم ولی چون دیگه پشتیبانی نمیشه و توسعه پیدا نمیکنه بیخیال شدم.

behzadkhan
شنبه 26 مهر 1393, 16:27 عصر
سلام،

خیلی عالیه، سورسشو نمیزارین؟
من چند تا بازی iPad رو با WPF نوشتم و تو قسمت WPF گذاشتم. می خواستم XNA کار کنم ولی چون دیگه پشتیبانی نمیشه و توسعه پیدا نمیکنه بیخیال شدم.

با سلام

درخواست شما حتما انجام می شود منتهی سورس نسخه اولیه که درست کردم را قرار می دهم.

اما به چه دلیل سورس آخرین نسخه قرار قرار داده نمی شود:
=============================================
1- برنامه نویس ها فکر می کنند که یکی می آید و سورس را در یک جای دیگه به اسم خودش تموم می کنه و هیچ اسمی از سازنده اصلی نمی بره.
2- ما ایرانی ها دوست داریم دانشمون را با خودمون به گور ببریم.(زگهواره تا مرگ دانش را به گور بود آن پیرمرد)

اما دلایل واقعی:
3- برای اینکه روند ساخت بازی برای خواننده این تاپیک قابل درک باشد. یعنی بتوانم به صورت مرحله به مرحله بگوییم که بازی را چگونه ساخته ام.
4- انگیزه پیدا کند تا به نسخه حاضر برسد. (از نویسنده بخواهد تا نسخه های بالاتر را قرار دهد.)
5- بتوانم توضیح بدهم که چطور شد تا فلان قسمت از بازی پیاده شد. تا مثلا "بازیکن ها چگونه همدیگر را می گیرند" یا "چگونه به هر ضربه عکس العمل متفاوتی نشان می دهند" احتیاج شد.
6- کسانی که مشکلاتی مشابه دارند به توانند از روش حل من استفاده کنند یا روش حل خود را به من ارائه دهند.
7- ارزش کار سازنده بازی پایین نیاید. چون وقتی آخر کار را نشون داده شود خواننده انگیره ای برای ادامه تاپیک ندارد. در نتیجه سازنده که ارزش کار خود را می داند نام امید می شود و اینگونه کار لوس می شود.
8- خواننده متوجه شود که چرا از این کد استفاده کردم و یا چرا این کد را در ورژن های بعدی استفاده نکردم.
و ...
در واقع شخصا وقتی می بینم که توانسته ام به دانش دوستان کمی بی افزایم. دیگر نگران این نیستم که چرا سورس بازی را آزاد کرده ام.(در واقع هدف اینجانب نیز همین است)

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

همچنین دوست عزیز در صورت امکان لینک بازی های خودتان را در این تاپیک قرار دهید.

با تشکر

behzadkhan
شنبه 26 مهر 1393, 16:31 عصر
وشته شده توسط elec60
می خواستم XNA کار کنم ولی چون دیگه پشتیبانی نمیشه و توسعه پیدا نمیکنه بیخیال شدم.


با سلام

اما چرا XNA:
=========

1- از زبان سی شارپ برای تمام کار هام استفاده می کنم. و xna از سی شارپ پشتیبانی می کند.
2- کار کردن با xna راحت می باشد.

===========

هم چنین درست فرمودید
XNA دیگر پشتیبانی نمی شود.


با تشکر

behzadkhan
یک شنبه 27 مهر 1393, 11:21 صبح
با سلام

نسخه اجرایی 0.1 (اولین کدی که نوشتم) برای دانلود:
لینک اصلی:
124687
124688
124689
124690
124691
124692
124693
124694
124695
124696
124697
124698
124699

لینک کمکی:
http://www.4shared.com/rar/5KTMYEdGba/SOR_v01.html

پیش نیاز ها:
Microsoft XNA Framework Redistributable 4.0

http://www.microsoft.com/en-us/download/details.aspx?id=20914

Microsoft XNA Framework Redistributable 4.0 Refresh

http://www.microsoft.com/en-us/download/details.aspx?id=27598

سیستم عامل:
xp,7

DotnetFramework 3.5 to up

DirectX

کلید های بازی:
============
کلیدهای جهت نما
کلیدهای L,K,J
کلید ESC

در صورت بروز مشکل پیغام بدید.


با تشکر

behzadkhan
سه شنبه 29 مهر 1393, 21:45 عصر
با سلام

اولین سورس بازی آماده شد:
===================================
لینک اصلی:
124786
124787
124788
124789
124790
124791
124792
124793
124794

لینک کمکی:
http://www.4shared.com/rar/KfiMjP-fce/SOR2_v01_Source_Code_.html
=================================================
نیازمندی ها:
Visual Studio 2010
و
C# language
و
Microsoft XNA Game Studio 4.0
لینک:
http://www.microsoft.com/en-us/download/details.aspx?id=23714
و
سیستم عامل:
Xp , 7

کلیدها:
======
کلید های جهت نما
کلید L
کلید ESC

توضیحات:
حالتی ساده ای از بازی که کاراکتر max می تواند راه برود و ضربه مشت بزند. همچنین یک آهنگ در ضمینه پخش می شود.

در صورت بروز مشکل پیغام بدهید.

با تشکر

behzadkhan
شنبه 03 آبان 1393, 19:11 عصر
با سلام

============================================
دوستانی که برنامه را دانلود کردن مشکل یا سوال ندارند.

همچنین

منتظر دانلود و بررسی بقیه دوستان نیز می باشم.

==========================================

از انتقاد؛نظر؛سوال؛راه حل؛ یا هر چیز دیگه ای استقبال می کنم.


با تشکر

amaa_tama
چهارشنبه 07 آبان 1393, 01:36 صبح
جالب بود من که مشکلی ندیدم مثل ساعت کار میکرد برا من .

تلاشت رو ادامه بده کار خوبی رو به نظر من شروع کردی .

behzadkhan
چهارشنبه 07 آبان 1393, 21:57 عصر
جالب بود من که مشکلی ندیدم مثل ساعت کار میکرد برا من .

تلاشت رو ادامه بده کار خوبی رو به نظر من شروع کردی .


با سلام

بابت نظرتان تشکر می کنم.

فکر می کنید اگر این بازی به اتمام رسید و مشابه نسخه اصلی شد.

چه گزینه های را به بازی اضافه کنم.

با تشکر

ERFANHB
یک شنبه 10 اسفند 1393, 17:22 عصر
سلام دوستان اگر در رابطه با موزیک کمکی خواستید من میتونم بهتون کمک کنم و موزیک های بازی رو براتون بسازم من خیلی علاقه من هستم به ساخت موزیک بازی

یکی از نمونه آهنگ های من

http://www.aparat.com/v/LvxJE

negative60
یک شنبه 10 اسفند 1393, 18:13 عصر
با سلام

چند وفتی هست که در حال ساخت مجدد بازی Streets of Rage 2‌ یا همان شورش در شهر 2 سگا می باشم.

تا یک جاهایی پیش رفتم
بیشتر رو حرکات کاراکتر ها کار کردم.
روی محیط بازی کاری صورت نگرفته.

یک فیلم از بازی گرفته و در سایت آپارات قرار دادم:

لینک:
http://www.aparat.com/v/wOEry

با تشکر
هرچند که چند ماهی از ايجاد تاپيک ميگذره اما نظرم رو ميگم شايد مفيد واقع بشه.

کارت خيلی خوب بود گيم پلی بازی هم خيلی شبيه به نسخه اصلی هست
در مورد گويش و موزيک هم بعداً ميتونی تغيرات لازم رو انجام بدی پس اين کارها در اولويت قرار نداره تمرکزت رو روی گيم پلی خود بازی معطوف کن همچنين برای کم حجم کردن صدا ها ميتونی از فرمت ogg استفاده کنيد که از mp3 فشردگی بيشتری داره.
به نظرم اگه ميخوای بازيت موفقيت آميز باشه بايد قسمت مالتی پلير به بازی اضافه کنی که امکان بازی کردن تو شبکه يا اينترنت هم ممکن باشه.
و نظر ديگه ام اينکه دنبال متوری نگرد که #C رو پشتيبانی کنه دنبال موتوری بگرد که قوی و کراس پلتفرم باشه فوقش ياد گيريش چند ماه طول بکشه اما در عوض با ساختن يک بازی ميتونيد خروجی نسخه مبايل و تبلت هم داشته باشيد.

behzadkhan
دوشنبه 11 اسفند 1393, 23:07 عصر
سلام دوستان اگر در رابطه با موزیک کمکی خواستید من میتونم بهتون کمک کنم و موزیک های بازی رو براتون بسازم من خیلی علاقه من هستم به ساخت موزیک بازی

یکی از نمونه آهنگ های من

http://www.aparat.com/v/LvxJE

با سلام

ERFANHB (http://barnamenevis.org/member.php?264093-ERFANHB) جان

مشتاقانه آماده همکاری با شما جهت ساخت موزیک اختصاصی برای بازی می باشم.

در صورتی که تمایل دارید یک پیام خصوصی ارسال کنید.

با تشکر

behzadkhan
دوشنبه 11 اسفند 1393, 23:13 عصر
هرچند که چند ماهی از ايجاد تاپيک ميگذره اما نظرم رو ميگم شايد مفيد واقع بشه.

کارت خيلی خوب بود گيم پلی بازی هم خيلی شبيه به نسخه اصلی هست
در مورد گويش و موزيک هم بعداً ميتونی تغيرات لازم رو انجام بدی پس اين کارها در اولويت قرار نداره تمرکزت رو روی گيم پلی خود بازی معطوف کن همچنين برای کم حجم کردن صدا ها ميتونی از فرمت ogg استفاده کنيد که از mp3 فشردگی بيشتری داره.
به نظرم اگه ميخوای بازيت موفقيت آميز باشه بايد قسمت مالتی پلير به بازی اضافه کنی که امکان بازی کردن تو شبکه يا اينترنت هم ممکن باشه.
و نظر ديگه ام اينکه دنبال متوری نگرد که #C رو پشتيبانی کنه دنبال موتوری بگرد که قوی و کراس پلتفرم باشه فوقش ياد گيريش چند ماه طول بکشه اما در عوض با ساختن يک بازی ميتونيد خروجی نسخه مبايل و تبلت هم داشته باشيد.

با سلام

دوست عزیز

از اینکه متوجه نقطه قوت بازی شده اید خرسند هستم.

همچنین در صورتی که تمایل دارید بیشتر درباره فرمت ogg توضیح دهید.

در مورد مالتی پلیر هیچ تخصصی ندارم. انشاالله بعد از تکمیل بازی این کار انجام خواهد شد.

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

اما فعلا قصد کار با هیچ موتوری را ندارم و می خواهم صرفا از یک کتابخانه (درحال حاضر XNA) استفاده کنم.

همچنین سعی نموده ام تا کدهایم را بگونه ای بنویستم که قابل انتقال به یک زبان و یا یک موتور دیگر را داشته باشد.

=============================================

راهنمایی ها و نظرات دوستان بسیار دلگرم کننده می باشد.

با تشکر