PDA

نسخه کامل مشاهده نسخه کامل : طراحي بازيهاي دوبعدي (فعلا دوبعدي) بدون نياز به كدنويسي



Prince_ of _Persia
21-03-2006, 07:27
سلام. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

سال نو مبارك [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

من مي خواهم به عنوان هديه سال نو خودم به شما آموزش طراحي بازيهاي دو بعدي با نرم افزار معروف Game Maker را بدهم.
با اين آموزش شما براحتي خواهيد توانست بدون کد نویسی [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] در عرض 5 دقیقه اولین بازی خودتونو طراحی کنید.
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
نظرتون چیه؟

سریع نظر بدین تا کارمو شروع کنم.

K053_LSH_KV90
21-03-2006, 07:51
خب بگو استفاده كنيم حتما بايد نظر داد

hippo
21-03-2006, 10:11
لطفاً شروع كن
اگه به صورت pdf باشه (با عكس) خيلي بهتره

Prince_ of _Persia
22-03-2006, 07:04
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] 120

بسيار خوب . با نام خدا شروع مي كنم. اول مي توانيد نرم افزاري رو مي گم به همراه چند pack که شامل موسیقی اسپرایت و تصاویر پس زمینه برای ساخت بازی است از [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] دانلود کنید. هنگامی که این نرم افزارو بر روی سیستم خود نصب کنید به همراهش چندین فایل gif و صوتی و مثال های open source از بازی به همراه نرم افزار نصب می شود. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


خوب حالا آموزش طراحی بازی :

مقدمه : چگونه يك بازي را طراحي كنيم [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ؟

بازي كردن بازيهاي كامپيوتري جالب است. اما در حقيقت جالب تر اينست كه بازيهاي كامپيوتري را خودتان طراحي كنيد و اجازه دهيد ديگران با آنها بازي كنند. متاسفانه ساختن بازيهاي كامپيوتري آسان نيست. بازيهاي كامپيوتري تجاري كه شما امروزه ميخريد معمولآ يك تا سه سال براي ساخت توسط تيمي از كشورهاي مختلف كه بين 10 تا 15 نفر هستند زمان ميبرد. مخارج اينگونه بازيها به آساني به چندين ميليون دلار ميرسد. و تمام اين افراد بسيار با تجربه هستند: برنامه نويسان , طراحان هنري , تكنسين هاي صوتي و ... .

پس اين به معناست كه ساخت بازي كامپيوتري توسط شما غير ممكن است [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ؟ خوشبختانه خير [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ، البته شما نبايد توقع داشته باشيد كه بازيهايي مثل Quake يا Age of Empires را آن هم در مدت چند هفته بسازيد. البته اين هم لازم نيست. بازيهاي كامپيوتري آسانتري مثل Tetris، Pacman، Space Invaders و... نيز همچنين براي بازي جالب و براي ايجاد آسانتر ميباشند. متاسفانه آنها هنوز به مهارتهاي برنامه نويسي براي كنترل گرافيك ، صدا ورابط كاربري نياز دارد.

در اينجا از نرم افزار Game Maker استفاده ميشود. نرم افزار Game Maker براي بسيار آسانتر نمودن طراحي بازيها طراحي شده است. احتياجي به برنامه نويسي نميباشد خيلي راحت و مستقيمآ بوسيله رابط كاربري drag-and-drop ( كشيدن و رها نمودن ) به شما اجازه ميدهد تا بازي كامپيوتري خود يسرعت
براحتي object ها ( اشياء ) را در Game Maker تعريف مينماييد و رفتار آنها را مشخص مينماييم. شما ميتوانيد room ها ( اتاقهاي بازي ) جذابي با پس زمينه قابل پيمايش اضافه كنيد كه بازي در آن رخ ميدهد. و اگر شما احتياج به كنترل كاملتري بر روي بازي داريد زبان برنامه نويسي با استفاده آسان داخلي Game Maker بدين منظور در نرم افزار طراحي شده كه كنترل تمام اتفاقاتي كه در بازي رخ ميدهد را به شما ميدهد.

Game Maker به بازي دو بعدي ، نه به بازيهاي سه بعدي مانند Quake ، توجه دارد. اما اين نبايد شما را نااميد كند. خيلي از بازيهاي معروف ، مثل Age of Empires ، Command & Conquer ، و Diablo از تكنولوژي تصاوير متحرك دو بعدي استفاده ميكنند حتي با اينكه به ظاهر سه بعدي به نظر ميرسند. و همچنين طراحي بازيهاي سه بعدي راحتتر و سريعتر است.

در پوشه GameMaker پوشه های زیر وجود دارد :

examples: شامل تعدادي مثال از بازيها براي شما ميباشد تا آن ها را تست كنيد ياتغيير دهيد.

Lib: شامل كتابخانه هايي از actions ( واكنش ها ( ميباشد. اگر شما ميخواهيد كتابخانه واكنش هاي جديدي را نصب كنيد بايد آنها را در داخل اين پوشه قرار دهيد.

Sprites: اين پوشه شامل sprite ( تصاوير متحرك ) هايي است كه ميتوانيد از آنها در برنامه استفاده نماييد. با نصب برنامه Game Maker در اين پوشه فقط تعدادي sprite وجود خواهد داشت ولي شما ميتوانيد از وب سايت Game Maker بسته هاي resource (منبع) را دانلود كنيد كه شامل sprite ها اصوات و موزيك هاي پس زمينه و تصاوير پس زمينه و موارد اضافي ديگري ميباشد.

Backgrounds , Sounds : پوشه هايي كه هم معنا با نامشان داراي فايل هاي پس زمينه و اصوات ميباشند.

Game Maker براي اجرا به كامپيوتر پيشرفته پنتيومي كه ويندوز 98 ، Me ، XP يا بالاتر را اجرا كند نياز داريد. وهمچنين به حداقل وضوح تصوير 600*800 با 65000 (16bit) رنگ و Directx كه بر روي سيستم نصب باشد احتياج داريد. هنگامي كه بازي را طراحي يا تست ميكنيد به حافظ بالايي ( حداقل MB 32 يا ترجيحآ بيشتر) احتياج داريد. هنگامي كه فقط بازي ها را اجرا ميكنيد به حافظه كمتري احتياج است و مقدار حافظه مورد نياز بستگي به تعداد عناصر موجود در بازي دارد.


یک بازی از چند قسمت تشکیل شده است که مهمترین آنها عبارتند از :

1. sprite : که تصاویر متحرک یا ثابتی هستندکه به عنوان کاراکترهای بازی استفاده می شوند.
2.background : تصاویر پس زمینه ای هستند که برای بک گراند room ها بکار می روند.
3.sound : اصواتی بازی شامل موسیقی و افکت های صوتی
4. objects : آبجکت یا همان اشیای بازی ، این ها روح و مغز متفکر اسپرایت های هستند در حقیقت اسپرایت ها شکل ظاهری و اشیا طرز رفتار و واکنش آنها در بازی هاست.
5.room : مکان هایی که بازی در آنها اجرا می شود.

به قسمت های بالا resource گفته می شود .

Prince_ of _Persia
22-03-2006, 07:17
طرح کلی برای طراحی بازی :

قبل از اينكه درباره توانايي هاي Game Maker صحبت كنيم خوب است كه درباره طرح كلي برنامه بحث نماييم. بازي هاي ساخته شده بوسيله Game Maker در يك يا چند room رخ ميدهد.( room ها مسطح و دوبعدي ميباشند اما ميتوانند شامل گرافيك هايي باشند كه سه بعدي به نظر برسند ). شما در اين room ها objects (اشياء) را قرار ميدهيم كه در برنامه تعريف نموده باشيد. Object هاي متداول ديوارها ، توپهاي متحرك ، شخصيت اصلي ( main character ) ، غول ها ( monsters ) و غيره ميباشند. بعضي از object ها مثل ديوارها فقط در room ها قرار ميگيرند و هيچ حركتي انجام نميدهند. Object هاي ديگر مثل شخصيت اصلي در اطراف حركت ميكنند و نسبت به ورودي هاي درافتي از كاربر ( مثل فشرده شدن كليدي از صفحه كليد ، ماوس يا جوي استيك ) و يا برخورد با هريك از اشياء ديگر واكنش نشان ميدهند. به عنوان مثال هنگامي كه كاراكتر اصلي با يك غول برخورد ميكند بايد بميرد. Object ها مهمترين اجزاء بازي هايي هستند كه با Game Maker طراحي ميشوند. پس اجازه دهيد در مورد آنها بيشتر بحث كنيم:

در ابتداي object ها به تصاويري نياز دارند كه باعث شود آنها در صفحه نمايش داده شوند. اين چنين تصاويري اسپرايت ناميده ميشوند. يك اسپرايت معمولآ يك تصوير تنها نيست بلكه مجموعه اي از تصاوير است كه يكي بعد از ديگري نمايش داده ميشوند تا يك انيميشن را ايجاد نمايند. با اين روش اين طور به نظر ميرسد كه كاراكتر راه ميرود ، يك توپ ميچرخد ، سفينه فضايي منفجر ميشود و ... . در طي بازي اسپرايت يك آبجكت به خصوص ميتواند نغيير كند ( بطوري كه كاراكتر هنگامي كه به سمت چپ يا راست حركت ميكند متفاوت بنظر برسد ). شما ميتوانيد اسپرايت خودتان را طراحي كنيد ( بوسيله Game Maker يا لود كردن آنها از فايل مثلآ فايلهاي تصاوير متحرك gif ).

برخي از اتفاق ها براي آبجكت ها رخ خواهد داد كه چنين اتفاقاتي رويداد ( event ) ناميده ميشود. ابجكت ها مي توانند در قبال اين رويداد ها واكنش نشان دهند. تعداد زيادي از رويدادهاي متفاوت وجود دارند كه رخ ميدهند و تعداد زيادي واكنش وجود دارند كه شما مي توانيد بگذاريد آبجكت ها بگيرند. براي مثال يك رويداد creation (خلق) براي هنگامي كه آبجكت ها ايجاد ميشوند وجود دارد. ( براي اينكه دقيقتر گفته باشيم هنگامي كه يك instance (نمونه) خلق ميشود؛ ممكن است چندين نمونه از يك آبجكت موجود باشد.)
به عنوان مثال هنگامي كه آبجكت توپ ايجاد ميشود به آن action (واكنش) حركتي نسبت دهيم. مثل اينكه توپ در حال حركت است. هنگامي كه دو آبجكت با هم برخورد ميكنند رويداد collision رخ ميدهد. شما ميتوانيد در اين حالت واكنش ايستادن يا حركت در جهت معكوس را نسبت دهيم. شما همچنين ميتوانيد يك افكت صوتي را به آن نسبت دهيد.

براي انجام اين كار Game Maker به شما اجازه مي دهد تا افكت هاي صوتي را تعريف كنيد. هنگامي كه بازيكن يك كليد صفحه كليد را فشار مي دهد يك رويداد keyboard بوجود مي آيد و آبجكت ميتواند واكنش مناسبي مانند حركت در جهت تعيين شده را انجام دهد. من اميدوارم كه طرز كار را فهميده باشيد. براي هر آبجكتي كه شما طراحي مي نماييد ميتوانيد واكنشهايي براي رويدادهاي متفاوت مشخص كنيد. در اين روش شما رفتار آبجكت را تعيين ميكنيد.

هنگامي كه شما آبجكت هاي خود را تعريف نموديد وقت آن است كه room ها را كه آنها در آن جان مي گيرند را تعريف كنيد. Room ها مي توانند براي مرحله هاي بازي شما يا بررسي مكانهاي متفاوت استفاده شوند. واكنش هايي براي حركت از room اي به room ديگري وجود دارد. Room در ابتداي همه داراي يك پس زمينه مي باشد. اين پس زمينه ها مي توانند يك رنگ ساده يا يك تصوير باشد. چنين تصاويرپس زمينه اي در Game Maker ايجاد شوند يا شما ميتوانيد آنها را از فايل لود كنيد. (پس زمينه ها ميتوانند كارهاي زيادي انجام دهند ولي براي اكنون فقط مطلع باشيد كه آنها چيزي هستند كه room را زيباتر مي كنند. ) بعد شما مي توانيد آبجكت ها را در room قرار دهيد. شما مي توانيد چندين نمونه از آبجكت يكساني را در يك room قرار دهيد. پس به عنوان مثال شما نياز داريد كه فقط يك آبجكت ديوار را تعريف كنيد و مي توانيد از آن در جاهاي بسياري استفاده كنيد. همچنين شما مي توانيد چندين نمونه از آبجكت يكساني داشته باشيد ، زماني كه آنها بايد رفتار يكساني داشته باشند.

اكنون شما براي اجراي بازي آماده هستيد. Room ابتدايي نمايش داده ميشود و آبجكت ها به سبب واكنش هايشان در رويداد creation حيات مي يابند. آنها شروع به واكنش نشان دادن به يكديگر به سبب واكنشهايشان در رويداد collision ميكنند. آنها ميتوانند با استفاده از واكنشهايشان در رويداد mouse يا keyboard خود نسبت به بازيكن نشان دهند.

بنابراين بطور خلاصه موارد ذيل ( اغلب منبع يا ابزار ( resource) ناميده ميشوند ) نقش مهمي را ايفا كنند:

آبجكت ها: كه در حقيقت نهاد و هستي بازي هستند.

Room ها : كه مكانهايي ( مرحله هايي ) هستند كه بازي در آنها حيات مي يابد.

اسپرايت ها : تصاوير ( متحرك ) اي هستند كه براي نمايش آبجكت ها مورد استفاده قرار مي گيرند.

صوت ها: اين موارد مي توانند به عنوان افكت صوتي يا موزيك پس زمينه در بازي استفاده شوند.

تصاوير پس زمينه: اين تصاوير به عنوان پس زمينه براي بازيها استفاده مي شوند.

Prince_ of _Persia
22-03-2006, 07:33
طراحی اولین بازی [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

در ابتدا خوب است به ساخت يك مثال بسيار ساده نگاهي بيندازيم. در اينجا ما فرض مي كنيم كه شما Game Maker را در حالت simple اجرا نموده ايد. اولين گام تشريح بازي است كه ما مي خواهيم طراحي كنيم. ( شما بايد هميشه اين كار را در ابتدا انجام دهيد ، اين عمل در آينده شما را از اعمال اضافي ديگر بر حذر ميدارد. ) بازي كه ما مي خواهيم طراحي كنيم بسيار ساده است : در اين بازي يك توپ وجود دارد كه بين ديوار ها بالا و پايين مي پرد. بازيكن بايد سعي نمايد تا بوسيله ماوس بر روي توپ كليك كند هر زمان كه موفق شد امتياز ميگيرد.

تا اين جا كه ديديم به دو شي احتياج داريم: توپ و ديوار.ما همچنين به دواسپرايت مختلف احتياج داريم : يكي براي آبجكت ديوار و ديگري براي آبجكت توپ. در انتها به افكت صوتي احتياج داريم كه هنگامي كه روي توپ كليك مي شود اجرا شود. ما فقط از يك room استفاده مي كنيم كه بازي در آن اتفاق مي افتد. ( اگر شما نمي خواهيد اين بازي را خودتان طراحي كنيد ميتوانيد آن را از پوشه Examples با نام ball.gm6 لود كنيد. )

بياييد اسپرايت ها را طراحي كنيم. از منوي add گزينه add sprite را انتخاب كنيد. ( شما همچنين ميتوانيد از دكمه اختصاصي آن در نوار ابزار استفاده كنيد. ) فرمي باز خواهد شد. در فيلد name نام Wall را تايپ كنيد. دكمه load sprite را كليك كنيد و يك تصوير مناسب را لود كنيد. اين تمام كاري بود كه شما بايد انجام مي داديد. پس فرم را ببنديد و به همين طريق اسپرايت توپ را ايجاد كنيد.

در ادامه ما افكت صوتي را ايجاد ميكنيم. از منوي add گزينه add sound را انتخاب كنيد. فرم جديدي باز ميشود. به اين افكت صوتي نامي اختصاص دهيد و دكمه load sprite راكليك كنيد. يك افكت صوتي را انتخاب نماييد و آن را بوسيله دكمه play امتحان كنيد كه افكت مناسبي باشد. اگر افكت مناسبي بود فرم را ببنديد.

گام بعدي ساخت دو آبجكت است. بياييد در ابتدا آبجكت ديوار را بسازيم. دوباره از منوي add گزينه add object ا انتخاب كنيد. فرمي كه كمي پيچيده تر از فرمهاي قبلي است كه تا كنون ديده ايد نشان داده ميشود. در سمت چپ فرم اطلاعاتي راجع به آبجكت نمايش داده شده است. به آبجكت نام مناسبي اختصاص دهيد و از منوي پايين افتادني اسپرايت ديوار را انتخاب نماييد. به خاطر اينكه ديوار يك آبجكت ثابت است بايد جعبه چك solid را فعال كنيد. اين تمام كار ايجاد آبجكت ديوار بود.

آبجكت ديگري را ايجاد كنيد ، آن را ball بناميد و به آن اسپرايت توپ را اختصاص دهيد. ما توپ را ثابت یا solid نميسازيم. ما براي توپ به كمي واكنش احتياج داريم. در وسط فرم شما يك ليست خالي از رويداد ها را مي بينيد. در پايين آن يك دكمه به نام add event وجود دارد. روي آن كليك كنيد تا تا تمام رويدادهاي ممكن را ببينيد. رويداد creation را انتخاب كنيد. اين ريداد به ليست اضافه ميشود. در سمت راست فرم شما تمام اعمال ممكن را در چند گروه مي بينيد. از گروه move واكنشي را كه 8 فلش دارد را انتخاب كنيد و آن را تا ليست اعمال در وسط فرم drag كنيد. هنگامي كه شما آ ن را در وسط فرم رها كنيد اين عمل حركت آبجكت توپ را در يك جهت مخصوص ايجاد ميكند. تمام 8 فلش را براي يك حركت تصادفي انتخاب كنيد و گزينه speed را 8 تنظيم كنيد. حالا فرم را ببنديد. پس تا اينجا توپ هنگامي كه ايجاد ميشود شروع به حركت مي كند. اكنون ما بايد تعيين كنيم كه هنگام رويداد برخورد توپ با ديوار چه اتفاقي بايد رخ دهد. دوباره دكمه add event را كليك كنيد و گزينه collision را انتخاب كرده از منوي شناور آبجكت ديوار را انتخاب كنيد. براي اين رويداد ما احتياج به واكنش حركت در جهت معكوس داريم. ( شما مي توانيد عملي كه هر واكنش انجام ميدهد را با نگه داشتن ماوس بر روي آن ببينيد.) در آخر ما بايد تعيين كنيم هنگامي كه كاربر روي توپ كليك چپ مي كند چه اتفاقي بايد رخ دهد. براي اين رويداد ها ما به چند واكنش احتياج داريم : يكي براي اجراي افكت صوتي یعنی واکنش play a sound ( که مي توانيد آن را در گروه واكنش هاي main1 پيدا نماييد. ) و ديگري براي تغيير امتياز بازي set the score که در گروه score وجود دارد ودو عمل ديگر براي حركت توپ در جهت اتفاقي و به حركت در آوردن آن در جهت جديد که می توانید همان واکنش استفاده شده در رويداد creation را کپی کنید.

براي واكنش sound افكت صوتي مناسبي را انتخاب كنيد. براي واكنش score در فيلد value مقدار يك را وارد نموده و جعبه چك relative را فعال كنيد. اين بدان معني است كه يك امتياز به امتياز هاي قبلي اضافه شود. ( اگر شما اشتباه كرديد ميتوانيد بر روي واكنش مربوطه دابل كليك كنيد و خواص آن را تغيير دهيد. ) آبجكت هاي ما اكنون آماده اند .

چيزي كه ميماند تعريف يك room است. يك room جديد دوياره به بازي اضافه كنيد. در سمت راست برنامه يك room خالي مشاهده ميكنيد. در سمت چپ ميتوانيد برگه هاي tab را ببينيد. يكي براي خصوصيات پس زمينه ، يكي براي تنظيمات كلي بازي مثل طول و عرض room و يكي ديگر كه با آن ميتوانيد نمونه هايي از آبجكت ها را به room اضافه نماييد. در زير فرم شما مي توانيد از منوي شناور يك آبجكت را انتخاب نماييد. با كليك در room ميتوانيد نمونه هايي از آبجكت را به room اضافه كنيد و با استفاده از كليك راست روي نمونه هاي درون room آن ها را حذف نماييد. يك حاشيه دور تا دور room با استفاده از آبجكت ديوار ايجاد كنيد و يك يا دو توپ درون آن قرار دهيد. بازي ما اكنون آماده است.

حالا موقع آن است كه بازي را تست كنيم. دكمه Run را كليك كنيد و مشاهده كنيد چه رخ مي دهد. اگر شما اشتباهي نكرده باشيد توپ شروع به حركت در اطراف مي كند. سعي نماييد روي توپ كليك كنيد و مشاهده كنيد چه رخ مي دهد. شما مي توانيد بازي را با فشردن كليد Esc متوقف كنيد. اكنون شما ميتوانيد تغييرات بيشتري را انجام دهيد. تبريك ميگويم شما اولين بازي خود را طراحي نموديد.

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

-------------------------------------------
از بس تایپ کردم کف کردم. یادتون نره نظر بدید تا بدونم تا چه سطحی می تونم پیش برم و طرفدار داره یا نه . یه نظر دادن که کاری نداره دیگه . یعنی می گین از نوشتن این مطالب سخت تره ؟:blink:

ادامه مطالب در یکی دو روز دیگه....to be continued [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ALt3rnA
22-03-2006, 15:09
متشکرم از زحمتت ولی اینا رو من بلدم اگه میشه کار با اسکریپت ها رو اموزش بده

hippo
22-03-2006, 15:20
gamehackir جان شما اينا را بلديد بقيه چي ؟

ALt3rnA
22-03-2006, 15:29
شرمنده حواسم نبود
===============
اینم سریال نسخه ی 6.1 برنامه

Name: redguy
S/N: 6F580A8996B5503F22F934DD

prance 2
22-03-2006, 17:54
با عرض تبريك خدمت همه
اقاي شاهزاده ايراني شما كه زحمتو ميكشي نميشه اموزشو pdf بزاري
با تشكر

Prince_ of _Persia
24-03-2006, 06:55
از دوستانی که نظر دادند متشکرم. در رابطه با اسکریپت نویسی بسیار بحث طولانی خواهد بود زیرا این برنامه در حدود 1000 توابع و متغیر داخلی و دستورات متعدد دارد. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
با این حال من سعی خواهم کرد پس از آموزش اصلی برنامه به اسکریپت نویسی تا حدودی بپردازم البته انتظار استقبال بیشتری از این تاپیک را دارم. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

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

Prince_ of _Persia
24-03-2006, 07:10
خوب حالا برویم سراغ ادامه آموزش :

تعريف اسپرايت ها
اسپرايت ها نمايش گرافيكي تمام آبجكت ها هستند. يك اسپرايت مي تواند يك تصوير تنها باشد كه با هر برنامه طراحي كه شما دوست داشته باشيد مي تواند طراحي شود ، يا مجموعه اي از تصاوير باشد كه هنگامي پشت سر هم نمايش داده ميشود مانند يك حركت انيميشني به نظر مي رسد. براي مثال چهار تصوير از يك اسپرايت Pacman كه به سمت راست حركت ميكند بصورت زير است:

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

هنگامي كه شما يك بازي طراحي ميكنيد معمولآ با جمع آوري مجموعه اي از اسپرايت هاي زيبا شروع ميكنيد. مجموعه اي از اسپرايت هاي حالب در وب سايت Game Maker قابل دسترسي است. اسپرايت هاي ديگري در وب معمولآ بصورت فايل متحرك GIF وجود دارد. براي اضافه نمودن يك اسپرايت گزينه Add Sprite را از منوي Add انتخاب كنيد يا دكمه متناظرش را در نوار ابزار را كليك نماييد.

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

در بالاي فرم شما مي توانيد نام اسپرايت را تعيين كنيد. تمام اسپرايت ها ( و منبع ابزار هاي ديگر ) داراي نامي مي باشند. بهتر است شما به اسپرايت نامي بدهيد كه تشريح كننده آن باشد. اطمينان حاصل كنيد كه تمام منبع ابزارها نامهاي متفاوتي دارند. اگر چه اين عمل اكيدآ نياز نيست. به شما توصيه مي شود از حروف و اعداد و نشانه ( _ ) در نام هر اسپرايت ( و هر منبع ابزار ديگر ) استفاده نماييد و ابتداي آن را با حروف شروع نماييد. مخصوصآ از فاصله در نامها استفاده ننماييد. اين كار براي هنگامي كه كد نويسي مي كنيد مهم است.

براي لود نمودن يك اسپرايت روي دكمه Load Sprite كليك نماييد. يك فرم گفتگو باز نمودن فايل نشان داده مي شود كه مي توانيد اسپرايت مورد نظر را انتخاب كنيد. Game Maker مي تواند بسياري از فايل هاي گرافيكي را لود نمايد. هنگامي كه يك فايل متحرك gif را لود مي نماييد تصاوير فرعي متفاوتي تصوير اسپرايت را تشكيل مي دهند. هنگامي كه اسپرايت لود شد ، اولين تصوير فرعي در سمت راست نمايش داده مي شود. هنگامي كه چندين تصوير فرعي وجود دارند شما مي توانيد با ذكمه اي جهت دار بين تصاوير حركت نماييد.
جعبه چك Transparent تعيين مي كند كه پس زمينه به صورت شفاف نشان داده شود يا بصورت معمولي نشان داده شود. بيشتر اسپرايت ها داراي پس زمينه شفاف هستند. پس زمينه بوسيله رنگ بالاترين پيكسل سمت چپ اسپرايت تعيين ميگردد. پس دقت نماييد پيكسلي از تصوير واقعي اين رنگ را نداشته باشد. ( توجه كنيد كه فايلهاي gif اغلب رنگ شفافيت خودشان را تعيين ميكنند. اين رنگ در Game Maker استفاده نميشود. بوسيله دكمه Edit Sprite مي توان اسپرايت را ويرايش نماييد يا حتي يك اسپرايت كامل جديد بسازيد

Prince_ of _Persia
24-03-2006, 07:22
تعريف آبجكت ها

با منبع ابزارهايي كه تا كنون شما ديده ايد مي توانيد تصاوير و افكتهاي صوتي زيبايي به بازي لضافه نماييد. اما اينها هيچ كاري انجام نمي دهند. اكنون ما به مهمترين منبع ابزار رسيديم، آبجكت ها. آبجكت ها هسته ي بازي اي هستند كه كارها را انجام ميدهند. آنها اغلب اوقات داراي اسپرايت كه نماي گرافيكي آنها مي باشند هستند كه شما آنها را نمي بينيدو آنها داراي رفتار مي باشند به اين علت كه ميتوانند نسبت به رويدادهاي مهم واكنش نشان دهند. تمام چيزهايي كه شما در باري مي بينيد ( به جز تصوير پس زمينه ) آبجكت ها هستند. ( يا براي اينكه دقيقتر گفته باشيم آنها نمونه هايي از آبجكت ها هستند. ) كاراكترها ، غول ها ، توپ ها ، ديوارها و غيره همگي آبجكت مي باشند. همچنين ممكن است آبجكت هايي وجود داشته باشند كه ديده نميشوند اما جنبه هايي ار بازي را كنترل مي كنند.

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

براي اضافه نمودن يك آبجكت به بازي گزينه Add Object را از منوي Add را انتخاب كنيد. فرم آبجكت ظاهر مي شود.

اين فرم نسبتا پيچيده است. در سمت چپ فرم اطلاعاتيكلي در مورد آبجكت مشاهده مي كنيد. در وسط فرم ليستي از رويدادهايي كه براي يك آبجكت مي تواند اتفاق بيافتد وجود دارد. در سمت راست فرم واكنش هايي كه يك آبجكت مي تواند انجام دهد ليست شده است.

مانند همیشه شما مي توانيد ( و بايد ) به يك آبجكت نامي نسبت دهيد. در قدم بعدي مي توانيد به آبجكت يك اسپرايت را مشخص نماييد. در آخر ، بر روي جعبه چك sprite و يا دكمه منوي بعد از آن را كليك نماييد. يك منو با تمام اسپرايت هاي موجود نمايش داده مي شود. اكنون آن اسپرايت را كه ميخواهيد انتخاب نماييد. اگر شما هنوز اسپرایتی ندارید می توانید دکمه New را برای اضافه کردن اسپرایت جدیدی و تغییر آن کلیک نمایید. همچنین هنگامی که شما یک اسپرایت را انتخاب می نمایید یک دکمه Edit وجود خواهد داشت که با آن می توانید اسپرایت را تغییر دهید. این عمل سریعتر از هنگامی است که ابتدا آن را در منبع ابزار جستجو کرده سپس مشخص کنید که می خواهید آنرا تغییر دهید.

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

Prince_ of _Persia
24-03-2006, 21:06
رويدادها
Game Maker از سيستمي با نام سيستم اجراي رويداد استفاده مي كند. اين سيستم به اينصورت كار ميكند. هنگامي كه اتفاقي در بازي رخ ميدهد نمونه آبجكت رويداد مي گيرد ( نوعي از پيغام كه مي گويد چه چيزي اتفاق افتاده است ) . نمونه ها مي توانند به اين پيغام ها با اجرا نمودن واكنش مشخصي واكنش نشان دهند. براي هر آبجكت شما بايد مشخص نماييد كه به كدام رويداد پاسخ داده شود و چه واكنشيبايد براي هر رويداد كه اتفاق مي افتد نجام شود. اين ممكنست پيچيده به نظر برسد اما حقيقتا بسيار آسان است. اول از همه ، براي اغلب رويدادها آبجكت هيچ واكنشي نشان نمي دهد . براي رويدادها در جاييكه واكنش بايد انجام شود شما مي توانيد با دراگ نمودن ساده واكنش ها واكنش را مشخص نماييد.

در وسط فرم مشخصات هر آبجكت يك ليست از رويدادها كه آبجكت بايد واكنش نشان دهد موجود است. در ابتدا اين ليست خالي است. شما مي توانيد با كليك نمودن دكمه Add Event رويدادها را اضافه كنيد.فرمي با انواع مختلفي از رويدادها ظاهر مي شود . در اينجا شما ميتوانيد رويدادي را كه ميخواهيد اضافه نماييد انتخاب كنيد.
به عنوان مثال براي رويداد صفحه كليد شما بايد كليد مورد نظر را انتخاب نماييد. در زير شما مي توانيد يك ليست كاملي از رويدادها و توضيحات آنها پيدا كنيد. يك رويداد در ليست به حالت انتخاب در مي آيد اين رويدادي است كه اكنون درحال تغيير است. شما مي توانيد اين رويداد را با كليك روي آن تغيير دهيد. در سمت راست فرم تمام واكنش ها بوسيله آيكن هاي كوچك نمايش داده شده اند آنها در برگه هاي tab گروه بندي شده اند.
در بين رويداد ها و واكنش ها يك ليست واكنش ها موجود است . اين ليست شامل واكنش هايي است كه براي رويداد كنوني بايد اجرا گردند . براي اضافه نمودن واكنش به ليست ، با ماوس واكنش را از سمت راست فرم به روي ليست بكشيد. آنها در زير ديگري قرار داده مي شوند با يك توضيح مختصر ، براي هر واكنش تعدادي پارامتر از شما خواسته مي شود كه بعدا توضيح داده مي شود.

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

اكنون مي توانيد شروع به اضافه نمودن واكنش ها به رويداد ديگري كنيد. بر روي رويداد مورد نظر كليك كرده تا آن را انتخاب كرده و واكنش ها را به ليست بكشيد. شما مي توانيد ترتيب واكنش ها را با استفاده از كشيدن و رها ساختن تغيير دهيد. اگر شما هنگامي كه واكنشي را كشيديد كليد <Alt> را نگه داشته باشيد شما يك كپي از واكنش مي سازيد. شما مي توانيد حتي عمل كشيدن و رها ساختن را براي جا به جا نمودن واكنش ها بين ليست واكنش آبجكت هاي مختلف استفاده نماييد. هنگامي كه شما روي يك واكنش كليك راست مي كنيد يك منو ظاهر مي شود كه مي توانيد واكنش را حذف نماييد ، ( همچنين بوسيله فشردن دكمه Del قابل اجرا است ) يا اينكه واكنش را copy يا paste نماييد. هنگامي كه ماوس را مدتي بر روي واكنش نگه مي داريد توضيح طولاني از واكنش ظاهر مي شود.

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

همانطور كه در بالا مشخص شد براي اضافه نمودن يك رو.يداد دكمه Add Event را كليك كنيد. فرم نمايش داده مي شود. :biggrin:

در اينجا شما مي توانيد رويدادي را كه ميخواهيد اضافه كنيد را انتخاب نماييد. در بعضي اوقات يك منو شامل انتخابهاي و.يژه ظاهر مي شود. در زير توضيحي براي رويدادهاي گوناگون آمده است. ( دوباره بخاطر بسپاريد كه شما تنها تعداي از آنها استفاده خواهد نمود. )

Prince_ of _Persia
25-03-2006, 21:54
باز هم سلام. :cool:

ايندفعه دو بازي دوبعدي را كه با Game Maker طراحی کردم قرار می دهم امیدوارم خوشتان بیاید.
در ضمن نظرات و پیشنهاد ها و همچنین مشکلات خود را مطرح کنید تا آنها را بررسی کنم.

اینم لینک ها :

نام بازی : مهاجمان
حجم : 1.61MB
لینک : [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

نام بازی : نخودی ( بازی در حد قارچ خور)
حجم : 1.09MB
لینک : [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

خوب چطور بود اگر شما هم بازی هایی که خودتان طراحی کردید را در این قسمت بگذارید ( البته بعد از آموزش های خود را به اتمام رساندم) خیلی عالی میشه :tongue:

saeid_ronaldo
25-03-2006, 22:12
طراحی اولین بازی [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

در ابتدا خوب است به ساخت يك مثال بسيار ساده نگاهي بيندازيم. در اينجا ما فرض مي كنيم كه شما Game Maker را در حالت simple اجرا نموده ايد. اولين گام تشريح بازي است كه ما مي خواهيم طراحي كنيم. ( شما بايد هميشه اين كار را در ابتدا انجام دهيد ، اين عمل در آينده شما را از اعمال اضافي ديگر بر حذر ميدارد. ) بازي كه ما مي خواهيم طراحي كنيم بسيار ساده است : در اين بازي يك توپ وجود دارد كه بين ديوار ها بالا و پايين مي پرد. بازيكن بايد سعي نمايد تا بوسيله ماوس بر روي توپ كليك كند هر زمان كه موفق شد امتياز ميگيرد.

تا اين جا كه ديديم به دو شي احتياج داريم: توپ و ديوار.ما همچنين به دواسپرايت مختلف احتياج داريم : يكي براي آبجكت ديوار و ديگري براي آبجكت توپ. در انتها به افكت صوتي احتياج داريم كه هنگامي كه روي توپ كليك مي شود اجرا شود. ما فقط از يك room استفاده مي كنيم كه بازي در آن اتفاق مي افتد. ( اگر شما نمي خواهيد اين بازي را خودتان طراحي كنيد ميتوانيد آن را از پوشه Examples با نام 6ball.gm لود كنيد. )

بياييد اسپرايت ها را طراحي كنيم. از منوي add گزينه add sprite را انتخاب كنيد. ( شما همچنين ميتوانيد از دكمه اختصاصي آن در نوار ابزار استفاده كنيد. ) فرمي باز خواهد شد. در فيلد name نام Wall را تايپ كنيد. دكمه load sprite را كليك كنيد و يك تصوير مناسب را لود كنيد. اين تمام كاري بود كه شما بايد انجام مي داديد. پس فرم را ببنديد و به همين طريق اسپرايت توپ را ايجاد كنيد.

در ادامه ما افكت صوتي را ايجاد ميكنيم. از منوي add گزينه add sound را انتخاب كنيد. فرم جديدي باز ميشود. به اين افكت صوتي نامي اختصاص دهيد و دكمه load sprite راكليك كنيد. يك افكت صوتي را انتخاب نماييد و آن را بوسيله دكمه play امتحان كنيد كه افكت مناسبي باشد. اگر افكت مناسبي بود فرم را ببنديد.

گام بعدي ساخت دو آبجكت است. بياييد در ابتدا آبجكت ديوار را بسازيم. دوباره از منوي add گزينه add object ا انتخاب كنيد. فرمي كه كمي پيچيده تر از فرمهاي قبلي است كه تا كنون ديده ايد نشان داده ميشود. در سمت چپ فرم اطلاعاتي راجع به آبجكت نمايش داده شده است. به آبجكت نام مناسبي اختصاص دهيد و از منوي پايين افتادني اسپرايت ديوار را انتخاب نماييد. به خاطر اينكه ديوار يك آبجكت ثابت است بايد جعبه چك solid را فعال كنيد. اين تمام كار ايجاد آبجكت ديوار بود. آبجكت ديگري را ايجاد كنيد ، آن را ball بناميد و به آن اسپرايت توپ را اختصاص دهيد. ما توپ را ثابت نميسازيم. ما براي توپ به كمي واكنش احتياج داريم. در وسط فرم شما يك ليست خالي از رويداد ها را مي بينيد. در پايين آن يك دكمه به نام add event وجود دارد. روي آن كليك كنيد تا تا تمام رويدادهاي ممكن را ببينيد. رويداد creation را انتخاب كنيد. اين ريداد به ليست اضافه ميشود. در سمت راست فرم شما تمام اعمال ممكن را در چند گروه مي بينيد. از گروه move واكنشي را كه 8 فلش دارد را انتخاب كنيد و آن را تا ليست اعمال در وسط فرم drag كنيد. هنگامي كه شما آ ن را در وسط فرم رها كنيد اين عمل حركت آبجكت توپ را در يك جهت مخصوص ايجاد ميكند. تمام 8 فلش را براي يك حركت تصادفي انتخاب كنيد و گزينه speed را 8 تنظيم كنيد. حالا فرم را ببنديد. پس تا اينجا توپ هنگامي كه ايجاد ميشود شروع به حركت مي كند. اكنون ما بايد تعيين كنيم كه هنگام رويداد برخورد توپ با ديوار چه اتفاقي بايد رخ دهد. دوباره دكمه add event را كليك كنيد و گزينه collision را انتخاب كرده از منوي پايين افتادني آبجكت ديوار را انتخاب كنيد. براي اين رويداد ما احتياج به واكنش حركت در جهت معكوس داريم. ( شما مي توانيد عملي كه هر واكنش انجام ميدهد را با نگه داشتن ماوس بر روي آن ببينيد.) در آخر ما بايد تعيين كنيم هنگامي كه كاربر روي توپ كليك چپ مي كند چه اتفاقي بايد رخ دهد. براي اين رويداد ها ما به چند واكنش احتياج داريم : يكي براي اجراي افكت صوتي ( مي توانيد آن را در گروه واكنش هاي main1 پيدا نماييد. ) و ديگري براي تغيير امتياز بازي ودو عمل ديگر براي حركت توپ در جهت اتفاقي و به حركت در آوردن آن در جهت جديد.(به همان طريقي كه در رويداد creation ديديد. )

براي واكنش sound افكت صوتي مناسبي را انتخاب كنيد. براي واكنش امتياز در فيلد value مقدار يك را وارد نموده و جعبه چك relative را فعال كنيد. اين بدان معني است كه يك امتياز به امتياز هاي قبلي اضافه شود. ( اگر شما اشتباه كرديد ميتوانيد بر روي واكنش مربوطه دابل كليك كنيد و خواص آن را تغيير دهيد. ) آبجكت هاي ما اكنون آماده اند . چيزي كه ميماند تعريف يك room است. يك room جديد دوياره به بازي اضافه كنيد. در سمت راست برنامه يك room خالي مشاهده ميكنيد. در سمت چپ ميتوانيد برگه هاي tab را ببينيد. يكي براي خصوصيات پس زمينه ، يكي براي تنظيمات كلي بازي مثل طول و عرض room و يكي ديگر كه با آن ميتوانيد نمونه هايي از آبجكت ها را به room اضافه نماييد. در زير فرم شما مي توانيد از منوي شناور يك آبجكت را انتخاب نماييد. با كليك در room ميتوانيد نمونه هايي از آبجكت را به room اضافه كنيد و با استفاده از كليك راست روي نمونه هاي درون room آن ها را حذف نماييد. يك حاشيه دور تا دور room با استفاده از آبجكت ديوار ايجاد كنيد و يك يا دو توپ درون آن قرار دهيد. بازي ما اكنون آماده است.

حالا موقع آن است كه بازي را تست كنيم. دكمه Run را كليك كنيد و مشاهده كنيد چه رخ مي دهد. اگر شما اشتباهي نكرده باشيد توپ شروع به حركت در اطراف مي كند. سعي نماييد روي توپ كليك كنيد و مشاهده كنيد چه رخ مي دهد. شما مي توانيد بازي را با فشردن كليد Esc متوقف كنيد. اكنون شما ميتوانيد تغييرات بيشتري را انجام دهيد. تبريك ميگويم شما اولين بازي خود را طراحي نموديد.

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

-------------------------------------------
از بس تایپ کردم کف کردم. یادتون نره نظر بدید تا بدونم تا چه سطحی می تونم پیش برم و طرفدار داره یا نه . یه نظر دادن که کاری نداره دیگه . یعنی می گین از نوشتن این مطالب سخت تره ؟:blink:

ادامه مطالب در یکی دو روز دیگه....to be continued [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

دوست عزيز از قسمت قرمز رنگ به بعد رو متوجه نشدم. يكم با عجله تو ضيح دادين ميشه واضح ترش كنيد اين قسمت رو؟

Prince_ of _Persia
26-03-2006, 12:40
سلام [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

شرمنده من يادم رفت نامهاي انگليسي بعضي از آنها را قرار بدهم واكنش حركت در جهت معكوس يعني واكنش bounce against object که در قسمت واکنش های move است. نام واکنشی که فایل صوتی را اجرا می کند play a sound است و در قسمت واکنش های main1 پیدا می شود. برای واکنش امتیاز بازی از واکنش های قسمت score گزینه set the score را انتخاب کن. و برای به حرکت در آوردن توپ در مسیر جدید از همان واکنشی که در رویداد creation آمده استفاده کن می توانی همان را کپی کنی.
بقیش هم فکر نکنم مشکلی داشته باشی مطلب را هم تصحیح می کنم تا بقیه هم مشکلی نداشته باشند.
اگر بازهم مشکلی داشتید حتما مطرح کنید.

در ضمن باز های که گذاشتم را دانلود کنید و برای تکمیل بیشتر آنها مخصوصا اولی که طراحیش کامل نیست نظر دهید بزودی سورس هر دویشان را upload می کنم. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

akharwarbaz
27-03-2006, 12:07
دوستان براي اطلاع بيشتر از نرم افزار گيم ميكر ميتون از سايت فارسي persian-designers استفاده كنن چون مخصوص موتور هاي بازي سازي ميباشد!درضمن براي استفاده از امكاناتش اول بايد عضو بشيد از من ميشنوين به اين سايت برين ضرر نميكنين ادرس سايت
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
موفق باشيد!

Prince_ of _Persia
27-03-2006, 12:26
من كه خودم شخصا در اين سايت عضو هستم هيچگونه مقاله اي در مورد آموزش اين نرم افزار نديدم فقط براي سوالات و رفع مشكلات در بازي سازي و تكنيكهاي بازي سازي بدرد مي خورد.

saeid_ronaldo
27-03-2006, 15:15
سلام [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

شرمنده من يادم رفت نامهاي انگليسي بعضي از آنها را قرار بدهم واكنش حركت در جهت معكوس يعني واكنش bounce against object که در قسمت واکنش های move است. نام واکنشی که فایل صوتی را اجرا می کند play a sound است و در قسمت واکنش های main1 پیدا می شود. برای واکنش امتیاز بازی از واکنش های قسمت score گزینه set the score را انتخاب کن. و برای به حرکت در آوردن توپ در مسیر جدید از همان واکنشی که در رویداد creation آمده استفاده کن می توانی همان را کپی کنی.
بقیش هم فکر نکنم مشکلی داشته باشی مطلب را هم تصحیح می کنم تا بقیه هم مشکلی نداشته باشند.
اگر بازهم مشکلی داشتید حتما مطرح کنید.

در ضمن باز های که گذاشتم را دانلود کنید و برای تکمیل بیشتر آنها مخصوصا اولی که طراحیش کامل نیست نظر دهید بزودی سورس هر دویشان را upload می کنم. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ممنون. اميدوارم ديگه مشكلي نباشه

Prince_ of _Persia
28-03-2006, 12:40
خوب در مورد انواع رويداد ها توضيح ميدم.

رويداد Create: اين رويداد هنگامي كه نمونه اي از آبجكت خلق مي شود اتفاق مي افتد. از اين رويداد معمولا براي تنظيم حركت نمونه ها يا تنظيم متغيرهاي نمونه استفاده مي شود.

رويداد Destroy : اين رويداد هنگامي كه نمونه نابود ميشود اتفاق مي افتد. براي اينكه دقيقتر گفته باشيم قبل از اينكه نابود شود اتفاق مي افتد. پس هنگامي كه اين رويداد اجرا مي شود هنوز نمونه وجود دارد. اغلب اوقات شما از اين رويداد استفاده نخواهيد كرد اما شما مي توانيد به عنوان مثال از آن براي تغيير دادن امتياز بازي يا خلق آبجكت هاي ديگر استفاده كنيد.

رويداد Alert : هر نمونه 8 آلارم دارد. شما مي توانيد اين آلارم ها را بوسيله واكنش هاي خاصي تنظيم كنيد. ( فصل بعد را ملاحظه كنيد ) زمان آلارم تا زماني كه به صفر برسد كاهش مي يابد و درلحظه صفر رويداد آلارم ايجاد مي شود. براي اينكه واكنشهايي كه به آلارم نسبت مي دهيد را مشخص نماييد. در ابتدا به انتخاب آن از منو احتياج داريد. آلارم ها خيلي مفيد هستند. مي توانيد از آنها براي اتفاق افتادن لحظه به لحظه چيزهاي خاصي استفاده كنيد. براي مثال يك غول مي تواند جهت حركتش را هر 20 گام تغيير دهد ( در اين قبيل موارد يكي از واكنش ها بايد آلارم را دوباره تنظيم كند. )

رويداد Step: اين رويداد براي هر گام از بازي اتفاق مي افتد. در اينجا مي توانيد از واكنش هايي كه يه اجراي متوالي نياز دارند استفاده نماييد. براي مثال اگر آبجكتي بايد از آبجكت ديگري پيروي كند در اينجا مي توانيد جهت حركت را در جهت آبجكت كه تعقيب مي كنيم تنظيم نماييم. مراقب اين رويداد دشوار باشيد. واكنش هاي پيچيده زيادي را در رويداد step آبجكتهايي كه نمونه هاي زيادي از آن در بازي است را قرار ندهيد.اين باعث مي شود كه سرعت بازي كاهش يابد براي اينكه دقيق باشيم سه نوع رويداد step مختلف وجود دارد.معمولا شما به مقدار پيش فرض آن احتياج داريد. رويداد begin step در ابتداي هر گام ايجاد مي شود ، قبل از اينكه هر رويداد ديگري رخ دهد. رويداد نرمال step فقط قبل از اينكه نمونه ها در مكانهاي جديدشان قرار بگيرند اجرا مي شود. رويداد end step در پايان step و فقط قبل از طراحي نمونه ها اجرا مي شود. اين معمولا براي تغيير جهت بسته به جهت كنوني استفاده مي شود.

رويداد Collision : هنگامي كه دو نمونه با هم برخورد مي كنند ( يعني اسپرايت آنها از روي هم مي گذرند ) رويداد Collision روي مي دهد . خوب براي اينكه دقيقتر گفته باشيم دو رويداد Collision روي ميدهد ، يكي براي هر نمونه. نمونه ميتواند به اين رويداد برخورد واكنش نشان دهد. براي اتمام از منو آبجكتي را كه مي خواهيد با آن رويداد برخورد را تعريف كنيد انتخاب نماييد. بعدا شما واكنش ها را در اين قسمت قرار مي دهيد.

هنگامي كه نمونه ها با يك آبجكت ثابت يا غير ثابت برخورد مي كنند تفاوتي وجود دارد.در ابتداي همه هنگامي واكنشي براي رويداد برخورد نيست هيچ اتفاقي نمي افتد. نمونه كنوني بسادگي يه حركتش ادامه مي دهد حتي اگر آبجكت ديگر ثابت باشد. هنگامي كه رويداد يرخورد شامل واكنشي باشد اتفاق زير رخ مي دهد.

هنگامي كه آبجكت ديگر ثابت باشد نمونه به جاي قبلي اش بازگشت ميكند ( قبل از اينكه برخورد رخ دهد ) . پس اين رويداد اجرا مي شود. سرانجام نمونه به طرف مكان جديدش حركت مي كند. پس اگر رويداد جهت حركت را عوض كند نمونه بدون توقف بر مي گردد. اگر هنوز برخورد وجود داشته باشد نمونه جاي قبلي اش را حفظ مي كند. پس اين عمل بطور موثري حركت را متوقف مي كند.
ترجمه نشده

موارد استفاده زيادي براي رويداد Collision وجود دارد . نمونه ها مي توانند از آن براي جست بر خلاف ديوار استفاده كنند. مي توانيد از آن براي نابود كردن آبجكت هايي كه مورد هدف گلوله قرار مي گيرند استفاده كنيد.

رويداد Keyboard: هنگامي كه بازيكن يك كليد صفحه كليد را فشار مي دهد رويداد keyboard براي نمونه هاي تمام آبجكت ها بكار مي رود. رويداد متفاوتي براي هر كليد صفحه كليد وجود دارد. در منو مي توانيد كليدي را كه مي خواهيد رويداد keyboard را براي آن تعريف كنيد انتخاب نماييد و واكنش را براي آن تعريف كنيد. واضحست كه تنها تعداد كمي از آبجكت ها تنها به رويداد براي تنها تعداد كمي از كليدها نياز دارند. شما رويداد را در هر لحظه اي و تا زماني كاربر كليد را نگه دارد دريافت مي كنيد. دو رويداد keyboard ويژه نيز وجود دارد.يكي از آنها < No key> ناميده ميشود. اين رويداد تا لحظه اي كه كاربر كليدي را فشار ندهد دريافت مي شود. نوع دوم < Any Key >ناميده ميشود و تا زماني كه كليدي فشرده مي شود رخ مي دهد. هنگامي كه كاربر چند كليد را فشار مي دهد رويداد براي تمامي كليدهاي فشار داده شده رخ مي دهند. توجه كنيد كه كليدهاي بر روي Numeric Keypad تنها زماني رويداد مناسب را توليد ميكند كه كليد < Num Lock > روشن باشد.

رويداد Mouse : رويداد Mouseبراي يك نمونه هنگامي رخ مي دهد كه كرسر ماوس درون محوطه اسپرايت نشاندهنده نمونه وارد مي شود بسته به اينكه كدام دكمه ماوس فشار داده ميشود شما رويداد No Button ، Left Button،Right Button يا Middle Button دريافت مي شود. رويداد دكمه mouse در هر لحظه تا زماني كه بازيكن دكمه را فشار ميدهد توليد ميشود. رويدادهاي Press فقط هنگامي كه دكمه ماوس فشرده ميشود تنها براي يكبار توليد ميشود. رويداد release تنها هنگامي كه دكمه ماوس رها مي شود توليد ميشود. توجه نماييد كه اين رويدادها تنها هنگامي رخ مي دهند كه نشانگر ماوس بر روي نمونه باشد . اگر مي خواهيد بازي نسبت به فشار يا رها نمودن دكمه ماوس در مكاني اختياري واكنش دهد از رويدادد Global press و Global release بجاي اين رويداد استفاده كنيد. دو رويداد ويژه ماوس وجود دارد. رويداد Mouse Enter هنگامي اتفاق مي افتد كه ماوس وارد محدوده نمونه مي شود. رويداد Mouse leave هنگامي اتفاق مي افتد كه ماوس از محدوده نمونه خارج مي شود. اين رويدادها معمولا براي تغيير تصوير يا نواختن صوتي بكار مي رود. در آخر تعدادي از رويدادها وجود دارند كه منسوب به joystick هستند. شما ميتوانيد براي چهار جهت اصلي جوي استيك واكنش مشخص كنيد ( در جهت هاي مورب هر دو رويداد اتفاق مي افتد ). همچنين ميتوانيد واكنش هايي را براي 8 دكمه جوي استيك تعريف نماييد. شما مي توانيد هر دوي اينكارها را براي دو جوي استيك نيز انجام دهيد.

رويدادهاي ديگر :
تعداد ديگري از رويدادها وجود دارند كه مي توانند در بازي هاي خاصي مفيد واقع شوند. اين موارد در اين منو قابل يافت هستند. رويدادهاي ذيلدر اين جا يافت مي شوند:

Outside: اين رويداد هنگامي كه نمونه كاملا بيرون از Room قرار بگيرد اتفاق مي افتد. معمولا اين لحظه مناسبي براي نابود ساختن نمونه است.

Boundary: اين رويداد هنگامي كه نمونه كناره هاي Roomرا قطع ميكند اتفاق مي افتد.

Game start: اين رويداد براي تمام نمونه هايي كه در Room اول هنگامي كه بازي شروع ميشود اتفاق مي افتد. اين رويداد قبل از اينكه رويداد Room Start رخ دهد ولي قبل از رويداد Creation براي نمونه هايي
در roomرخ مي دهد. اين رويداد معمولا در فقط يك آبجكت Controller تعريف مي شود و براي شروع موزيك پشت صحنه يا مقدارگرفتن بعضي متغيرها يا لود كردن بعضي اطلاعات

Game end : اين رويداد براي تمامي نمونه ها هنگامي كه بازي تمام مي شود اتفاق مي افتد. دوباره مهمولا فقط براي يك آبجكت اين رويداد تعريف ميشود. از اين رويداد به عنوان مثال براي ذخيره اطلاعات خاصي در يك فايل استفاده مي شود.

Room start : اين رويداد براي نمامي نمونه هاي نخستين در room هنگامي كه room آغاز مي شود اتفاق مي افتد. اين رويداد بعد از رويداد creation رخ ميدهد.

Room end : اين رويداد براي تمامي نمونه موجود هنگامي كه room پايان مي پذيرد رخ مي دهد.

No more lives : Game Maker يك سيستم داخلي جان دارد. يك واكنش براي تنظيم تعداد جان ها وجود دارد. هنگامي كه تعداد جان ها به صفر يا كمتر از صفر رسيد ، اين رويداد رخ مي دهد. از اين رويداد معمولا براي پايان دادن يا شروع دوباره بازي استفاده مي شود.

No more health : Game Maker يك سيستم داخلي سلامتي دارد. يك واكنش براي تنظيم و تغيير سلامتي وجود دارد هنگامي كه سلامتي (health) به كمتر يا مساوي صفر مي رسد ، اين رويداد رخ ميدهد. از اين رويداد معمولا براي كاهش تعداد جانها يا شروع دوباره بازي استفاده مي شود.

ٍEnd of path : اين رويداد هنگامي كه نمونه از يك مسير پيروي مي كند و به پايان مسير مي رسد اتفاق مي افتد.

User defined : هشت نوع از اين رويداد ها وجود دارد. اين رويدادها معمولا تا زماني كه خودتان آنها را از طريق يك قطعه كد فراخواني نكنيد رخ نميدهند.

رویدادهایDrawing
نمونه ها هنگامي كه مرئي هستند اسپرايت خودشان را در هر لحظه بر روي صفحه رسم مي كند. هنگامي كه شما واكنش را در رويداد Drawing مشخص مي كنيد. اسپرايت رسم نمي شود اما در عوض اين واكنش اجرا مي شود. اين عمل مي تواند براي رسم چيزي غيراز اسپرايت استفاده شود. يا در ابتدا تغييراتي را بر روي پارامترهاي اسپرايت انجام دهد. تعدادي از واكنش هاي Drawing وجود دارد كه مخصوص استفاده در رويداد Drawing هستند. توجه كنيد كه رويداد Drawing تنها هنگامي كه ابجكت مرئي باشداجرا مي شود. همجنين بخاطر بسپاريد كه بسته به چيزي كه رسم مي كنيد رويداد Collision برروي اسپرايت تفسير مي شود كه به نمونه وابسته است.

رويدادهای Key press : اين رويداد شبيه رويداد keyboard است ولي اين رويداد تنها هنگامي كه كليد فشرده شود رخ مي دهد نه به صورت متوالي. اين رويداد هنگامي مفيد است كه مي خواهيد يك واكنش فقط يك بار رخ دهد.

رويدادهاي Key realase : اين رويداد شبيه رويداد keyboard است ولي تنها هنگامي كه كليد رها شود رخ ميدهند نه به صورت متوالي.

در بعضي مواقع درك كردن ترتيب اينكه Game maker كدام رويدا درا بانجام ميرساند مهم است. اين ترتيب به صورت زير است:
1-رويداد Begin step
2-رويداد Alarm
3-رويداد Keyboard ، رويداد Key press. ، رويداد Key release
4- رويداد Mouse
5- رويداد Step ( اكنون تمام نمونه ها در مكان جديد خود قرار گرفته اند )
6- رويداد Collision
7- رويداد End step
8-رويداد Drawing
ايجاد ، نابود ساختن و رويدادهاي ديگري هنگامي كه چيز متناظري رخ دهد اجرا مي شوند.

Prince_ of _Persia
28-03-2006, 12:46
واكنش ها

واكنش ها چيزهايي را كه در يك بازي كه توسط Game Maker ساخته شده است بايد رخ دهد را مشخص مي كنند. واكنش ها در رويداد هاي يك آبجكت قرار داده مي شوند. هنگاميكه رويداد اتفاق مي افتد اين واكنش ها انجام مي شوند و باعث رفتار خاصي براي نمونه هي اين آبجكت مي شوند . تعداد زيادي از واكنشهاي متفاوت در دسترس موجود مي باشد و اين كه شما درك كنيد آنها چه كاري انجام مي دهند مهم است. در اين فصل ما واكنش هاي مختلف را تشريح مي كنيم . ممكن است واكنش هاي اضافي از فرم كتابخانه هاي واكنش در دسترس باشد. اين واكنش ها امكانات Game Maker را افزايش مي دهند. براي كتابخانه هاي واكنش ممكن اضافي وب سايت Game Maker را بررسي كنيد. تمام واكنش ها در برگه Tab در سمت راست فرم خواص آبجكت قابل يافت مي باشند.

هفت دسته واكنش وجود دارد. شما با كليك نمودن بر روي برگه Tab صحيح دسته اي را كه مي خواهيد بدست مي آوريد. هنگامي كه ماوس را بروي يكي از واكنش ها نگاه مي داريد ، يك توصيف مختصر براي ياد آور شدن كار آن واكنش به شما نمايش داده مي شود. اجازه دهيد يك تكرار خلاصه داشته باشيم : براي قرار دادن يك واكنش درون يك رويداد ، فقط آن را از برگه Tab به ليست واكنش ها Drag كنيد. شما مي توانيد ترتيب اين ليست را دوباره با Drag نمودن تغيير دهيد. كليد <ctrl> را هنگامي كه دراگ مي نماييد نگه داريد تا يك كپي از واكنش بسازيد ( شما مي توانيد واكنش ها را بين ليست ها در فرم هاي خواص آبجكت هاي متفاوت Drag و كپي نماييد. ) براي حذف واكنش ها از كليك راست استفاده نماييد. ( يا از كليد <Del> استفاده كنيد. ) و همچنين براي كپي كردن و چسپاندن واكنش ها .

هنگامي كه شما يك واكنش در درون ليست واكنش مي اندازيد ، يك پنجره در اغلب اوقات ظاهر مي شود، كه در آن شما ميتوانيد پرامترهاي خاصي را براي واكنش ها تنظيم نماييد. پارامترها هنگامي كه واكنش ها تشريح داده مي شود توضيح داده ميشوند. دو نوع پارامتر در بيشتر واكنش ها ظاهر مي شود پس ما اين دو نوع را توضيح مي دهيم. در بالاي فرم شما مي توانيد مشخص نماييد كه براي كدام نمونه ، واكنش بكار مي رود. پيش فرض خود نمونه اي است كه واكنش بر روي آن انجام مي شود. اغلب اوقات اين چيزي است كه شما مي خواهيد. در در حالت يك رويداد Collision شما همچنين مي توانيد مشخص نماييد كه واكنش را به نمونه ديگركه درگير اين رويداد است به كار بريد. در اين حالت شما مي توانيد به طور مثال نمونه ديگر را نابود سازيد. در آخر شما مي توانيد انتخاب كنيد كه واكنش را به تمام نمونه هاي يك آبجكت بكار بريد. در اين حالت شما مي توانيد بعنوان مثال تمام توپ هاي قرمز را به توپ هاي آبي تغيير دهيد . نوع دوم از پارامتر ها يك جعبه چك به نام Relative است. با انتخاب اين جعبه چك مقاديري كه شما تايپ مي كنيد منسوب يه مقادير كنوني هستند. براي مثال در اين حالت شما مي توانيد چيزي را امتياز كنوني اضافه كنيد ، بلكه امتياز كنوني را به مقدار جديدي تغيير دهيد. پارامترهاي ديگري در ذيل تشريح شده اند. شما مي توانيد بعدا پارامتر ها را بوسيله دابل كليك بر روي واكنش تغيير دهيد.

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] اميدوارم بزودي يك انجمن درباره طراحي بازي هاي دوبعدي و سه بعدي در پي سي ورلد ايجاد شود نظر شما چيه [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

H@rry Potter
28-03-2006, 22:41
با سلام خدمت Prince

واقعا کارت حرف نداره



بابا تو دیگه کی هستی؟ ++++++ دست شیطون بستی!

Moh3en_DDD
29-03-2006, 00:19
نمی دونم الان وقت طراحی یک بازی هست یا نه ولی من از سایت اگزو يك بازي براتون مي ذارم . . . !
توضیح بازی!
قبل از شروع لازم است که توضیح کوتاهی در مورد بازی که قصد ساخت آن را داریم بنویسیم. از آنجا که این اولین بازی است بهتر است که بازی راحتی طرح کنیم. لازم است که بازی ، بازیکن را برای مدتی علاقه مند نگه دارد. بازی ما بازی اکشن کوچکی است که اسمش را گرفتن دلقک (Catch the Clown)(اسم بازی بسیار مهم است، سعی کنید از اسامی جالب استفاده کنید) می گذاریم. حال توضیح بازی را می نویسیم:

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

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

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

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

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

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

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

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

خوب تا اینجا بد نبود. حالا می توانیم ساختن بازی را شروع کنیم. خوب Game Maker را اجرا کنید تا کار را شروع کنیم!

Moh3en_DDD
29-03-2006, 00:23
اضافه کردن Sprite ها و صداها
همانگونه که در توضیح بازی اشاره کردیم به دو تصویر برای اشیای بازی نیاز داریم. در Game Maker به اینگونه تصاویر Sprite می گوییم. چیز های بسیاری در مورد Sprite ها وجود دارند ولی فعلا به راحتی آنها را به عنوان تصویرهای کوچکی در نظر بگیرید. خوب حالا لازم است تصویرهایی که لازم داریم را ایجاد کنیم یا آنها را در منابع موجود مانند اینترنت پیدا کنیم. اگر قصد ایجاد کردن آنها را دارید می توانید از هر برنامه ترسیمی که دارید استفاده کنید مثلا Paint که به همراه ویندوز عرضه می شود. البته اگر قصد ایجاد تصاویر حرفه ایی را دارید بهتر است از برنامه هایی مانند Photoshop استفاده کنید. همچنین خود Game Maker یک برنامه ترسیم داخلی دارد که می توانید از آن جهت ویرایش و ایجاد تصاویرتان استفاده کنید. بر روی CD همراه این کتاب نیز تعدادی از این تصاویر وجود دارند. اجازه دهید به بازی خود برگردیم، در CDدو Sprite مورد نیاز ما وجود دارد.

دلقک: [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
دیوار:[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
خوب برای اضافه کردن این Sprite ها به بازی، از منوی Add گزینه Add Sprite را انتخاب کنید. پنجره زیر نمایان میشود:


[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

(این صفحه در صورتی به این صورت خواهد بود که Game Maker را در حالت Advance اجرا کرده باشد البته اگر اینچنین هم نیست اشکالی ندارد چون ما به گزینه های Advance فعلا نیازی ندارم) خوب حالا بر روی دکمه Load Sprite کلیک کنید و فایل تصویر دلقک را که با نام clown.bmp در CD وجود دارد را انتخاب کنید. حالا تصویر در پنجره به نمایش در خواهد آمد. خوب حالا در فیلد Name نامی برای این Sprite وارد کنید مثلا spr_clown (این اسم به بازیکن نمایش داده نخواهد شد و فقط برای مراجعه بعدی خود شما به این Sprite است. سعی کنید از اسامی معنی داری استفاده کنید تا دچار مشکل نشوید مثلا استفاده از spr این را می رساند که این یک Sprite است) توجه کنید که مشخصه Transparent روشن است. این باعث می شود که رنگ پس زمینه Sprite به صورت Transparent یا مات باشد و بتوان رنگ پس زمینه اصلی را از پشت آن دید. Sprite ما هم (تصویر دلقک) لازم است که به صورت مات باشد پس این گزینه را خاموش نکنید.

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

حالا دکمه OK را فشار دهید تا Sprite اضافه شود. خوب حالا که نحوه اضافه کردن Sprite ها را یاد گرفتید Sprite دیوار راهم اضافه کنید و نام آن را spr_wall بگذارید. تصویر دیوار با نام wall.bmp در CD وجود دارد.

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

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

برای اضافه کردن صدای برخورد با دیوار، گزینه Add Sound را از منوی Add انتخاب کنید. یک پنجره که در آن می توانید صدا را انتخاب کنید و مشخصات آن را تعیین کنید ظاهر می شود. دکمه Load Sound را بر روی آن فشار دهید و سپس صدای مورد نظر که در CD با نام bounce.wav وجود دارد را انتخاب کنید و اسم آن را snd_bounce بگذارید (snd به این معنی است که این منبع یک صوت می باشد). حالا پنجرهSound Properties باید اینگونه به نظر برسد:

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

می توانید با زدن دکمه Play صدا را گوش دهید. حال OK را فشار دهید تا صدا اضافه شود. حال که اضافه کردن صداها را فرا گرفتید صدای کلیک کردن بر روی دلقک که در CD با نام click.wav وجود دارد را هم اضافه کنید و آن را snd_click بنامید. باز هم توجه کنید که هر دو صدا به همراه دو sprite در سمت چپ پنجره برنامه به نمایش در آمده اند.


منتظر بقیه باشید . . . . . .!

akharwarbaz
29-03-2006, 14:28
سلام خدمت شما دوستان!
این بازی رو که براتون میزارم با استفاده از همین نرم افزار توسط یه دوست ایرانی درست شده پس بهتره این نرم ازار رو دست کم نگیرید این لینک دریافت فایل نیست ولی توضیحاتش رو از خود سازندش ببینید راستی لینک دانلود توی همون جا هست!
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

akharwarbaz
29-03-2006, 14:34
ولی عجب اموزش هایی میزاری واقعا ازت ممنونم!

mehdi_bjt
29-03-2006, 18:17
سلام
به نظر من وقتتون رو تلف مي كنيد چون بازي ساختن بدون كد نويسي هيچ نتيجه اي براي شما در بر نخواهد
داشت. :cool:

Prince_ of _Persia
31-03-2006, 08:19
باز هم سلام

از محسن آقا و كنجكاو جان عزيز بخاطر همراهيشون ممنونم. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
گرچه براي طراحي اولين بازي كمي زود بود اما با آموزش هاي امروز مي تونيد به راحتي مطلب طراحي اولين بازي رو درك كنيد.در جواب مهدی جان هم باید بگویم این موتور قابلیت استفاده از کد نویسی هم دارا است و اگه شما به لینکی که کنجکاو جان گذاشتند رجوع می کردید می فهمیدید که این موتور دارای چه قابلیت هایی است که می توان با آن یک بازی استراتژِی فارسی در حد کماندوز ایجاد کرد و طراحی بازی با زبان های برنامه نویسی و بدون استفاده از موتور مخصوص وقت تلف کردن واقعی است. [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

از انجاييكه كه واكنش هاي بسيار زياد است فقط تعدادي از مهمترينشون رو براتون مي ذارم و بقيش به عهده سعي وتلاش خودتون در درك آنها بستگي داره .

واكنش هاي مهم در رده move :
اولين دسته از واكنش ها شامل اين حركت هاي وابسته به آبجكت مي باشند.

Start moving in a direction : از اين واكنش براي شروع حركت نمونه در يك جهت خاص استفاده كنيد شما مي توانيد جهت حركت را با استفاده از كليدهاي پيكان مشخص كنيد. از دكمه وسط براي توقف حركت استفاده كنيد. همچنين شما نياز داريد تا سرعت حركت را مشخص نماييد. سرعت در پيكسل براي هر step ( لحظه )معين مي شود . مقدار پيش فرض 8 است. ترجيحا شما از سرعت هاي منفي استفاده نمي كنيد . شما مي توانيد حركتهاي چند گانه تعيين كنيد. در اين حالت يك انتخاب شانسي بوجود مي آيد. در اين حالت به عنوان مثال شما مي توانيد اجازه دهيد غول در جهت چپ يا راست شروع به حركت نمايد.


Set the horizontal speed : سرعت يك نمونه شامل بخشي افقي و بخشي عمودي است . با اين واكنش شما مي توانيد سرعت افقي را تغيير دهيد. يك سرعت افقي مثبت به معناي حركت در جهت راست مي باشد. يك سرعت افقي منفي به معناي حركت به سمت چپ است . سرعت عمودي نيز به همان صورت باقي مي ماند. براي افزايش سرعت افقي به سرعت قبلي از Relative استفاده كنيد. ( يا براي كاهش سرعت با يك مقدار منفي )

Set the vertical speed: به روش يكسان ، با اين واكنش شما مي توانيد سرعت عمودي نمونه را تغيير دهيد.

Jump to a given position: با استفاده از اين واكنش شما مي توانيد نمونه را در يك مكان خاص قرار دهيد . شما بسادگي مشخصات x و y را تعيين مي كنيد و نمونه از نقطه مرجع به اين مكان تغيير مكان مي دهد . اگر شما جعبه چك relative را فعال كنيد ، مكان جديد نمونه به مكان كنوني وابسته مي شود . اين واكنش اغلب براي حركت دادن متناوب نمونه استفاده مي شود . در هر لحظه ما مكان را مقداري افزايش مي دهيم .

Bounce against objects : هنگامي كه شما اين واكنش رادر رويداد برخي از آبجكت ها قرار مي دهيد ، نمونه ها به طور طبيعي از اي آبجكت به سمت مخالف پرش مي كنند. اگر شما پارامتر precise را به false تنظيم كنيد. تنها ديوارهاي عمودي و افقي بدرستي عمل مي كنند . هنگامي كه شما precise را به true تنظيم كنيد ديوارهاي كج ( و ديوارهاي مخفي ) همچنين به صورت رضايتبخشي عمل مي كنند. اگر چه اين آهسته تر است . همچنين شما مي توانيد مشخص نماييد كه پرش به سمت مخالف فقط از آبجكت هاي solid يا تمام آبجكت ها باشد . لطفا تشخيص دهيد كه پرش در جهت مخالف كاملا دقيق نيست زيرا اين عمل بستگي به ويژگي هاي زيادي دارد . اما در بيشتر مواقع تاثير آن به اندازه كافي مفيد است .

Prince_ of _Persia
31-03-2006, 08:27
واکنش های مهم رده main set1

اين دسته از واكنش ها با ايجاد ، تغيير و نابود شدن نمونه هاي آبجكت ، افكت صوتي و room ها سر و كار دارند .

Create an instance of an object : با اين واكنش شما مي توانيد نمونه اي از يك آبجكت ايجاد كنيد . شما مشخص مي نماييد كه كدام آبجكت ايجاد شود و مكان نمونه جديد را تعيين مي نماييد. اگر شما جعبه چك relative را فعال نماييد موقعيت نمونه جديد به موقعيت نمونه كنوني وابسته مي شود . ايجاد نمونه ها در طي بازي بينهايت مفيد است . يك سفينه فضايي مي تواند گلوله ها را ايجاد نمايد . يك بمب مي تواند انفجار را ايجاد كند و غيره . در بيشتر بازي شما تعداد آبجكت controller داريد كه لحظه به لحظه اي ديگر غولها يا آبجكت هاي ديگري را ايجاد مي كنند . براي نمونه هاي جديد ايجاد شده رويداد creation اجرا مي شود .

Change the instance : با اين واكنش شما مي توانيد نمونه فعلي را به نمونه اي از آبجكت ديگري تغيير دهيد . به عنوان مثال شما مي توانيد يك نمونه از يك بمب را به يك انفجار تغيير دهيد. تمامي تنظيمات مثل حركت و مقدار متغيرها يكسان مي مانند . شما مي توانيد نشخص نماييد كه آيا رويداد destroy براي آبجكت كنوني و رويداد creation براي آبجكت جديد اجرا شود يا نشود .

Destroy the instance : با اين واكنش شما نمونه كنوني را نابود مي كنيد . رويداد destroy براي اين نمونه اجرا مي شود .

Change the sprite : از اين واكنش براي تغيير اسپرايت از يك نمونه استفاده نماييد . شما اسپرايت جديد را مشخص مي نماييد. شما همچنین می توانید مشخص کنید کدام تصویر فرعی نمایش داده شود. معمولا شما از صفر ( تصویر فرعی اول ) برای آن استفاده می کنید.مگر اینکه بخواهید تصویر فرعی مشخصی را ببنید. اگر شما نمی خواهید تصویر فرعی که نمایش داده می شود تغییر کند از -1 استفاده کنید. سرانجام شما سرعت انیمیشن تصویر فرعی را تغییر می دهید. اگر شما می خواهید تصویر فرعی مشخصی را ببینید سرعت را به صفر تنظیم کنید. اگر سرعت بزرگتر باشد یک تصویر فرعی نادیده گرفته می شود. اگر سرعت کوچکتر از یک باشد تصویر فرعی چندبار نشان داده می شود. از سرعت منفی استفاده نکنید. تغییر دادن اسپرایت خصوصیت مهمی است . برای مثال اغلب شما می خواهید اسپرایت یک کاراکتر را بسته به جهتی که راه می رود تغییر دهید. این عمل با ساختن اسپرایت های متفاوت برای هر ( چهار ) جهت اصلی دستیافتنی است. درون رویداد Keyboard برای کلیدهای جهت دار شما جهت حرکت و اسپرایت را تنظیم می کنید.

Play a sound : با اين واكنش شما يكي از منبع ابزارهاي صوتي را كه به بازي اضافه كرده بوديد اجرا مي كنيد.شما مي توانيد صوتي را كه مي خواهيد نواخته شود و اينكه آن بايد يكبار نواخته شود ( بصورت پيش فرض ) يا به صورت حلقه اي متوالي نواخته شود . پس اگر شما يك صداي midi را شروع كنيد صداي midi كنوني متوقف مي شود. به جز صدا داراي buffer چندگانه تنها يك نمونه از هر صدا مي توانند نواخته شوند. پس اگر صوت يكساني قبلا در حال نواخته شدن بوده است متوقف مي شود و دوباره شروع مي شود .

Stop a sound : اين واكنش صوت مشخص شده را متوقف مي نمايد. اگر نمونه هاي چندگانه از اين صدا در حال اجرا باشند همگي متوقف مي شوند.

Go to previous room : به room قبلي مي رود . شما مي توانيد نوع افكت انتقال بين room ها را مشخص نماييد . شما بهتر است آزمايش كنيد تا ببينيد كه كدام يك براي شما مناسب است . اگر شما در room نخستين باشيد يك خطا دريافت مي كنيد.

Go to next room : به room بعدي مي رود . شما مي توانيد افكت انتقال را تعيين كنيد .

Prince_ of _Persia
31-03-2006, 08:31
واكنش هاي مهم رده main set2

Display a message : با اين واكنش شما مي توانيد يك پيغام در يك جعبه گفتگو نمايش دهيد. شما بسادگي پيغام را تايپ مي كنيد . اگر شما از علامت # در متن پيغام استفاده كنيد آن بصورت يك كاراكتر خط جديد ترجمه مي شود . ( از علامت #\ براي نشان دادن خود # استفاده كنيد ) . اگر متن با يك علامت نقل قول يا علامت نقل قول دو تايي شروع شود. به عنوان يك عبارت ( expression ) تفسير مي شود . براي اطلاعات بيشتر در مورد عبارت ها فصل بعدي را ملاحظه كنيد .

Show the game information : با اين واكنش شما پنجره اطلاعات بازي را ظاهر مي كنيد .

Restart the game : با اين واكنش شما بازي را از نوع آغاز مي كنيد .

End the game : با اين واكنش شما بازي رابه پايان مي رسانيد .

Save the game : با اين واكنش شما مي توانيد وضعيت كنوني بازي را ذخيره نماييد . شما نام فايل براي ذخيره را تعيين مي كنيد ( اين فايل در پوشه محل اجرا بازي ايجاد مي شود ) بعدا بازي مي تواند از واكنش بعدي آغاز شود. ( لطفا دقت کنید که تنها چیزهای ابتدایی بازی ذخیره می شوند. چیزهایی که به عنوان مثال عبارتند از صداهای کنونی که در حال اجراست و جنبه های حرفه ای مانند محتویات ساختار data و particles و غیره. )

Load the game : وضعیت بازی را از یک فایل بارگذاری می کند . شما نام فایل را تعیین می نمایید . اطمینان خاصل کنید که بازی ذخیره شده برای همین بازی است و یا نسخه یکسانی از Game Maker ایجاد شده باشد . در غیر اینصورت یک خطا رخ می دهد . (برای اینکه دقیقتر گفته باشیم بازی در ÷ایان لحظه کنونی بارگذاری می شود . ÷س تعدادی از واکنش ها بعد از این واکنش در بازی کنونی هنوز در حال اجرا هستند نه از بازی بار گذاری

Prince_ of _Persia
31-03-2006, 08:37
واکنش های رده control و drawing را نمی گذارم در عوض تمامی واکنش های score رو قرار میدم.

واکنش های score :

در اغلب بازی ها بازیکن دارای یک امتیاز خاص می باشد. همجنین اغلب بازی ها به بازیکن تعدادی جان میدهند. در آخر اغلب بازیکن ها دارای یک سلامتی خاص هستند. واکنش های ذیل کار کردن با امتیاز , خون و جان بازیکن را آسان نموده است.

Set the score : گیم میکر دارای یک مکانیزم امتیاز داخلی است. امتیاز معمولا درون عنوان پنجره نمایش داده می شود. شما می توانید از این واکنش برای تغییر امتیاز استفاده کنید. شما بسادگی مقدار جدیدی برای امتیاز فراهم می کنید. اغلب اوقات شما می خواهید چیزی را به امتیاز اضافه کنید در این حالت فعال نمودن جعبه چک Relative را فراموش نکنید.

If a score has a value : با این واکنش سوالی شما می توانید بررسی کنید که امتیاز به مقدار معینی رسیده است. شما مقدار و اینکه این مقدار باید بزرگتر کوچکتر یا مساوی امتیاز باشد را تعیین می نمایید.

Draw the value of score : با این واکنش شما می توانید مقدار امتیاز را در مکان معینی بر روی صفحه رسم نمایید. شما مکان و عنوان چیزی را که باید در سمت مقابل امتیاز قرار یگیرد را فراهم می کنید و امتیاز با فونت کنونی رسم می شود. این واکنش را تنها می توانید در رویداد drawing یک آبجکت استفاده کنید.

Display the highscore table : برای هر بازی ده امتیاز برتر نگه داری می شوند. این واکنش لیست highscore را نمایش می دهد. اگر امتیاز کنونی در بین ده امتیاز برتر باشد امتیاز جدید وارد می شود و بازیکن می تواند نام خود را تایپ کند. بنابراین شما ابتدا باید امتیاز را با واکنش قبلی اضافه کنید. شما میتوانید تصویر پس زمینه مورد استفاده را تعیین کنید و اینکه پنجره باید حاشیه داشته باشد کدام رنگ برای ورودی جدید و ورودی های دیگر باید انتخاب شود و اینکه کدام فونت استفاده شود.

Clear the highscore table : این واکنش جدول highscore ( بالاترین امتیازها ) را پاک میکند.
Set the number of lives: گیم میکر همچنین دارای یک سیستم داخلی جان است. با این واکنش شما می توانید تعداد جان های باقیمانده را تغییر دهید. معمولا شما در ابتدای بازی آن را به مقداری مثل سه تنظیم می کنید و سپس بسته به آنچه که اتفاق می افتد آن را کاهش یا افزایش می دهید. اگر شما می خواهید تعداد جانها را اضافه یا کم نمایید فراموش نکنید جعبه چک Relative را فعال کنید. در لحظه ای که تعداد جانها به صفر برسد ( یا کوچکتر از صفر شود ) رویداد ((no more lives)) تولید می شود.

If lives is a value : با این واکنش سوالی شما می توانید اینکه تعداد جانها به مقدار مشخصی رسیده است را بررسی کنید. شما مقدار و اینکه تعداد جانها باید کوچکتر , بزرگتر یا مساوی این مقدار باشد را مشخص می کنید.

Draw the number of lives : شما می توانید با این واکنش تعداد جانها در یک مکان مشخصی بر روی صفحه ترسیم کرد. شما مکان و عنوانی که باید در جلوی تعداد جانها قرار بگیرد را فراهم می کنید. تعداد جانها با فونت کنونی ترسیم می شود. این واکنش تنها می تواند در رویداد drawing یک آبجکت استفاده شود.

Draw the lives as image : بیشتر از ترسیم تعداد جانهای باقیمانده بوسیله اعداد اغلب استفاده از تعدادی تصویر کوچک برای اینکار زیباتر است. این واکنش دقیقا همین کار را انجام می دهد. شما موقعیت و تصویری که در مکان مشخص شده تعداد جانها بصورت تصویر باید ترسیم گردد را تعیین می کنید. این واکنش تنها می تواند در رویداد drawing یک آبجکت استفاده شود.

Set the health : گیم میکر دارای یک سیستم داخلی health ( وضعیت سلامتی ) است. شما می توانید این واکنش را برای تغییر health استفاده نمایید. مقدار 100 سلامتی کامل را می رساند و صفر تمام شدن سلامتی را می رساند. شما بسادگی مقدار جدید را برای سلامتی فراهم می کنید. اغلب شما می خواهید مقداری را به سلامتی اضافه یا کم کنید. در این حالت فعال کردن Relative را فراموش نکنید. هنگامی که سلامتی کمتر یا مساوی صفر می شود یک رویداد out of health تولید می شود.

If a health is a value : با این واکنش سوالی شما می توانید رسیدن سلامتی به یک مقدار مشخص را بررسی نمایید. شما مقدار و اینکه سلامتی باید کمتر یا بیشتر یا مساوی این مقدار باشد را تعیین می کنید.

Draw the health bar : با این واکنش شما می توانید سلامتی را به شکل یک میله سلامتی یا helath bar ترسیم نمایید.هنگامی که سلامتی 100 است میله پر ترسیم میشود. هنگامی که به صفر برسد میله خالی است. شما مکان و سایز میله سلامتی و رنگ میله و پس زمینه میله را تعیین می کنید.

Set the window caption : معمولا در عنوان پنجره نام room و امتیاز بازی نمایش داده میشود. با این واکنش شما می توانید آن را تغییر دهید. شما می توانید که نمایش امتیاز , جانها , سلامتی و عنوان هر یک از این موارد را تعیین نمایید.

Prince_ of _Persia
31-03-2006, 09:01
خوب حالا بالاخره به قسمت پایانی می رسیم [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ایجاد یک روم در بازی :
برای ایجاد یک روم از نوار ابزار آیکون add a room رو انتخاب کنید با این کار یک اتاق خالی برای قرار دادن آبجکت ها و تصاویر پس زمینه بوجود می آید . در برگه objects قسمت پایین این پنجره سمت چپ شما می توانید نام آبجکت خود را از لیست شناور انتخاب کنید و بعد با یک کلیلک آنها را در روم قرار دهید با کلیلک راست آبجکت یا در واقع نمونه ای از آّبجکت که در روم قرار دادید را می توانید حذف کنید . مکانی که شما آبجکت را در روم قرار می دهید تحت شبکه خطوطی است که می بینید برای قرار دادن دقیقتر نمونه های خود بر روی روم شما می توانید این شبکه ها را با دستکاری در قسمت بالای پنجره کوچکتر یا بزرگتر کنید و یا با دکمه ای که شکل شبکه دارد آن را مرئی و نا مرنی کنید.

در برگه setting شما می توانید سرعت روم بر حسب فریم بر ثانیه و اندازه روم و عنوان آن را تعیین کنید.

در برگه backgrounds شما می توانید تصویر پس زمینه خود را از منوی شناور انتخاب کنید تا به روم اضافه شود دقت کنید که حتما گزینه visible when room starts را فعال کنید تا در بازی این پس زمینه را مشاهده کنید. در قسمت همچنین می توانید رنگ پس زمینه روم را در صورت عدم استفاده از بک گراند تعیین کنید.

بعد از اینکه نمونه های آبجکت های خود را در روم در مکانی مناسب قرار دادید می توانید دکمه run game را در نوار ابزار کلیک کنید تا بازی اجرا شود حال از بازی خود لذت ببرید :tongue: . دکمه قرمز که در پهلوی این دکمه است هم برای اجرای بازی در حالت debug mode است که برای خطا یابی بازی بسیار مفید است .

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

تمامی مطالب گفته شده متعلق به خودم است و این مطالب از ترجمه ویرایش نشده mark overmas که سازنده و طراح این نرم افزار است بصورت گزیده نوشته شده و قراره که تا 2 -3 ماه دیگه کتاب اون منتشر بشه . نظرتون چیه؟

از حالا به بعد مشکلات نظرات و پیشنهادات خودتون رو در این تاپیک مطرح کنید تا به اونها جواب بدم. بزودی سورس دو بازی که قبلا گذاشتم رو هم آپلود می کنم. پس حتما نظر یادتون نره ....

موفق باشید.. :cool:

akharwarbaz
31-03-2006, 21:27
بزودی سورس دو بازی که قبلا گذاشتم رو هم آپلود می کنم.
موفق باشید.. :cool:
منظورت از 2 تا بازي قبلا گذاشتي چيه....اگه منظورت انتقال نخودي هست كه خيلي ممنون ميشم كه سورسشو
بزاري...راستي تاحالا هيچ جا نديدم به اين واضحي مطالب رو بيان كنن ....واقعا ازت ممنونم! :blush: :rolleye:

Prince_ of _Persia
01-04-2006, 07:49
منظورت از 2 تا بازي قبلا گذاشتي چيه....اگه منظورت انتقال نخودي هست كه خيلي ممنون ميشم كه سورسشو
بزاري...:

سورس هر دو شونو اپلود كردم اينم لينكش :

سورس نخودی با حجم 370kb : [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

سورس مهاجمان با حجم 196kb : [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



راستي تاحالا هيچ جا نديدم به اين واضحي مطالب رو بيان كنن ....واقعا ازت ممنونم! :blush: :rolleye

قابلي نداره . ما اينيم ديگه. :cool:

---------------------------------------------
ببینم کي می تونه این دوتایی رو که سورسشو گذاشتم تکمیل کنه و بازی رو جالب تر کنه .......

در ضمن شايد در درك بازي انتقام نخودي مشكل داشته باشيد به همين مناسبت شايد من بزودي آموزش ساخت بازيهاي platform رو به همراه مثال در اینجا قرار بدم.

mehdi_bjt
01-04-2006, 08:18
سلام
Pop جان من دارم بازيهاتو دانلود مي كنم . بعد از اجراشون يه پست ديگه ميدم . اگه كارهات خوب بودن يه
معذرت خواهي به شما بدهكار خواهم بود . در ضمن يكي ديگه از بر و بچ سايت يك بازي به نام نخودي ساخته
بود .

mehdi_bjt
01-04-2006, 09:48
سلام
من بازيهاتون رو اجرا كردم . متاسفانه به نظر من وقت تلف كردنه . ولي اگه دوست دارين همين طوري پيش برين
من يك پيشنهاد داشتم . بازيهاي دو بعدي حداقل سه لايه تصوير در پشت زمينه خود دارند . بازيهاي سگا 5 لايه تصوير
براي پشت زمينه استفاه مي كردند . بازيهاي شما فقط يك لايه در پشت زمينه داره كه من پيشنهاد ميكنم بررسي
كنيد . اميدوارم كه موفق باشيد. :cool:

Prince_ of _Persia
02-04-2006, 07:42
من بازيهاتون رو اجرا كردم . متاسفانه به نظر من وقت تلف كردنه

خوب شما وقتتو بيخودي اينجا تلف نكن. :biggrin: (شوخي كردم)


بازيهاي دو بعدي حداقل سه لايه تصوير در پشت زمينه خود دارند . بازيهاي سگا 5 لايه تصوير
براي پشت زمينه استفاه مي كردند . بازيهاي شما فقط يك لايه در پشت زمينه داره كه من پيشنهاد ميكنم بررسي
كنيد .

5 لايه :blink: !!! با اينهمه لايه چي كار ميكرده ؟؟؟ من تا حالا با سه لايه كار كردم از اون براي حركت دادن به ابرها استفاده كردم ولي ديگه 5 لايه خيلي زياده تازه وقتي استفاده نداره چرا بايد استفاده كنم؟؟؟


در ضمن يكي ديگه از بر و بچ سايت يك بازي به نام نخودي ساخته
بود .

ايشون قرار بود بازي را اپلود كنند ولي خبري نشد خوب من هم از ايدش تنها استفاده كردم اشکالی داره ؟ گرچه اگه آپلود كنه سورسش قراره vb باشه یعنی کلا با vb طراحی شده نه با gameMaker.


اگه كارهات خوب بودن يه
معذرت خواهي به شما بدهكار خواهم بود

شما نخودی که با game maker ساخته شده رو با C++ تو یه هفته بساز اونوقت من از شما معذرت خواهی می کنم.گرچه فکر کنم تو 666 هفته هم نتونی بسازیش :biggrin:

یه نگاهی هم به اون بازی استراتژی که با game maker ساخته شده و لینکش رو کنجکاو عزیز گذاشته نگاهی بنداز . اگه این game maker نبود عمرا چنین بازی ساخته می شد. انسان باید از تکنولوژِی روز استفاده کنه دوست من. مثل این می مونه که شما بخوای برای ساخت یک برنامه حسابداری از اسمبلی به جای زبان های روز تحت ویندوز استفاده کنی :blink:چون که مثلا سطح دسترسی قوی تر به سخت افزار داره معملومه که غیر ممکن میشه.

mehdi_bjt
02-04-2006, 07:54
سلام
اين بازي رو پارسال نوشتم . 2 ماه وقت برده . چون خيلي آماتور بودم:

اسنيك فارسي ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ](farsi).rar)

mehdi_bjt
02-04-2006, 07:58
سلام
من دارم يك Engine براي بازيهاي Platform Scroller كه سبك بازيهاي مثل Mario رو شامل ميشه مي نويسم . 2
ماه ديگه تموم ميشه ولي با اين Engine مي تونم 10 بازي رو در عرض يك ماه توليد كنم . وقتي يكيشون آماده شد
لينكشو ميزارم توي اين تاپيك تا بچه ها قضاوت كنن . ;)

ALt3rnA
04-04-2006, 22:48
اقا مام اینو ساختیم جدیدا!!! شرمنده خیلی بچه بازیه ولی در عوض 1 ساعته ساختمش: حجمش 1111 کیلو

لینک:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] e.html

حسابی بمون بخندید!!!!!

my friend
07-04-2006, 11:04
به عنوان اولین بازی بدک نیست

saeid_azad
08-04-2006, 05:42
يه سوال
چرا توي xp براي من پيغام ميده كه ريزولوشنم زياده وحتي بعد از مينيمم كردنش بازم اين پيغامو ميده البته در 98 اين مشكل رو ندارم

Moh3en_DDD
08-04-2006, 18:56
پرنسس جان . . . اگه تو صفحه ي فكر كنم دوم نگاه كني فكر كنم نوشته بودي كه سعي مي كنم مطالبم را با تصوير بيان كنم . . . نه !

Omid_Sadeghvand
08-04-2006, 20:13
سلام بچه ها من هم بازی ساختم ( بازهایی در حد سیبریا ولی ترسناک ) و می خواهم به اشتراک بگذارم و در اینجا نمی شه

فایل پیوست داد لطفا مرا راهنمایی کنید و در کدام سایت میتوان اشتراک گذاری کرد یا در همین سایت.

Omid_Sadeghvand
08-04-2006, 20:22
بازی در حد سیبریا ولی ترسناک و فکری....

saeid_ronaldo
08-04-2006, 20:30
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] اينجا اپلودش كن و بعد لينكشو بذار

Moh3en_DDD
08-04-2006, 22:33
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])

تصویری از ابجکت ها :

Prince_ of _Persia
13-04-2006, 13:36
اقا مام اینو ساختیم جدیدا!!! شرمنده خیلی بچه بازیه ولی در عوض 1 ساعته ساختمش: حجمش 1111 کیلو

به عنوان اولین بازی خوبه . همچنین می تونستی برای اولین بازیت اون بازی توپ ها را بسازی که آموزش رو دادم یا بازی cath the clown . اگه هم می دونستی که اولین بازی که با برنامه نویسی میشه ساخت چه شکلیه اون وقت بازی خودت رو در مقابلش پادشاه می دونستی :cool:


پرنسس جان . . . اگه تو صفحه ي فكر كنم دوم نگاه كني فكر كنم نوشته بودي كه سعي مي كنم مطالبم را با تصوير بيان كنم . . . نه !

شرمنده این چند وقت خیلی سرم شلوغه چون دارم رو طراحی بازیهای سه بعدی با game maker کار می کنم اولین بازیم که در حد doom هست البته doom2 رو هر وقت تموم کردم می زارم. عکس ها رو هم همینطور و البته آموزش طراحی بازی های platform و بعد هم بازیهای سه بعدی فقط نمی دونم اینجا قرارش بدم یا چند تا تاپیک دیگه بزنم.؟

Moh3en_DDD
13-04-2006, 13:58
به عنوان اولین بازی خوبه . همچنین می تونستی برای اولین بازیت اون بازی توپ ها را بسازی که آموزش رو دادم یا بازی cath the clown . اگه هم می دونستی که اولین بازی که با برنامه نویسی میشه ساخت چه شکلیه اون وقت بازی خودت رو در مقابلش پادشاه می دونستی :cool:



شرمنده این چند وقت خیلی سرم شلوغه چون دارم رو طراحی بازیهای سه بعدی با game maker کار می کنم اولین بازیم که در حد doom هست البته doom2 رو هر وقت تموم کردم می زارم. عکس ها رو هم همینطور و البته آموزش طراحی بازی های platform و بعد هم بازیهای سه بعدی فقط نمی دونم اینجا قرارش بدم یا چند تا تاپیک دیگه بزنم.؟

اينو بگم كه ادامه بده تا سه بعدي نظر شخصي من اينه كه يه تاپيك ديگه باز كني !!!

دوم ... فكر نكنم هنوز دو بعدي تمام شده باشه . . . ! تازه بعد از دو بعدي بايد اكريپت نويسي اش را بگي ؟؟؟

حالا حالا تا سه بعدي مونده . . . . . . .! در ضمن اگه بتوني در حد دوم برسوني كه عالي. . . .! بلدي استراتژيك طراحي كني ؟؟؟ . . . . . ! اگه اين مطالب را داخل يك كتاب الكترونيكي بكني فكر كنم بهتر باشد . . . ! نه . . . ! واي چقدر حرف زدم شما هم يه چيز بگيد ديگه !!!؟؟؟

Omid_Sadeghvand
14-04-2006, 09:14
بچه ها به این تایپیک یه سری بزنید بازیهای ساخت خودم را ببینید ( بازی های در حد بازیهای سه بعدی )

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

Moh3en_DDD
14-04-2006, 17:04
بچه ها به این تایپیک یه سری بزنید بازیهای ساخت خودم را ببینید ( بازی های در حد بازیهای سه بعدی )

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

بازي ها را با گيم ميكر ساخته ايد ؟

ALt3rnA
16-04-2006, 18:24
نه با نه با مولتی بیلدر هستش

ALt3rnA
16-04-2006, 20:13
این جدیدتره.حدود 8 مرحله.1 مگ
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

Moh3en_DDD
17-04-2006, 14:23
من در حال ساخت بازی هستم . . . یه بازی که اگه آموزششو بزارم واقعا می فهید که با Game Maker چه کارهایی میشه کرد . . .! البته در سطح خیلی بالا نمیسازم و سعی می کنم کمتر اسکریپت طراحی کنم . . . درضمن اگر شما هم سوزه ای دارید بگید تا بسازم . . . لازم است بگویم که دو بعدی باشه و خیلی هم سخت نباشه چون اصلا وقت ندارم . .. !

MARTIN
19-04-2006, 02:00
این جدیدتره.حدود 8 مرحله.1 مگ
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
جالب بود گرافیکشم خوب بود ولی کنترلش یکم مشکل داشت بعد این مرحله اخرش و باید چیکار کرد؟؟

Moh3en_DDD
19-04-2006, 11:20
جالب بود گرافیکشم خوب بود ولی کنترلش یکم مشکل داشت بعد این مرحله اخرش و باید چیکار کرد؟؟

لطفا از بحث اصلی خارج نشوید . . . !

Moh3en_DDD
19-04-2006, 12:04
اصول طراحی بازی استراتزیک :

بدون شرح :

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])

Moh3en_DDD
19-04-2006, 12:08
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])

Omid_Sadeghvand
19-04-2006, 13:54
بچه ها هر دو بازی که ساختم را دانود کردید.

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

لطفا در تایپیکم نظر بدهید...باتشکر.

ALt3rnA
20-04-2006, 16:28
Martin سلام!!اقاشدیدا شرمنده شب بود حواسم نبود ...اقا اون مرحله ی اخر نیست که ..... بعدش میری از پل سراط و... اینا میگزری اخرشم میری بهشت.در ضمن نمیدونم چرا ولی وقتی بچسبی دیوار گیر میدی
اونی که میگه مرحله ی اخره وقتی میری پایین باید بره مرحله ی بعد الان درستش میکنم لینکشو میزارم

Morteza_SOS
28-04-2006, 11:55
به نام خدا
با سلام بر همگی

خواهـــــــــــــــــــــ ــــــــــــــــش می کنم تمامی مقالات را به صورت Pdf قرار دهید هم راحتتر می شه کارتان و هم ما وقتمون تلف نمی شه
با تشکر

ماراتون
11-05-2006, 00:58
ها من که نودونم شما چی وگید

Creeping Death
30-05-2006, 19:35
ببخشيد چطوري مي شه آيكون پيش فرض گيم ميكر را تغيير داد؟

mmokhtari
11-06-2006, 11:30
راهنماي ساخت بازي هاي رايانه اي تاليف : پويان ابولقاسم زاده

Moh3en_DDD
11-06-2006, 13:29
- تو global game settings>loding>change icon

a3m00n
24-06-2006, 17:52
بچه ها واقعا دستتون درد نكنه من يكي خيلي ممنونم ازتون و به زودي بازي هامو مي زارم واستون

Ali-Bahal
29-07-2006, 22:19
این تاپیک با اجازه آقا پرینس تبدیل به PDF شد

ممکن است ناقص باشد بعدا هر تیکه آموزش را با عکس و مطلب های اضافی کامل می کنم و خدمتتان می گذارم فعلا بتا را دانولد کنید:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

micropersian
30-08-2006, 16:08
این تاپیک با اجازه آقا پرینس تبدیل به PDF شد

ممکن است ناقص باشد بعدا هر تیکه آموزش را با عکس و مطلب های اضافی کامل می کنم و خدمتتان می گذارم فعلا بتا را دانولد کنید:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

خب متاسفانه از اون سايتي كه شما upload کردید پاک شده اگه میشه تو persiangig آپلود کن که این مشکلات هم پیش نیاد اگه هم کسی رو خواستی دعوتت کنه به خودم بگو با تشکر :laughing:

undr
30-08-2006, 19:52
بابا چرا دیگه آموزش نمیزارین؟؟

Moh3en_DDD
30-08-2006, 19:59
بابا چرا دیگه آموزش نمیزارین؟؟

گيم ميكر ديگه قديمي شده ... شما بهتره 3d Game Studio را كه آموزش داده شده است ياد بگيريد !

djelyas2006
20-09-2006, 12:49
اقا يك آدم خيري ژيداشه اين همه آموزش رو به صورت ژي دي اف كنه ثواب دنيا و آخرت رو هم ببره

djelyas2006
20-09-2006, 12:51
ببخشيد آقا واقعا اشتباه شد قلط املايي شد

يك آدم خيري اين همه آموزش مفيد رو به صورت فايل پي دي اف در بياره

erif
23-09-2006, 13:32
پس چرا آموزش جديد نمي ذاريد؟

monitor00sina
23-09-2006, 19:56
آره بچه ها راست می گن آموزش بذارید ما آموزش می خواهیم....

erif
24-09-2006, 16:05
خب اگه آموزش نمي ذاريد لااقل دليلش رو بگيد

Moh3en_DDD
24-09-2006, 16:29
يه چند روز صبر كنيد آموزش فوقه حرفه اي مي ذارم ... دارم ترجمش مي كنم !

erif
25-09-2006, 16:31
خيلي ممنون
حالا ديگه خيالم راحت شد

monitor00sina
27-09-2006, 15:33
يه چند روز صبر كنيد آموزش فوقه حرفه اي مي ذارم ... دارم ترجمش مي كنم !
خوب اين ترجمه تا چند سال ديگه به دست ما ميرسه؟ :angry: :angry: :angry:

erif
27-09-2006, 20:51
خوب اين ترجمه تا چند سال ديگه به دست ما ميرسه؟ :angry: :angry: :angry:

حق با monitor00sina است
ما چقدر بايد صبر كنيم :angry:

erif
27-09-2006, 20:56
ببخشيد علامت سوال يادم رفت:
ما چقدر بايد صبر كنيم؟

erif
03-10-2006, 20:48
ديگه ديوونه شدم بابا پس چرا آموزش نمي دين؟

mohammad_twe
25-12-2006, 19:17
اقا یکی به ما میگه چه جوری پسوند فایل کیم میکر رو به Exe تبدیل کنیم ؟

Moh3en_DDD
25-12-2006, 20:38
اقا یکی به ما میگه چه جوری پسوند فایل کیم میکر رو به Exe تبدیل کنیم ؟

File ==> creat exe...

mohammad_twe
26-12-2006, 11:20
اقا بی زحمت کامل تر میگی متوجه نشدم ؟

Moh3en_DDD
27-12-2006, 21:03
منوی File گزینه ی creat exe

MARTIN
31-01-2007, 22:39
سلام

من چند تا سوال در مورد بخش اسکریپت برنامه game maker داشتم.

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

دومین سوالم هم اینه که چه جوری به اسکریپت متغیر ارسال کنیم و بعد از محاسبه داخلی, زیر برنامه مقادیر برگردونه در متغیر هایی که ما می خوایم یعنی این که برای اسکریپت بتونیم متغیر داخلی تعریف کنیم تا بشه از از یه اسکریپت چند جا استفاده کرد.

ممنون.

Moh3en_DDD
31-01-2007, 23:17
دومین سوالم هم اینه که چه جوری به اسکریپت متغیر ارسال کنیم و بعد از محاسبه داخلی, زیر برنامه مقادیر برگردونه در متغیر هایی که ما می خوایم یعنی این که برای اسکریپت بتونیم متغیر داخلی تعریف کنیم تا بشه از از یه اسکریپت چند جا استفاده کرد.

در این صورت باید اسکریپت ها را به صورت Function ( فانکشن ) یا پروسیجر تعریف کرد که دردسر هم زیاد نداشته باشه .

سوال اولتون هم متوجه نشدم .

MARTIN
01-02-2007, 01:21
سلام دستت درد نکنه


در این صورت باید اسکریپت ها را به صورت Function ( فانکشن ) یا پروسیجر تعریف کرد که دردسر هم زیاد نداشته باشه .
می شه یه مثال بزنی دوست عزیز


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

gogole magole
12-04-2007, 16:51
اقا من این برنامه ی گیم مکرو رو دانلود کردم اصلا نخوندش
معلوم نبود چی بود دانلود کردی
کی لینکشو داره/؟ بذاره مممنون میشم

gogole magole
13-04-2007, 11:03
بچه ها من چطوری فایل های Pdf رو بخونم لطفا بگید؟؟

persian-balouch
11-06-2007, 01:19
نرم افزار Adobe Acrobat Reader رو نصب کن
ترجیحا نسخه8
نسخه 6 به پایین هم توبیشتر سیدی های باز ها هست

moj divane
08-06-2009, 09:57
ها فکر کنم اشتبا هی اومدم
729 روزه اینجا چیزی نوشته نشده
پس آموزش فوق حرفه ای چی شد

keratus
20-06-2009, 18:28
تمام آموزش هایی که گفتی توی تمام سایت ها هست و تقریبا همه بلدند
اگر نکته ای جدید داری بنویس

obi-wan
21-06-2009, 20:49
نویسنده این آموزش ها خیلی وقته که از گیم مکر اسباب کشی کرده و به 3D Game Studio رفته الانم مدیر انجمن takinfo.com هست

Prince_ of _Persia
24-06-2009, 10:53
تمام آموزش هایی که گفتی توی تمام سایت ها هست و تقریبا همه بلدند
اگر نکته ای جدید داری بنویس

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

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

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



نویسنده این آموزش ها خیلی وقته که از گیم مکر اسباب کشی کرده و به 3D Game Studio رفته الانم مدیر انجمن takinfo.com هست

ممنون . دقیقا الان مدیر بخش game studion در سایت تک اینفو هستم و در خدمت دوستان. اینجا هم چند وقت یکبار می یام ولی از بازی سازی در اینجا دیگه خبر چندانی نیست و گرنه بیشتر میامدم.

keratus
01-07-2009, 17:51
عزیز من اون موقع که من این آموزش ها رو می دادم تو هیچ سایتی در موردشون توضیح نبود تاریخ پست اول رو نگاه کن.


منظورت از دوبار تکرار "من" چیه

313Ramin
13-07-2009, 18:27
من که تازه امدم هیچی نمیدونم

سید علی محمدی
18-08-2009, 20:29
حیف شد این تاپیک خوابده مطالب جوالبی نوشته شده حالا عیبی نداره میریم سایت جدید.
تشکر از آقایون که قبلا رای این تاپیک زحمت کشیدن
:11:

moz
27-08-2009, 16:14
خیلی تاپیک خوبیه
مرسی