كيف تصنع لعبة فلاش: 4 خطوات (بالصور)

جدول المحتويات:

كيف تصنع لعبة فلاش: 4 خطوات (بالصور)
كيف تصنع لعبة فلاش: 4 خطوات (بالصور)

فيديو: كيف تصنع لعبة فلاش: 4 خطوات (بالصور)

فيديو: كيف تصنع لعبة فلاش: 4 خطوات (بالصور)
فيديو: طريقة أسترجاع فلوسك من متجر STEAM بطريقة سهلة 2022 2024, شهر نوفمبر
Anonim

يعد Flash تنسيقًا شائعًا لألعاب فيديو المتصفح ، مثل مواقع مثل Newgrounds و Kongregate. على الرغم من أن تنسيق Flash يميل إلى أن يكون غير مستغل في تطبيقات الهاتف المحمول ، إلا أنه لا يزال هناك العديد من الألعاب عالية الجودة التي لا تزال تُصنع باستخدام Flash. يستخدم Flash ActionScript ، وهي لغة يسهل تعلمها وتوفر التحكم في الكائنات على الشاشة. راجع الخطوة 1 أدناه لمعرفة كيفية إنشاء لعبة فلاش أساسية.

خطوة

جزء 1 من 3: البدء

381698 1
381698 1

الخطوة 1. تصميم اللعبة

قبل أن تبدأ في البرمجة ، قم بإنشاء فكرة تقريبية عن لعبتك. يعد الفلاش هو الأنسب للألعاب البسيطة ، لذا ركز على إنشاء ألعاب بها عدد قليل جدًا من آليات اللعب. حدد النوع وميكانيكا اللعبة قبل بدء النموذج الأولي. تشمل ألعاب الفلاش الشائعة ما يلي:

  • عداء لا نهاية له: تقوم اللعبة بتحريك الشخصيات تلقائيًا. يتعين على اللاعبين القفز فوق العقبات أو التفاعل مع اللعبة. عادة ما يكون لدى اللاعبين خيار أو خياران للتحكم فقط.
  • المقاتلون: عادة ما تكون اللعبة عبارة عن تمرير جانبي. يجب على اللاعبين هزيمة العدو من أجل التقدم. شخصية اللاعب لديها عدة حركات لهزيمة العدو.
  • الألغاز: يجب على اللاعبين حل الألغاز للتغلب على كل مستوى. بدءًا من أسلوب الجمع بين ثلاثة أشياء من نوعها مثل Bejeweled ، إلى الألغاز المعقدة مثل ألعاب المغامرات.
  • آر بي جي: تركز اللعبة على تطوير الشخصية والتقدم. يتحرك اللاعبون عبر العديد من المواقف المختلفة بالإضافة إلى أنواع مختلفة من الأعداء. تختلف آليات القتال على نطاق واسع ، لكن العديد من هذه الأنواع تعتمد على تبادل الأدوار. تعد برمجة ألعاب تقمص الأدوار أكثر صعوبة في البرمجة من ألعاب الحركة البسيطة.
381698 2
381698 2

الخطوة الثانية: فهم مزايا الفلاش

الفلاش هو الأنسب للألعاب ثنائية الأبعاد. يمكن صنع الفلاش لإنشاء ألعاب ثلاثية الأبعاد ، لكنه معقد للغاية ويتطلب المزيد من المعرفة. تقريبًا كل لعبة فلاش ناجحة لها تنسيق ثنائي الأبعاد.

ألعاب الفلاش هي الأنسب أيضًا للجلسات السريعة. هذا لأن معظم اللاعبين يلعبون عندما يكون لديهم وقت فراغ قليل ، مثل فترات الراحة ، مما يعني أن جلسات اللعب عادة ما تكون مدتها 15 دقيقة على الأكثر

381698 3
381698 3

الخطوة الثالثة. تعرف على لغة ActionScript3 (AS3)

ألعاب الفلاش مبرمجة في AS3 ، وستحتاج إلى بعض الفهم الأساسي لكيفية عملها لتكون ناجحًا في إنشاء الألعاب. يمكنك إنشاء ألعاب بسيطة بفهم أساسي للكود في AS3.

تتوفر العديد من كتب ActionScript في أمازون والمتاجر الأخرى ، إلى جانب مجموعة متنوعة من البرامج التعليمية والأحداث على الإنترنت

381698 4
381698 4

الخطوة 4. تنزيل برنامج Flash Professional

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

برنامج Flash Professional هو البرنامج الوحيد الذي ستحتاجه لبدء إنشاء الألعاب

جزء 2 من 3: كتابة الألعاب الأساسية

381698 5
381698 5

الخطوة 1. فهم اللبنات الأساسية لرمز AS3

تحتوي اللعبة الأساسية على العديد من هياكل التعليمات البرمجية المختلفة. هناك ثلاثة أجزاء رئيسية لرمز AS3:

  • المتغيرات - هذا حول كيفية تخزين البيانات. يمكن أن تكون البيانات أرقامًا وكلمات (سلاسل) وكائنات وغير ذلك. يتم تعريف المتغيرات بواسطة كود var ويجب أن تتكون من كلمة واحدة.

    var playerHealth: الرقم = 100 ؛ // "var" تشير إلى أنك تقوم بتعريف متغير. // "playerHealth" هو اسم المتغير. // "الرقم" هو نوع البيانات. // "100" هي القيمة المخصصة للمتغير. // تنتهي جميع أسطر actioncript بـ "؛"

  • معالج الأحداث - يبحث معالج الأحداث عن أشياء معينة حدثت ، ثم يقوم بإعلام بقية البرنامج. هذا مهم لإدخال اللاعب والكود المتكرر. عادة ما تستدعي معالجات الأحداث الوظائف.

    addEventListener (MouseEvent. CLICK، swingSword) ؛ // "addEventListener ()" يعرّف معالج الحدث. // "MouseEvent" هي فئة المدخلات التي يتم الاستماع إليها. // ". CLICK" هو حدث محدد في فئة MouseEvent. // "swingSword" هي الوظيفة التي يتم استدعاؤها عند وقوع الحدث.

  • الوظيفة - جزء من الكود يتم تعيينه لكلمة أساسية ويمكن استدعاؤه لاحقًا. تتعامل الوظائف مع معظم برمجة الألعاب ، ويمكن أن تحتوي اللعبة المعقدة على مئات الوظائف. يمكن أن تكون الوظائف بأي ترتيب لأنها تعمل فقط عندما يتم استدعاؤها.

    وظيفة swingSword (e: MouseEvent): void ؛ {// Your code here} // "function" هي الكلمة الرئيسية التي تظهر في بداية كل وظيفة. // "swingSword" هو اسم الوظيفة. // "e: MouseEvent" هي معلمة مضافة تشير إلى // أنه تم استدعاء الوظيفة من مستمع الحدث. // ": void" هي القيمة التي تُرجعها الدالة. // إذا لم يتم إرجاع أي قيمة ، فاستخدم: void.

381698 6
381698 6

الخطوة 2. إنشاء كائن

يستخدم ActionScript للتأثير على الكائنات في Flash. لإنشاء لعبة ، يجب عليك إنشاء كائنات ليتفاعل معها اللاعبون. اعتمادًا على الدليل الذي تقرأه ، قد تتم الإشارة إلى الكائنات على أنها نقوش متحركة أو ممثلون أو أفلام. لهذه اللعبة البسيطة ، سوف تقوم بإنشاء مستطيل.

  • افتح برنامج Flash Professional. قم بإنشاء مشروع ActionScript 3 جديد.
  • انقر فوق أداة الرسم Rectangle من لوحة Tools. قد تكون هذه اللوحة في موقع مختلف ، اعتمادًا على تكوين Flash Professional. ارسم مستطيلاً في نافذة المشهد.
  • حدد المستطيل باستخدام أداة التحديد.
381698 7
381698 7

الخطوة 3. تعيين الخصائص على الكائن

حدد المستطيل المحدد حديثًا ، واذهب إلى قائمة "تعديل" وحدد "تحويل إلى رمز". يمكنك أيضًا الضغط على F8 كاختصار. في نافذة "التحويل إلى رمز" ، امنح الكائن اسمًا يسهل التعرف عليه ، على سبيل المثال "العدو".

  • حدد موقع نافذة الخصائص. في الجزء العلوي من النافذة ، سيكون هناك حقل نص فارغ يسمى "اسم المثيل" عند تحريك الماوس فوقه. أعطه نفس الاسم عندما حولته إلى رمز ("عدو"). يؤدي هذا إلى إنشاء اسم فريد للتفاعل عبر رمز AS3.
  • كل "حدث" هو كائن منفصل يمكن أن يتأثر بالكود. يمكنك نسخ الأحداث التي تم إنشاؤها عدة مرات بالنقر فوق علامة التبويب المكتبة وسحبها إلى المشهد. في كل مرة يتم إضافة حدث ، يتغير اسمه للإشارة إلى أن الكائن منفصل ("العدو" ، "العدو 1" ، "العدو 2" ، إلخ.).
  • عندما تشير إلى كائن في التعليمات البرمجية ، ما عليك سوى استخدام اسم الحدث ، في هذه الحالة "العدو".
381698 8
381698 8

الخطوة 4. تعرف على كيفية تغيير خصائص الحدث

بمجرد إنشاء الحدث ، يمكنك تعيين خصائصه عبر AS3. يسمح لك هذا بتحريك الكائنات وتغيير حجمها وما إلى ذلك. يمكنك تخصيص خاصية عن طريق كتابة التكرار ، متبوعًا بنقطة "." ، ثم متبوعة بالخاصية ، متبوعة بالقيمة:

  • العدو.x = 150 ؛ يؤثر هذا على موضع كائنات العدو على المحور X.
  • العدو ص = 150 ؛ يؤثر هذا على موضع كائنات العدو على المحور Y. يتم حساب المحور Y من أعلى المشهد.
  • العدو.دوران = 45 ؛ يقوم بتدوير كائنات العدو بزاوية 45 درجة في اتجاه عقارب الساعة.
  • العدو.scaleX = 3 ؛ يمتد عرض كائن العدو بمضاعفات 3. ستقلب العلامة (-) الكائن.
  • العدو.قياس ص = 0.5 ؛ يغير ارتفاع الكائن إلى نصف ارتفاعه الحالي.
381698 9
381698 9

الخطوة 5. انتبه للأمر trace ()

سيعيد هذا الأمر القيمة الحالية للكائن المحدد ، ويفيد في تحديد ما إذا كان كل شيء يعمل كما ينبغي. ربما لن تقوم بتضمين أمر التتبع في الكود النهائي الخاص بك ، ولكن يمكن أن يكون مفيدًا لتحديد مصدر الكود الفاشل.

381698 10
381698 10

الخطوة 6. قم ببناء اللعبة الأساسية باستخدام المعلومات الواردة أعلاه

لديك الآن فهم أساسي للوظائف الأساسية. يمكنك إنشاء لعبة حيث في كل مرة يتم فيها النقر على عدو سينخفض الحجم ، حتى يتم تدمير العدو

var العدوHP: الرقم = 100 ؛ // يعين HP (صحة) العدو على 100 في بداية اللعبة. var playerAttack: الرقم = 10 ؛ // يعين مقدار قوة اللاعب الهجومية عند النقر. العدو.addEventListener (MouseEvent. CLICK ، attackEnemy) ؛ // عن طريق إضافة هذه الوظيفة مباشرة إلى كائن العدو ، // تحدث هذه الوظيفة فقط عند // النقر فوق الكائن نفسه ، وليس عندما ينقر في أي مكان على الشاشة. setEnemyLocation () ، // يستدعي الوظيفة التالية لوضع العدو // على الشاشة. يحدث هذا عندما تبدأ اللعبة. وظيفة setEnemyLocation (): باطل {العدو.x = 200 ؛ // حرك العدو بمقدار 200 بكسل من يسار شاشة العدو. ص = 150 ؛ // حرك العدو بمقدار 150 بكسل لأسفل من أعلى شاشة العدو. rotation = 45 ؛ // قم بتدوير تتبع العدو 45 درجة في اتجاه عقارب الساعة ("قيمة x للعدو هي" ، العدو x ، "وقيمة y للعدو هي" ، العدو. y) ؛ // يعرض الموقع الحالي للعدو للعثور على مصدر الخطأ} هجوم الوظيفة: العدو (e: MouseEvent): void // ينشئ وظيفة هجوم عند نقر العدو على {oesHP = أعداء HP - playerAttack؛ // يطرح قيمة الهجوم من قيمة HP ، // يولد قيمة HP جديدة. العدو.scaleX = العدو HP / 100 ؛ // قم بتغيير العرض بناءً على قيمة HP الجديدة. // يتم قسمة القيمة على 100 ثم تحويلها إلى رقم عشري. العدو.scaleY = العدو HP / 100 ؛ // تغيير الارتفاع بناءً على تتبع قيمة HP الجديد ("الأعداء لديهم" ، العدو HP ، "HP المتبقية") ؛ // يعرض مقدار HP الذي تركه العدو}

381698 11
381698 11

الخطوة 7. جربها

بمجرد الانتهاء من الترميز ، يمكنك اختبار هذه اللعبة الجديدة. انقر فوق قائمة التحكم وحدد اختبار الفيلم. تبدأ اللعبة ، ويمكنك النقر فوق كائن العدو لتغيير حجمه. سيتم عرض إخراج التتبع في نافذة الإخراج.

جزء 3 من 3: تعلم التقنيات المتقدمة

381698 12
381698 12

الخطوة 1. تعرف على كيفية عمل الحزم

يعتمد برنامج ActionScript على Java ويستخدم نظام حزمة مشابه جدًا. باستخدام الحزم ، يمكنك تخزين المتغيرات والثوابت والوظائف والمعلومات الأخرى في ملفات منفصلة ، ثم استيراد هذه الملفات إلى البرنامج. يعد هذا مفيدًا بشكل خاص إذا كنت ترغب في استخدام الحزم التي طورها أشخاص آخرون لتسهيل إنشاء الألعاب.

ابحث عن دليل على Wikihow لمزيد من التفاصيل حول كيفية عمل الحزم في Java

381698 13
381698 13

الخطوة 2. إنشاء مجلد المشروع

إذا كنت تقوم بإنشاء لعبة تحتوي على صور ومقاطع صوتية ، فقم بإنشاء بنية مجلد في اللعبة. ستجد أنه من الأسهل تخزين أنواع مختلفة من العناصر ، بالإضافة إلى حفظ حزم مختلفة للاتصال بها.

  • قم بإنشاء مجلد أساسي لمشروعك. في المجلد الأساسي ، أنشئ مجلد "img" لجميع مواد العرض الفنية ، ومجلدًا "snd" لجميع أصول الصوت ، ومجلدًا "src" لجميع حزم الألعاب والأكواد.
  • أنشئ مجلد "Games" في مجلد "src" لتخزين ملف الثوابت.
  • هذا الهيكل المعين غير مطلوب ، ولكنه سيسهل تنظيم عمل جميع المواد ، خاصة للمشاريع الأكبر. بالنسبة للعبة البسيطة الموضحة أعلاه ، لا تحتاج إلى إنشاء أي أدلة.
381698 14
381698 14

الخطوة 3. أضف الصوت إلى اللعبة

الألعاب بدون صوت أو موسيقى ستضجر اللاعبين بسرعة. يمكنك إضافة صوت إلى الكائنات باستخدام أداة Layers.

381698 15
381698 15

الخطوة 4. أنشئ ملف الثوابت

إذا كانت لعبتك تحتوي على الكثير من القيم التي ستبقى كما هي طوال اللعبة ، فيمكنك إنشاء ملف ثابت لتجميعها جميعًا في مكان واحد حتى يمكن استدعاؤها بسهولة. يمكن أن تتضمن الثوابت قيمًا مثل الجاذبية وسرعة اللاعب والقيم الأخرى التي قد يلزم استدعاؤها بشكل متكرر.

  • إذا قمت بإنشاء ملف ثوابت ، فضعه في مجلد في المشروع ثم قم باستيراده كحزمة. افترض أنك قمت بإنشاء ملف Constants.as ووضعه في مجلد الألعاب. لاستيراده ، استخدم الكود التالي:

    حزمة {import Game. *؛ }

381698 16
381698 16

الخطوة 5. انظر إلى مسرحية الآخرين

في حين أن العديد من المطورين لن يكشفوا عن رمز اللعبة الخاص بهم ، إلا أن هناك مجموعة متنوعة من المشاريع التعليمية وغيرها من المشاريع مفتوحة المصدر التي ستتيح لك عرض الكود والتفاعل مع كائنات اللعبة. هذه طريقة رائعة لتعلم مجموعة متنوعة من التقنيات المتقدمة التي يمكن أن تساعد في إبراز لعبتك.

موصى به: