בפוסט הזה ובאלו שאחריו אני אתמקד ביצירת משחק ב-Game Maker, כאשר כל פעם נוסיף למשחק תכונות ואלמנטים אחרים. כל האלמנטים שאשתמש בהם נמצאים בספריית Game Maker 8, תוכלו למצוא אותה בספריית program files לאחר שתתקינו את התוכנה.
יצירת בסיס למשחק
במשחק הבסיסי יהיו האלמנטים הבאים:
דמות ראשית
הדמות הראשית תנוע ע”י מקשי החצים (בשליטה של השחקן, כמובן)
דמות אויב
דמות האויב תנוע באופן עצמאי בחדר, התנגשות של הדמות הראשית עם דמות האויב תגרום לשלושה דברים:
- השמעת סאונד
- הקפצת הדמות הראשית לנקודת ההתחלה
- הורדת החיים ב-1
חיים
מן הסתם נצטרך גם חיים, במשחק יהיו 3 חיים, כאשר אין עוד חיים – המשחק נגמר.
בונוסים
כל בונוס שהדמות הראשית אוספת, תזכה ב-10 נקודות וישמע סאונד מתאים
ניקוד
ולכן אנחנו צריכים גם ניקוד, שמתחיל ב-0.
המשחק מסתיים כאשר אין עוד בונוסים לאסוף.
נשמע פשוט, לא? אז בואו נראה איך בונים את המשחק שלב אחרי שלב.
יצירת ספרייטים
אני מתחילה תמיד ביצירת הספרייטים עבור האוביקטים במשחק. במשחק הבסיסי נצטרך עבור הדמות שלנו 4 ספרייטים לפחות (תנועה לכל אחד מהכיוונים).
לא זוכרים איך יוצרים ספרייטים בתנועה? קראו שוב את הפוסט בנושא הסרת רקע בעורך התמונות, הוא כולל הסבר מפורט.
אז כמה ספרייטים אנחנו צריכים?
4 לדמות הראשית (הקפידו לשמור אותם בתיקייה נפרדת)
1 לדמות האויב (כמובן שאפשר יותר, אבל אנחנו נתחיל בזה)
1 לבונוס
טיפ חשוב שיעזור לכם בהמשך – לכל ספרייט ואוביקט, וגם לסאונדים, לפונטים ולחדרים תנו שם שמתאר אותם, אל תשאירו את השם שהוא ברירת המחדל, למשל, sprite0, אלא שנו את השם, למשל, לboyRight כאשר מדובר בדמות הראשית כאשר היא פונה ימינה.
יצירת אוביקטים
כעת ניצור 3 אוביקטים עבור: דמות ראשית, דמות אויב והבונוס.
לחיצה על אייקון יצירת אוביקט בסרגל העליון תיצור אוביקט חדש.
לכל אוביקט נשייך את הספרייט שלו, במקרה של הדמות הראשית, נבחר את הספרייט שפונה ימינה.
יצירת סאונד
לחצו על אייקון יצירת סאונד ואח”כ על Load sound. במסך שיפתח בחרו אחד מקבצי הסאונד, אני בחרתי את beep1 וקראתי לו coin1, כיוון שהוא יהיה הסאונד שישמע כאשר הדמות תאסוף מטבע, ואת הסאונד boomshot עבור ההתקלות עם האויב.
בשלב הזה, אלו האלמנטים שצריכים להיות במשחק שלכם מסודרים בתיקיות
הוספת אירועים ופעולות לאוביקטים
נתחיל עם אירועים עבור הדמות הראשית.
האירועים הראשונים שנגדיר הם אירועי לחיצה על מקשי החצים, שבאמצעותם נזיז את הדמות הראשית.
1. תנועה
כדי שהדמות תזוז שמאלה, נוסיף אירוע לחיצה key press left ונשייך לו את הפעולה move fixed ע”י גרירה של האייקון לחלון ה-actions. (פעולה זו נמצאת בלשונית move של הפעולות). במאפייני התנועה נציין תנועה שמאלה ומהירות 3.
2. שינוי ספרייט
עוד פעולה שנשייך לאירוע זה, הוא שינוי הספרייט לספרייט שבו הדמות פונה שמאלה.
פעולת שינוי ספרייט נמצאת בלשונית main1. נגרור אותה לחלון ה- actions ובאפשרויות נבחר את הספרייט שבו הדמות פונה שמאלה. אין צורך לשנות את יתר המאפיינים.
כך יראה חלון האפשרויות:
3. פעולת עצירה
כדי שהדמות לא תמשיך לזוז כאשר אנחנו מפסיקים ללחוץ על מקש החץ במקלדת, אנחנו צריכים פעולת עצירה. נוסיף אירוע key release left ונשייך לו פעולה move fixed. הפעם במאפיינים נבחר את הריבוע המרכזי, שמסמל עצירה ונשאיר את המהירות על 0.
חלון האפשרויות יראה כך:
יש לבצע את כל הפעולות בסעיפים 1-3 עבור כל הכיוונים.
כך אמור להיראות חלון המאפיינים של הדמות הראשית בשלב הזה:
עכשיו נוסיף אירוע עבור מצב בו הדמות שלנו מחוץ לחדר.
למה צריך אירוע כזה? כדי שכל פעם שהדמות שלנו תצא מגבולות החדר, היא לא תמשיך ללכת עד אין קץ, אלא תיכנס שוב מהצד הנגדי. כמו בפקמן.
צריך לזכור שגם כאשר האוביקט מחוץ לחדר, עדיין המשחק שומר עבורו משאבים (זיכרון), שכדי שנרצה להשתמש בו שוב נוכל לעשות זאת. גם אם אנחנו נשכח את זה, game maker לא שוכח, וכל אוביקט כזה גם אם אינו מופיע בחדר, משפיע על משקל המשחק.
נחזור לפעולות. מה צריך כדי להחזיר את הדמות הראשית מהצד השני?
4. אירוע outside room
נוסיף את האירוע outside room שנמצא בקטגוריה other של האירועים ונשייך לו את הפעולה wrap screen שנמצאת בלשונית move. שימו לב, יש לבחור באפשרות in both directions, כיוון שאנחנו רוצים שהדמות תוכל להיכנס חזרה לחדר מכל הצדדים.
סיימנו עם החלק הראשון של יצירת הדמות הראשית, תנועה ע”י מקשי החצים ושינוי הספרייט בהתאם.
הרצה של המשחק
הוסיפו את האוביקט של הדמות לחדר והריצו את המשחק.
אם הצלחתם להזיז את הדמות באמצעות מקשי החצים והיא משנה ספרייט לכיוון המתאים, זה אומר שעשיתם את זה כמו שצריך.
בפוסט הבא – התנגשות עם דמות אויב.
אני משתמש בunity 3D אבל אני עדין לא יודע איך להפעיל משחק
אני הולך לתכנת משחק מגניב וכיפי
בן – לא משנה איזה שם תתן לקובץ הסאונד, כל עוד הוא באנגלית ולא בעברית.
רצוי שהשם יתאר את סוג הסאונד.
זה משנה מה יהיה השם של הסאונד?
איך קוראים לתוכנה ליצור המשחק?
התוכנה לא עובדת לי, אין חיבור לסרבר שלהם..
חבל 🙁
אני לא הבנתי כלום, במילא אני גרוע באנגלית ואני לא מבין כלום
יובל הקובץ הוא בגרסה ישנה של Game Maker ולכן יש לפתוח אותו ישירות מהתוכנה של Game maker
אני הורדתי את הקובץ אבל שאני לוחץ על פתח זה לא עושה כלום אני צריך שזה יתמוך במשהו? מה אני צריך לעשות בשביל שזה יעבוד
אני מוריד זה מזה טוב
Best post, which everyone should be interested. This blog may become my favorite.
נדב, לפני שאתה מתחיל ליצור משחק בדוק האם יש לך רעיון למשחק ואיך אתה רוצה שהוא יתנהל. אני מציעה לך לקרוא קודם את הפוסט בנושא תכנון ואפיון של משחק מחשב:
http://www.gamestudies.co.il/wordpress/?p=953
בהצלחה.
איך יוצרים משחק ???
אני כמוך היום זה פעם ראשונה שאני מתעסק בזה ואני בן 12
אדירוס – מה בדיוק אתה לא מצליח לעשות?
דיי אני לא מצליח!XDD
כמוך
קול אני רוצה ליצור משחק בשם ציקלופ!
וואי
איך מייצרים
גם אני לא הבנתי
יפה