المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : [درس]دروس في الدارك بيسيك مع snake_x86 الجزء الاول



snake_x86
10-09-2006, 10:08 AM
دروس "الدارك بيسيك" الجزء الاول

مقدمة على السريع:
من الملاحظ ان جميع العاب المنتدى ثنائية الابعاد او دمج باسلوب قديم بين الرسوم الثنائية البعد و الثلاثية الابعاد و هي الالعاب المصممة بالجيم ميكر و هي على ستايل دووم القديمة
لذا قررت العمل على دروس للدارك بيسيك و هو برأيي افضل برنامج او لغة برمجة العاب
حيث يمكن عمل عليه اي نوع من الالعاب و بقوة مشابهة للالعاب الرسمية و هناك فعلا العاب رسمية كثيرة استخدم فيها الدارك بيسيك
و الدارك بسيك من اسمه هو مبني على لغة البيسيك واذا كنت خبير في الفيجوال بيسيك فبمدة قصيرة ستصبح خبير دارك بيسيك ;)
ارجو ان ارى قريبا الالعاب الثلاثية الابعاد تملأ المنتدى.
العاب تم برمجتها بالدارك بيسيك:
لعبة منظور اول ذات رسومات رائعة (http://forum.thegamecreators.com/?m=forum_view&t=86005&b=5)
لعبة حرب الفضاء ايضا ذات رسومات رائعة (http://forum.thegamecreators.com/?m=forum_view&t=67850&b=5)
الوصلتين السابقتين تحتوي كل منهما على صور من اللعبة و وصلة تنزيل للعبة لتجربتها
وهنا معرض العاب الدارك بيسيك المصنوعة من قبل الهواة (http://darkbasicpro.thegamecreators.com/?m=showcase&i=14)


اذا كنت جيد باستخدام الماكس فاضمن نفسك :biggthump
اذا لا فعليك تعلم الماكس او اي برنامج بسيط تختاره مثلا 3d world studio

اولا) ما هي الدارك بيسيك؟
الدارك بيسيك هي لغة برمجة مختصة ببرمجة الالعاب سواء كانت ثلاثية الابعاد بالكامل او ثنائية الابعاد او دمج بين الاثنين و بقولي لغة برمجة اعني
انها ليست برنامج تصميم بل عبارة عن لغة برمجة كالسي بلس بلس.
لكنها لغة سهلة جدا بالنسبة للسي و نحتوي اوامر جاهزة قد تكلفك مئات الاسطر
في السي و هنا سطر واحد.
مثلا الامر
Load object "hero.x" , 1
يقوم بتحميل ملف ثري دي من الهارد ديسك اسمه hero.x الى الدارك بيسيك وسيظهر
مباشرة على الشاشة.
و ستلاحظون من هذه التعليمة انها غير موصولة ببعضها.... نعم في الدارك بيسيك
معظم دالاته غير موصولة ببعضها كهذه:
Position object
لاحظوا انها لم تكتب هكذا: PositionObject

هناك نوعان من الاوامر او الدالات في الدارك بيسيك
الاول: الامر: تعطيه تعليمات مثلا hide object 1
وهي تعني ان يخفي المجسم رقم واحد
لاحظ ان الامر كتب من دون اقواس

الثاني: السؤال: تسأله عن شيء مثلا


objY=object position y(1)
و بهذه العملية ستخزن احداثيات y للمجسم رقم واحد في المتغير objY
لاحظ وجود الاقواس عند السؤال
و اريد ان انوه هنا انالدارك بيسيك لغة لا تتحسس لحالة الاحرف سواء
كانت كبيرة او صغيرة يمكنك كتابة امر الاخفاء هكذا:
hIdE oBjEcT 3 او Hide Object 3
لا فرق بينهما و نفس الشيء ينطبق على المتغيرات

الان لنتابع موضوع ان الدارك بيسيك لغة برمجة فقط
هل يعني ذلك ان كل شيء يتم بالبرمجة؟؟؟؟
لا
يمكنك استخدام ادوات اخرى لتصميم المراحل و الشخصيات
و انا شخصياً استخدم الثري دي ماكس
و هو ليس بالضروري حيث يمكن استخدام اي اداة اخرى

على سبيل المثال 3d world studio

-----------------------------------------------------------------
واجهة البرنامج
عند فتح البرنامج لاول مرة سيظهر لك كما في الصورة:
http://i18.photobucket.com/albums/b130/g_t_r/scs01.jpg
اختر new project و هو اول زر من اليسار
و ستظهر لك هذه النافذة:
http://i18.photobucket.com/albums/b130/g_t_r/newproject.jpg
الان في هذه النافذة كل شيء يشرح نفسه و لكن تأكد من اختيار
Use project view mode
و ستصبح واجهة البرنامج كهذه:
http://i18.photobucket.com/albums/b130/g_t_r/dbgui.jpg
و من هنا سأشرح اولا شريط المهام
http://i18.photobucket.com/albums/b130/g_t_r/mbar.jpg
كل الازرار تشرح نفسها من صورها
و سأشرح الازرار المرقمة في الصورة
1) يقوم بانشاء الملف التنفيذي للعبة و سيحفظه في مجلد الكشروع الذي حددته قبل قليل دون تشغيله
2) نفس مهمة الزر السابق لكنه يقوم بتشغيل اللعبة
3) ازرار ال debug و بصراحة لم استخدمها
4) هنا تستطيع اختيار صفحة من مشروعك حيث يمكن تقصيم المشروع الى عدة صفحات

سأشرح الان هذه النافذة التي استخدمها كثيرا وهي مهمة جداً جداً
http://i18.photobucket.com/albums/b130/g_t_r/setts.jpg
اولا كما في الصورة هنا تستطيع تعديل اسم المشروع ثم اسم الملف التنفيذي
و وضع مذكرات.
و ستشاهد بالاسفل خيارات اخرى سأشرح اهمها:
Media: من هنا يمكن اضافة ملفات الى الملف التنفيذي اي يتم دمجها معه بدون ان يستطيع احد تعديلها و لا ينصح بوضع ملفات كبيرة هنا.
Settings: هنا يمكن تعديل الاسم اللذي يظهر فوق نافذة اللعبة
و طريقة ارفاق الملفات اللتي تم اضافتها بال media ثم اهم شيء ... طريقة عرض اللعبة
نافذة او شاشة كاملة و اختيار الدقة.

Files: من اهمهم و هي الاكثر استخداما
http://i18.photobucket.com/albums/b130/g_t_r/sourcefff.jpg
في هذه النافذة يمكن تقسيم مشروعك الى صفحات متعددة مثلا صفحة
لتعليمات كشف التصادم و صفحة للدالات العامة التي تنشأآها وهكذا....
Browse: للبحث عن صفحة بالجهاز و اضافتها لمشروعك و اقصد بالصفحة ملف source
Add new: لانشاء صفحة جديدة في مجلد المشروع
Delete: حذف الصفحة المختارة

وللتنقل بين الصفحات قم بالضغظ مرتين على الاسم

Labels: ايضا مهم من هنا تسطيع الذها بسرعة الى اقسام الكود التي انت تحددها
عن طريق اضافة اسم مرفوق ب ":"
مثلا heroCode: او monsterAI:
و بالضغط على الاسم ستذهب مباشرة الى مكان وضع اسم القسم
و سأنتهز الفرصة لاشرح تعليمة goto حيث عند استخدامها
داخل الكود سيذهب مباشرة الى مكام القسم مثلا:



If heroHP < 1 then goto heroDie

heroDie:
heroHP = 100
restartlevel()



في الدرس القادم سأتحدث عن البرمجة :biggthump
اي استفسار ..... انا جاهز :)

-------------------------------------------------------
هذا درس غير منقول او مترجم انما من مجهود شخصي لذا
يمنع النقل خارج المنتدى بأي شكل من الاشكال الا باذن مني
مع وضع المصدر

||صقر||
10-09-2006, 10:35 AM
يسرنى أن أكون ول من يرد على الموضوع....
ماشاء الله طريقه رائعه فى الشرحه أتمنى انك تكملها للنهايه....
شكرا

d.a.m.h
10-09-2006, 12:05 PM
بصراحة شرح رائع........بالمناسبة كان GOGENDANTES كتب دروس فى البرمجة بالدارك بيزك لكن يبدو انها طارت فى حادثة المنتدى للاسف......فلو كانت موجودة كنت كملت انت عليها واختصرت الوقت.....قدر الله وماشاء فعل
حاليا ليس عندى سؤال...فى انتظار التكملة :biggthump

سامي.خ
10-09-2006, 01:49 PM
بارك الله فيك وفي عملك الصالح
بس ممكن تعطيني رابط البرنامج ؟

snake_x86
10-09-2006, 02:15 PM
يسرنى أن أكون ول من يرد على الموضوع....
ماشاء الله طريقه رائعه فى الشرحه أتمنى انك تكملها للنهايه....
شكر
يسرني ان طريقة الشرح اعجبتك و انشاء الله سأكمل


بس ممكن تعطيني رابط البرنامج ؟
البرنامج مموجود و يعود الشكر للأخ hico و الأخ challenger
وصلة الصفحة اللتي تحتوي على وصلة البرنامج (http://www.montada.com/showthread.php?t=488565)


بصراحة شرح رائع........بالمناسبة كان GOGENDANTES كتب دروس فى البرمجة بالدارك بيزك لكن يبدو انها طارت فى حادثة المنتدى للاسف......فلو كانت موجودة كنت كملت انت عليها واختصرت الوقت.....قدر الله وماشاء فعل
حاليا ليس عندى سؤال...فى انتظار التكملة :biggthump
شكرا لانك الفت انتباهي الى تلك الدروس ..... سأختصر الكثير :D
و وصلة الدروس هنا (http://www.montada.com/showthread.php?t=456229)
وبهذه المناسبة درسي القادم سيكون درس متقدم ;)

باز يطير
10-09-2006, 02:45 PM
بسم الله الرحمن الرحيم


السلام عليكم ورحمة الله وبركاته


اولاً احب اشكرك على هذا المجهود الجبار المقدم منك اخوي سنيك وانا كنت منتظر دروس هذا البرنامج بفارغ الصبر وننتظر دروسك الجاية على اتم استعداد وحماسة


ثانياً انت حققت حلمي بأني اتعلم لهذا البرنامج الرائع الله يعطيك الف عافية


شكراً ليك اخوي والى الأماما وتابع تميزك


شرحك جميل ومميز ومنسق;)

ملاحظة بسيطة ارجو انك تتقبلها وهي خلي الشرح في الوسط يعني اضغط على ايقونة توسيط


شكراً اخوك باز يطير

PrinceOfSorrow
10-09-2006, 03:25 PM
الله يعطيك العافية أنا ألحين شغلت البرنامج حمستني ^^
والله انا بس ابي اعرف التصادم + وتوريد العوالم :)
اان منتظر دروسك ^^

snake_x86
10-09-2006, 03:49 PM
باز يطير:
العفو اخي باز
لكن لم افهم اقتراحك :boggled:

ملاحظة بسيطة ارجو انك تتقبلها وهي خلي الشرح في الوسط يعني اضغط على ايقونة توسيط
Prince of sorrow:
الله يعافيك
و بخصوص التصادم لاتكلم عنه بالتأكيد
و سأدخل بصلب الموضوع بسرعة اي لن اضيع الوقت بشرح اشياء تم شرحها من قبل
GOGENDANTES (http://www.montada.com/showthread.php?t=456229http://www.montada.com/showthread.php?t=456229)

و مخططي هو:
شرح تكوين الكود الرئيسي للعبة و هو ما يسمى ال Main Loop
و شرح اهم الاوامر كتوريد ملفات الثري دي و التحكم بها كالبطل
ثم شرح توريد العوالم من الماكس بطريقة سهلة و رائعة انا ابتكرتها لن تجدوها في اي مكان
تتيح التصميم من الثري دي ماكس مباشرة
و بعد ذلك كشف التصادم بطريقة صعبة نسبيا و هي مستخدمة بكهف الموت
و من هنا سنكون جاهزين لدروس الاعداء او الذكاء الاصتناعي و كيفية تطبيقه على الاوبجكتس

CHALLENGER
10-09-2006, 03:57 PM
و الله هذا ما كنا نحتاجه دروس من شخص خبير في هذه اللغة و قد اتم عليها لعبة حصلت على جوائز عديدة ;)

أملي الوحيد أن تكمل الدروس إلى النهاية و انا تقطع علينا نبع المعرفة الذي تملكه :)

nash2
10-09-2006, 04:42 PM
السلام عليكم
اشكرك على الدرس, واود أن اسئل :
-هل Dark Basic لغة برمجة مخصصة لبرمجة الالعاب , وهل من السهل تعلم اللغة .:blackeye:
-ماهي البرامج التي يمكن استخدامها مع اللغة لتصميم لعبة .:33:
-لعبة كهف الموت لعبة مميزة , هل صممتها بهذه اللغة .:أفكر:

وفي النهاية احب أن شكرك مجدداً , و ان تستمر في الدروس لنستفيد من اللغة لكي نصمم بها العابنا.

snake_x86
10-09-2006, 05:00 PM
هل Dark Basic لغة برمجة مخصصة لبرمجة الالعاب , وهل من السهل تعلم اللغة .
الدارك بيسيك مصممة لتجعل عملية برمجةالالعاب سهلة لكن لا مانه من برمجة اي برنامج اخر
فهناك الكثير من البرامج (غير الالعاب) برمجت بواسطة الدارك بيسيك و اكثرهم عبارة عن برامج لتصميم العوالم و هناك برنامج لتلحين الحان ال midi
و بخصوص السهولة .... نعم انها سهلا لكن لا تتوقع ان تبرمج لعبة ب سطرين او ثلاثة
فكهف الموت عبارة عن 1656 سطر بالزبط


-ماهي البرامج التي يمكن استخدامها مع اللغة لتصميم لعبة
لا محدودة فبامكانك استخدام اي برنامج قادر على تصميم رسوم ثلاثية الابعاد
مثلا الماكس و المايا و الثري دي كانافاس و gamespace المهم انه بقدر يصدر ملفات .x


-لعبة كهف الموت لعبة مميزة , هل صممتها بهذه اللغة
نعم و بمساعدة البرامج التالية:
3D studio max
photoshop
HT video editor
Adobe Audition

من التراب
10-09-2006, 06:40 PM
تسلم الدرس روعه
انا انتظر التكمله
بالتوفيق ...

Mr. Black Man
11-09-2006, 10:05 PM
رااائع :biggthump, موضوع مفيد جداً جداً و سيساهم في تطور مستوى الأعضاء و الألعاب في المنتدى :) ... أرجو أن تكمل حتى النهاية و شكراً لك ;)

ZAIME
11-09-2006, 10:49 PM
أولا أود أن أبارك لك بشأن لعبتك كهف الموت و أنا أحملها الآن.
ثانيا:أنا أشكرك على الدرس و قد نسخته عندي كي أدرسه.
ننتظر ابداعاتك و براكين موضوعاتك .
شكرا.

ZAIME
11-09-2006, 11:00 PM
أخي أود أن أبارك لك بشأن لعبتك كهف الموت و أنا أحملها الآن.
وأقدم لك شكري بشأن الدرس الرائع الذي وضعته وقد نسخته عندي كي أدرسه.
ننتظر ابداعاتك و براكين موضوعاتك.
شكرا.

snake_x86
12-09-2006, 05:53 AM
Challenger ==نورت الموضوع ,,,,, بخصوص اكمال الدروس, راح اكمل انشاء الله لا يهمك
من التراب == الله يسلمك و التكملة قريبا جدا
UAE Naruto == هلا , و انشاء الله بكمل حتى النهاية
ZAIME == هلا فيك اخي و الدرس القادم قيد الانشاء

سامي.خ
12-09-2006, 11:42 AM
كيف أركب الكراك للبرنامج؟

hico
12-09-2006, 05:22 PM
thanks for the titos :D
keep up the good work

snake_x86
12-09-2006, 06:57 PM
كيف أركب الكراك للبرنامج؟
انسخ الملفين DBPCompiler.exe و DBPDebugger.exe
من مجلد الكراك الى مجلد Compiler داخل مجلد الدارك بيسيك الرئيسي
و عند هو:
C:\Program Files\Dark Basic Software\Dark Basic Professional\Compiler


thanks for the titos :D
keep up the good work
Anytime bro ..... and thanks for passing by
peaceup :D

PrinceOfSorrow
12-09-2006, 08:18 PM
ياليت الأخ سنيك يحط وصلة رابط درس ثاني في كل درس يعني لما يقرأ الشخص الدرس الاول مايتلخبط ولا يتعب في البحث عن درس الجديد بعد مايجهز ^^
وعند درس ثاني يحط وصلة درس ثالث لما يجهز وهكذا ^^
(اعتقد فهمت علي ^_^)

وصلة الدرس الثاني : http://montada2.com/showthread.php?t=493599

vistala
12-09-2006, 08:44 PM
ارجووووووووووووووووووووكم رابط البرنامج فانا اريد ان اتابع مع الاخ سنيك

ZAIME
12-09-2006, 09:09 PM
أخي شوف هذا الموضوع .
http://www.montada.com/showthread.php?t=488565
الوصلة كانت في الدرس الأول المقدم من سنيك .

سمسم المبرمج
13-09-2006, 03:07 AM
أولا
شكرا جزيلا لك يا snake على الشرح الرائع
لكن ارجو منكم البرنامج لان الوصلة اللي تحطونها في اول البرنامج ما صارت تشتغل معي

GOGENDANTESS
13-09-2006, 06:57 AM
الله يوفقك اخوي في دروسك :) و آسف شباب أني هديت دروس DB.... لأني كنت تعلم ++C :)


و بالنسبة لسؤال احد الأعضاء "ماذا يلزم لصنع لعبة بلغة برمجة؟"
1- Compiler ، الدارك بيسك له Compiler خاص
2-دراية قوية بالمتغيرات و العمليات الحسابية
3-صور bitmap
4-أجسم 3D
5- "صبر" لتصحيح الـ Errors

:)

و أتمنى من كل قلب أن الأعضاء يسوون لعبى بالدارك بيسك :)



أخوي انا لعبت لعبتك "المهمة الصعبة".......................................... كبيرة يا كبير!!!!!!!!!!!!!!!!!!!! كبيرة يا كبير!!!!!! و إنشاء الله أتحداها بالمسابقة الياية :)
نصيحتي : ادخل موقع game dev و ارفع لعبتك عشان يعرفون قدراتك و تعرف على ناس و سو لك تيم يبرمج على الدارك بيسك :)
أنت راح تغير منتدى برمجة الألعاب :)


إييه هذي الألعاب اللي تريح النفس :D

snake_x86
13-09-2006, 01:06 PM
أولا
شكرا جزيلا لك يا snake على الشرح الرائع
لكن ارجو منكم البرنامج لان الوصلة اللي تحطونها في اول البرنامج ما صارت تشتغل معي http://arabgn.com/files/hico/programs/DBP_1062.rar


الله يوفقك اخوي في دروسك تسلم الله يخليك.


5- "صبر" لتصحيح الـ Errors
:bigeyes: هذا كان كابوسي و هو اسوأ شي ممكن تواجهه بالبرمجة


أخوي انا لعبت لعبتك "المهمة الصعبة".......................................... كبيرة يا كبير!!!!!!!!!!!!!!!!!!!! كبيرة يا كبير!!!!!!
:ee2: خجلتني ياخي


و إنشاء الله أتحداها بالمسابقة الياية :)
و انا اتطلع لهذه المسابقة :wink:


نصيحتي : ادخل موقع game dev و ارفع لعبتك عشان يعرفون قدراتك و تعرف على ناس و سو لك تيم يبرمج على الدارك بيسك :)
و الله فكرة :33: و رح انفذها قريبا


أنت راح تغير منتدى برمجة الألعاب :)
و الله لو تقارني بغيري ... انا كسوووول
شوف تاريخ تسجيلي و شوف عدد المشاركات :D
انا ادخل على هذا المنتدى (برمجة الالعاب) من ال 2004
ولا مرة شاركت حتى الفترة الاخيرة....
و اجتني فكرة الدروس بعد ما شفت اني متمكن من الدارك بيسيك


إييه هذي الألعاب اللي تريح النفس
:bigok:

the bite
22-11-2006, 04:55 PM
اخي شكرا على الموضوع ولكني اريد ان النسخة الكاملة من البرنامج او حتى الكراك له

e.a.x.g
18-09-2007, 02:05 PM
عاشت ايديك والله ياسنايك .بس اريد اسأل ممكن نعمل لعبة ثلاثية المنظور يعني نستخدم بونز للشخصية تحياتي ارجوا الردد

اسود الرافدين
18-09-2007, 02:38 PM
اخي ممكن تنطينا وصلة البرنامج نحمله

سامي.خ
18-09-2007, 05:01 PM
انتظرني عشان ارفعه لك...

سامي.خ
18-09-2007, 05:49 PM
تفضل
http://www.zshare.net/download/371563245b4320/
الكراك معاه
حط الكراك في مجلد البرنامج داخل مجلد Compiler
بالتوفيق

اسود الرافدين
18-09-2007, 11:24 PM
مشكور يا اخوي ساموجي الغالي

فارس الانتقام
27-06-2009, 12:14 AM
السلام عليكم وحمة اله وبركاته

انا عضو جديد في المنتدى ومبتدا في برمجة الالعاب لكن لي خبرة طويلة في برمجة البرامج

بلغة الفيجوال بيسك ولهذا اخترت الدارك بيسك لاني فاهمها مع ان في ختلاف في بعص الاكواد

بس مش فرق كبير وبصراحة بالنسبة لشخص ما يعرف شي عن اللغة راحتكون هالدروس شوي صعبة يعن انا برايي تسهلها اكثر وواصل ابداعك

محمد THE DARK K
27-06-2009, 12:27 AM
أخي أولا أهلا بك في منتدى
ثانيا مننوع رفع مواضيع قديمة لأنه له سنتين تقريبا

سامي.خ
27-06-2009, 03:16 AM
يمنع رفع المواضيع القديمة، تحقق من تاريخ آخر رد ، إذا كان مضى على آخر رد فيه أكثر من ثلاثة أشهر فيعني أنه قديم
إقرأ القوانين لكي لا تقع في مواقف محرجة مرة ثانية
-_-

مغلق