איך מכינים משחק פלאש?
1. תכנן את המשחק שלך.
2. הכירו את ActionScript3.
3. התקן והפעל את Adobe Flash Professional.
4. צור אובייקטים והקצה מאפיינים.
5. השתמש בסרט Test כדי לבדוק את המשחק בזמן שאתה כותב אותו.
6. עיין במשחקים של אנשים אחרים לצורך התייחסות.
פלאש הוא פורמט פופולרי למשחקי וידאו מבוססי דפדפן הנראים באתרים כמו Newgrounds ו- Kongregate. בעוד שפורמט הפלאש הופך לאט לאט לניצול מול יישומים ניידים הולכים וגדלים, משחקים איכותיים רבים עדיין מיוצרים איתו. פלאש משתמש ב- ActionScript, שפה קלה ללמידה המעניקה לך שליטה על האובייקטים על המסך. מאמר מדריך זה ילמד אותך כיצד ללמוד כיצד ליצור משחק פלאש בסיסי.
חלק 1 מתוך 3: התחלת התהליך
- 1עצב את המשחק שלך. לפני שתתחיל בקידוד, זה יעזור לקבל מושג גס לגבי מה שאתה רוצה שהמשחק שלך יעשה. פלאש הוא המתאים ביותר למשחקים פשוטים, לכן התמקדו ביצירת משחק שיש בו רק כמה מכניקות שניתן לדאוג לשחקן. נסה לזכור ז'אנר בסיסי וכמה מכניקות לפני שתתחיל באבות טיפוס. עיין במדריך זה לקבלת פרטים נוספים על שלבי התכנון של פיתוח משחקי וידאו. משחקי פלאש נפוצים כוללים:
- רצים אינסופיים: משחקים אלה מעבירים את הדמות באופן אוטומטי, והשחקן אחראי לקפוץ מעל מכשולים או לקיים אינטראקציה אחרת עם המשחק. לשחקן יש בדרך כלל רק אפשרות אחת או שתיים בכל מה שקשור לפקדים.
- קטטנים: בדרך כלל מדובר בסרול צדדי ומטיל על השחקן להביס אויבים כדי להתקדם. לדמות השחקן יש לעתים קרובות כמה מהלכים שהם יכולים לבצע כדי להביס אויבים.
- חידות: משחקים אלה מבקשים מהשחקן לפתור חידות כדי לנצח כל רמה. אלה יכולים לנוע בין סגנון Match-3 כגון Bejeweled לפתרון חידות מורכב יותר שנמצא בדרך כלל במשחקי הרפתקאות.
- משחקי RPG: משחקים אלה מתמקדים בפיתוח הדמויות והתקדמותם, ועוברים על השחקן לעבור בסביבות מרובות עם מגוון סוגי אויב. מכניקת לחימה משתנה בפראות בין RPG ל- RPG, אך רבות מבוססות תור. RPG יכול להיות קשה יותר באופן משמעותי לקידוד מאשר משחק פעולה פשוט.
- 2למד במה פלאש מצטיין. פלאש הכי מתאים למשחקי דו מימד. אפשר ליצור משחקי תלת מימד בפלאש, אך הוא מתקדם מאוד ודורש ידע משמעותי בשפה. כמעט כל משחק פלאש מצליח היה דו ממדי.
- משחקי פלאש מתאימים גם הם להפעלות מהירות. הסיבה לכך היא שרוב שחקני משחקי הפלאש משחקים כאשר יש להם מעט זמן פנוי, כמו למשל בהפסקות, כלומר הפעלות משחק הן בדרך כלל 15 דקות או פחות.
- 3הכירו את שפת ה- actioncript3 (as3). משחקי פלאש מתוכנתים ב- AS3, ותצטרכו להבין קצת בסיסי כיצד זה עובד על מנת ליצור משחק בהצלחה. אתה יכול ליצור משחק פשוט עם הבנה ראשונית של אופן קידוד ב- AS3.
- ישנם מספר ספרים אודות ActionScript הזמינים באמזון ובחנויות אחרות, יחד עם מספר רב של הדרכות ודוגמאות מקוונות.
- 4הורד פלאש מקצועי. תוכנית זו עולה כסף, אך היא הדרך הטובה ביותר ליצור תוכניות פלאש במהירות. ישנן אפשרויות אחרות זמינות, כולל אפשרויות קוד פתוח, אך לעתים קרובות הן חסרות תאימות או לוקח יותר זמן לביצוע אותן משימות.
- Flash Professional היא התוכנית היחידה שתצטרך להתחיל ליצור משחקים.
חלק 2 מתוך 3: כתיבת משחק בסיסי
- 1הבן את אבני הבניין הבסיסיות של קוד as3. כאשר אתה יוצר משחק בסיסי, ישנם מספר מבני קוד שונים בהם תשתמש. ישנם שלושה חלקים עיקריים בכל קוד AS3:
- משתנים - כך נשמרים הנתונים שלך. נתונים יכולים להיות מספרים, מילים (מחרוזות), אובייקטים ועוד. משתנים מוגדרים על ידי הקוד var ועליהם להיות מילה אחת.
var player בריאות: מספר = 100; // "var" מציין שאתה מגדיר משתנה. // "playerHealth" הוא שם המשתנה. // "מספר" הוא סוג הנתונים. // "100" הוא הערך שהוקצה למשתנה. // כל שורות ה- ActionScript מסתיימות ב- ";"
- מטפלים באירועים - מטפלים באירועים מחפשים דברים ספציפיים להתרחש, ואז מספרים על שאר התוכנית. זה חיוני עבור קלט שחקן וקוד חוזר. מטפלים באירועים בדרך כלל קוראים לפונקציות.
addEventListener (MouseEvent.CLICK, swingSword); // "addEventListener ()" מגדיר את מטפל האירועים. // "MouseEvent" היא קטגוריית הקלט שמאזינים לה. // ".CLICK" הוא האירוע הספציפי בקטגוריית MouseEvent. // "swingSword" היא הפונקציה שנקראת כאשר האירוע מתרחש.
- פונקציה - קטעי קוד שהוקצו למילת מפתח שאפשר להתקשר אליה מאוחר יותר. פונקציות מטפלות בחלק הארי של תכנות המשחק שלך, ומשחקים מורכבים יכולים לכלול מאות פונקציות, בעוד שמשחקים פשוטים עשויים להכיל רק כמה. הם יכולים להיות בכל סדר שכן הם עובדים רק כאשר הם נקראים.
פונקציה swingSword (e: MouseEvent): void; {// הקוד שלך הולך לכאן} // "פונקציה" היא מילת המפתח שמופיעה בתחילת כל פונקציה. // "swingSword" הוא שם הפונקציה. // "e: MouseEvent" הוא פרמטר נוסף שמראה שהפונקציה // נקראת ממאזין האירועים. // ": void" הוא הערך המוחזר על ידי הפונקציה. אם לא מוחזר שום ערך // השתמש ב: void.
- משתנים - כך נשמרים הנתונים שלך. נתונים יכולים להיות מספרים, מילים (מחרוזות), אובייקטים ועוד. משתנים מוגדרים על ידי הקוד var ועליהם להיות מילה אחת.
- 2צור אובייקט. ActionScript משמש להשפעה על אובייקטים ב- Flash. על מנת ליצור משחק יהיה עליכם ליצור אובייקטים שהנגן יקיים איתם אינטראקציה. בהתאם למדריכים שאתה קורא, ניתן לכנות חפצים ספריטים, שחקנים או קטעי סרטים. למשחק פשוט זה תיצור מלבן.
- פתח את Flash Professional אם עדיין לא עשית זאת. צור פרוייקט ActionScript 3 חדש.
- לחץ על כלי הציור של המלבן מחלונית הכלים. לוח זה עשוי להיות במיקומים שונים בהתאם לתצורה של Flash Professional. צייר מלבן בחלון הסצנה שלך.
- בחר את המלבן באמצעות הכלי Selection.
- 3הקצה מאפיינים לאובייקט. כאשר המלבן החדש שנוצר נבחר, פתח את תפריט שינוי ובחר "המר לסמל". ניתן גם ללחוץ F8 כקיצור דרך. בחלון "המר לסמל", תן לאובייקט שם שניתן לזהות בקלות, כגון "אויב".
- מצא את חלון המאפיינים. בחלק העליון של החלון, יהיה שדה טקסט ריק שכותרתו "שם המופע" כשאתה מעביר מעל. תן לזה שם כמו שעשיתם כשהמרתם אותו לסמל ("אויב"). זה יוצר שם ייחודי שניתן לקיים בו אינטראקציה באמצעות קוד AS3.
- כל "מופע" הוא אובייקט נפרד שיכול להיות מושפע מקוד. באפשרותך להעתיק את המופע שכבר נוצר מספר פעמים על ידי לחיצה על הכרטיסייה ספרייה וגרירת המופע למקום. בכל פעם שתוסיף אחד, השם ישתנה כך שייקבע שמדובר באובייקט נפרד ("אויב", "אויב 1", "אויב 2" וכו ').
- כשאתה מתייחס לאובייקטים בקוד, אתה פשוט צריך להשתמש בשם המופע, במקרה זה "אויב".
- 4למד כיצד ניתן לשנות את המאפיינים של מופע. לאחר שביצעת מופע, תוכל להתאים את המאפיינים באמצעות AS3. זה יכול לאפשר לך להזיז את האובייקט סביב המסך, לשנות את גודלו וכן הלאה. ניתן להתאים מאפיינים על ידי הקלדת המופע, ואחריו נקודה ".", ואחריו המאפיין, ואחריו הערך:
- enemy.x = 150; זה משפיע על המיקום של אובייקט האויב על ציר ה- X.
- enemy.y = 150; זה משפיע על המיקום של אובייקט האויב על ציר ה- Y. ציר Y מחושב מראש הסצנה.
- enemy.rotation = 45; מסובב את אובייקט האויב 45° בכיוון השעון.
- enemy.scaleX = 3; מותח את רוחב אובייקט האויב בפקטור 3. מספר (-) יהפוך את האובייקט.
- enemy.scaleY = 0,5; לוחץ את האובייקט עד מחצית גובהו.
- 5בחן את trace() הפקודה. פקודה זו תחזיר את הערכים הנוכחיים עבור אובייקטים ספציפיים, והיא שימושית לקביעת אם הכל פועל כמו שצריך. אולי לא תרצה לכלול את הפקודה Trace בקוד הסופי שלך, אך היא שימושית לניפוי באגים.
- 6בנה משחק בסיסי באמצעות המידע הנ"ל. כעת, כשיש לכם הבנה בסיסית בפונקציות הליבה, תוכלו ליצור משחק שבו האויב משנה גודל בכל פעם שתלחצו עליו, עד שייגמר לו הבריאות.
var אויב HP: מספר = 100; // מגדיר את ה- HP (בריאות) של האויב ל -100 בהתחלה. var playerAttack: Number = 10; // מגדיר את כוח ההתקפה של השחקנים כשהם לוחצים. אויב.אדאוונטליסטנר (MouseEvent.CLICK, attackEnemy); // על ידי הוספת פונקציה זו ישירות לאובייקט האויב, // הפונקציה מתרחשת רק כאשר לוחצים על האובייקט עצמו // בניגוד ללחיצה במקום כלשהו על המסך. setEnemyLocation (); // זה מכנה את הפונקציה הבאה להצבת האויב // על המסך. זה קורה כאשר המשחק מתחיל. function setEnemyLocation (): בטל {אויב.קס = 200; // מעביר את האויב ל 200 פיקסלים משמאל לאויב המסך. y = 150; // מעביר את האויב למטה 150 פיקסלים מהחלק העליון של האויב.rotation = 45; // מסובב את האויב 45° בכיוון השעון ("ערך ה- x של האויב הוא", אויב.קס, "וערך ה- y של האויב הוא",אויב.י); // מציג את המיקום הנוכחי של האויב לניפוי באגים} function attackEnemy (e: MouseEvent): void // פעולה זו יוצרת את פונקציית ההתקפה כאשר לוחצים על האויב {אויביין HP = אויב HP - playerAttack; // מפחית את ערך ההתקפה מערך HP, // וכתוצאה מכך ערך HP החדש. אויב.סקייל X = אויב HP / 100; // משנה את הרוחב על סמך הערך החדש של HP. // הוא מחולק ב 100 כדי להפוך אותו לעשרוני. אויב.סקאלה = אויב HP / 100; // משנה את הגובה על סמך עקבות הערך החדשות של HP ("לאויב יש", אויב HP, "HP נותרה"); // פלט כמה HP נשאר לאויב}// מפחית את ערך ההתקפה מערך HP, // וכתוצאה מכך ערך HP החדש. אויב.סקייל X = אויב HP / 100; // משנה את הרוחב על סמך הערך החדש של HP. // הוא מחולק ב 100 כדי להפוך אותו לעשרוני. אויב.סקאלה = אויב HP / 100; // משנה את הגובה על סמך עקבות הערך החדשות של HP ("לאויב יש", אויב HP, "HP נותרה"); // פלט כמה HP נשאר לאויב}// מפחית את ערך ההתקפה מערך HP, // וכתוצאה מכך ערך HP החדש. אויב.סקייל X = אויב HP / 100; // משנה את הרוחב על סמך הערך החדש של HP. // הוא מחולק ב 100 כדי להפוך אותו לעשרוני. אויב.סקאלה = אויב HP / 100; // משנה את הגובה על סמך עקבות הערך החדשות של HP ("לאויב יש", אויב HP, "HP נותרה"); // פלט כמה HP נשאר לאויב}
- 7נסה את זה. לאחר שיצרתם את הקוד, תוכלו לבדוק את המשחק החדש שלכם. לחץ על תפריט Control ובחר Test Movie. המשחק שלך יתחיל, ותוכל ללחוץ על אובייקט האויב כדי לשנות את גודלו. יציאות ה- Trace שלך יוצגו בחלון הפלט.
חלק 3 מתוך 3: לימוד טכניקות מתקדמות
- 1למד כיצד חבילות עובדות. ActionScript מבוסס על Java ומשתמש במערכת חבילות דומה מאוד. חבילות מאפשרות לך לאחסן משתנים, קבועים, פונקציות ומידע אחר בקבצים נפרדים, ואז לייבא קבצים אלה לתוכנית שלך. אלה שימושיים במיוחד אם ברצונך להשתמש בחבילה שמישהו אחר פיתח שתקל על יצירת המשחק שלך.
- עיין במדריך זה לקבלת פרטים נוספים על אופן הפעולה של חבילות ב- Java.
- 2בנה את תיקיות הפרויקט שלך. אם אתה יוצר משחק עם מספר תמונות וקטעי קול, תרצה ליצור מבנה תיקיות למשחק שלך. זה יאפשר לך לאחסן בקלות את האלמנטים השונים שלך, כמו גם לאחסן חבילות שונות להתקשרות.
- צור תיקיית בסיס לפרויקט שלך. בתיקיית הבסיס, תהיה לך תיקיית "img" לכל נכסי האמנות שלך, תיקיית "snd" לכל נכסי הקול שלך ותיקיה "src" לכל חבילות המשחק והקוד שלך.
- צור תיקיית "משחק" בתיקיית "src" לאחסון קובץ הקבועים שלך.
- מבנה מסוים זה אינו הכרחי, אך הוא דרך קלה לארגן את העבודה והחומרים שלך, במיוחד עבור פרויקטים גדולים יותר. למשחק הפשוט שהוסבר לעיל, לא תצטרך ליצור ספריות.
- 3הוסף צליל למשחק שלך. משחק ללא סאונד או מוסיקה יהפוך למשחק במהירות משעמם. באפשרותך להוסיף צליל לאובייקטים ל- Flash באמצעות הכלי Layers. לפרטים נוספים, עיין במדריך זה.
- 4צור קובץ קבועים. אם למשחק שלך יש הרבה ערכים שיישארו זהים לאורך כל המשחק, אתה יכול ליצור קובץ קבועים כדי לאחסן את כולם במקום אחד, כך שתוכל להתקשר אליהם בקלות. קבועים יכולים לכלול ערכים כמו כוח המשיכה, מהירות השחקן וכל ערך אחר שתצטרך לקרוא אליו שוב ושוב.
- אם אתה יוצר קובץ קבועים, יהיה עליו למקם אותו בתיקיה בפרויקט שלך ולייבא אותו כחבילה. לדוגמה, נניח שאתה יוצר קובץ Constants.as ומניח אותו בספריית המשחק שלך. כדי לייבא אותו, השתמש בקוד הבא:
חבילה {ייבוא משחק. *; }
- אם אתה יוצר קובץ קבועים, יהיה עליו למקם אותו בתיקיה בפרויקט שלך ולייבא אותו כחבילה. לדוגמה, נניח שאתה יוצר קובץ Constants.as ומניח אותו בספריית המשחק שלך. כדי לייבא אותו, השתמש בקוד הבא:
- 5תסתכל על המשחקים של אחרים. בעוד מפתחים רבים לא יחשפו את הקוד למשחקים שלהם, ישנם מגוון מדריכי פרויקטים ופרויקטים פתוחים אחרים שיאפשרו לך לראות את הקוד ואיך הוא מתקשר עם אובייקטים של משחק. זוהי דרך נהדרת ללמוד כמה טכניקות מתקדמות שיכולות לעזור למשחק שלך להתבלט.
קרא גם: איך להכין משחק מצליח?
שאלות ותשובות
- האם אוכל להשתמש ב- Scratch?כן, פשוט עבור מימין לתוכנית השריטות למידע נוסף.
- יש לי מחשב ברמה נמוכה ללא כרטיס גרפי. האם אוכל ליצור משחק דו מימד, ואם כן באיזו תוכנה עלי להשתמש?אתה עדיין יכול להשתמש בפלאש, מכיוון שכרטיסי מסך לא ממש משפיעים כל כך על משחקי דו-ממד (אך ייתכן שתראה בעיות במהירות המחשב האישי שלך).
- איך קוראים לכמה תוכניות בחינם?אחת התוכניות החינמיות נקראת Freeware. זה בחינם וקל לשימוש.
- האם אוכל ליצור משחק בתשלום זול באמצעות פלאש?כן, אתה בהחלט יכול לעשות משחק בתשלום זול באמצעות פלאש!
- כיצד אוכל ליצור משחק בג'אווה?יש הוראות להכנת משחק פשוט ב- Make a rock, נייר, ומספריים java.