כיצד לבנות משחק מחשב פשוט באמצעות סקריפט אצווה?
Batch Script היא שפת סקריפטים בסיסית הפועלת בכל מערכת הפעלה של Windows או MS DOS, הפונקציות מבוססות על הפקודות לשורות הפקודה במערכות הפעלה אלה. גם זה די מגניב! להכין משחק עם התסריט הזה זה לא כל כך קשה, כל מה שצריך זה מעט זמן ויצירתיות. שימו לב: על מנת שפרויקט זה יפעל כראוי, תזדקקו ל- Windows 2000 ואילך, מכיוון שהדבר לא יעבוד בגרסאות קודמות של Windows או MS DOS, מכיוון ש- MS DOS אינו תואם לתסריטי אצווה מודרניים.
- 1החליטו על משחק. לפני שתחליט להכין משחק shoot-up או משחק הצבע ולחץ, דע שאפילו עם MS DOS 8, ל- script batch יש מגבלות חמורות על יכולותיו. לא תוכל ליצור יותר משחק מאשר משחק מבוסס טקסט. זה יכול להיות חידון או משחק תרחיש, אבל יהיה לך טקסט בלבד. השאלה האם ברצונך לקבל גרפיקה של ASCII תלויה בך, אך המשחק עדיין יתבסס כולו על קלט טקסט.
- 2למדו את התסריט. התסריט לא כל כך קשה ללמוד, אולי אפילו תלמד אותו פשוט על ידי הסתכלות בתוכנית. כדי לדעת כל שפת סקריפטים ייתכן שתצטרך לדעת כמה פקודות בסיסיות בשורת הפקודה של המחשב שלך. עבור שורת פקודה זו, הפקודות הבסיסיות שתצטרך הן:
echo
color
title
goto
if
set
labeling (not a command, but how to label)
- 3למד כיצד להשתמש בפקודות לעיל.
- פקודת ההד משמשת להדפסת טקסט למסוף. למטה, פקודת ההד מדפיסה את "שלום עולם!":
- פקודת הצבע משמשת לשינוי צבע הטקסט בשורת הפקודה. זה לא שימושי במיוחד, וכנראה שלא צריך להתמקד בו עד שתסיים את המשחק עצמו, אבל התוצאות של שינוי הצבע יכולות להיות מושכות למדי. צבעים בשורות הפקודה של DOS ממוספרים, יש טבלת צבעים בסוף מאמר זה. הפקודה הבאה תשנה את צבע הטקסט כדי רקע שחור עם טקסט ירוק:
- פקודת הכותרת פשוט משנה את שם החלון בשורת הכותרת ובשורת המשימות, והיא אינה שימושית בשום פנים ואופן, אולם היא יכולה לגרום לתוכנית שלך להראות מקצועית. השימוש בו כך ישנה את כותרת החלון ל"תכנית מהנה ":
- פקודת goto משמשת למעבר לחלק מסוים בתוכנית. אתה תשתמש בו כדי לקבוע מה יקרה כאשר תשובות מסוימות ייבחרו מתוך שאלות. כדי להשתמש בפקודה goto כדי לעבור לתווית בשם "לא נכון":
- הפקודה if משמשת לקביעת מה יקרה אם אירוע מסוים יתרחש. לאחר הצהרת ה- if (אם [משהו]), תופיע פקודה. בהצהרת if, אם אירוע מסוים נכון, הפקודה בהצהרה תתבצע. תשתמש בהצהרה זו כדי לקבוע באיזו פקודת goto יש להשתמש. משפט אם זה יהיה נכון אם הקלט שווה ל- 12:
- הפקודה set היא למעשה די מסובכת, מכיוון שהיא עשויה לשמש בדרכים רבות. נכון לעכשיו, כל מה שאתה צריך זה הוא לגרום למחשב לקבל קלט. כדי לעשות זאת:
- לבסוף, תיוג. תיוג יכול למנות חלקים מסוימים בתוכנית כך שתוכל להשתמש בפקודה goto. אתה יכול למנות חלקים מסוימים בתוכנית כל דבר, כל עוד השם אינו פקודה. כדי לתייג קטע "ראשי", הקלד את הדברים הבאים:
:ראשי
- חלקים שכותרתו כוללים את התווית עצמה וכל הקוד שעוקב אחריה עד שנמצא תווית אחרת או שהקובץ מגיע לסוף! הקפד להציב את התווית לפני התווית של החלק, ותווית נוספת אחריה כדי שהמחשב יבין איזה קטע מתויג! דוגמה למטה:
@echo כבוי: LABEL1 הד זה מבחן טקסט מוגדר / קלט p = זה קלט בדיקה_ אם% קלט% == 1 הולך LABEL1 הולך LABEL2: LABEL2 הד בדיקה
- ייתכן שהשורה הראשונה של התוכנית לעיל הייתה מבלבלת בעיניך. שורה זו מכבה את תצוגת הקוד בתוך הקובץ, כך שלא נראה שהכול הוקלד על גבי קונסולה. נכון לעכשיו זה לא חשוב, נכון לעכשיו אתה צריך לקבוע מה התוכנית הנ"ל תעשה (תתעלם מהשורה הראשונה). התוכנית תציג טקסט שאומר "זה מבחן טקסט", ואז היא תבקש להזין. אם הקלט הוא "1" (כלומר הקלדת 1), התוכנית תחזור ל- LABEL1 והפקודות שמתחתיה יחזרו. אם לא מתקיים התנאי בהצהרת if, המחשב ידפיס טקסט למסוף "TEST". העתק את התוכנית הנ"ל לשני חלונות שונים המריצים פנקס רשימות. באחת, שמור אותה כ- TEST1 בכל תיקיה והפעל אותה. שימו לב כיצד מוצג הטקסט. בחלון השני, מחק את השורה הראשונה ושמור אותה כ- TEST2 והפעל אותה. שמים לב להבדל?
- חלקים שכותרתו כוללים את התווית עצמה וכל הקוד שעוקב אחריה עד שנמצא תווית אחרת או שהקובץ מגיע לסוף! הקפד להציב את התווית לפני התווית של החלק, ותווית נוספת אחריה כדי שהמחשב יבין איזה קטע מתויג! דוגמה למטה:
- ברגע שיש לך הבנה כללית כיצד ניתן להשתמש בפקודות הנ"ל, תוכל לעבור לשלב הבא.
- 4התחל לתסריט את המשחק שלך. מוצע כי מתחיל ישתמש בפנקס רשימות, אך אם תרצה להשתמש ב- MS DOS EDIT, זה גם בסדר. מומלץ גם למתחילים להתחיל במשחק חידון בסיסי, כך שזה מה שמאמר זה יראה לכם כיצד לעשות. זכור להתחיל בכיבוי ההד. ואז הציגו את המשחק שלכם עם טקסט כלשהו באמצעות פקודת ההד, ואז השתמשו בסט כדי לאפשר קלט עם פקודת ה- goto. זה אולי נשמע מבלבל, אז תסתכל למעלה (הערה: הפקודה REM יוצרת הערות, כלומר הערות למפתח שלא יופיעו בתוצאה הסופית):
- 5עבדו על דף ההוראות. בשלב זה, עליך לשמור את הקובץ שלך (לשמור כמשהו.בט), ולשים אותו בתיקיה שיצרת למשחק. לאחר שמירתו, הפעל אותו וודא שהוא פועל.
- מנקודה זו ואילך יהיו לך מספר קבצים למשחק (במיוחד אם אתה רוצה לקבל גרפיקה של ASCII). אתה יכול לגרום לסקריפט האצווה להדפיס את התוכן של כל קובץ על המסך באמצעות פקודת type. להלן ידפיס את התוכן של TEST.txt:
- חשוב לזכור לכלול את סיומת הקובץ, אחרת הפקודה לא תפעל כראוי.
- צור דף הוראות בפנקס הרשימות. זה צריך לומר משהו כמו:
- שמור זאת כ- INST.txt בתיקיה של קובץ האצווה, ואז הפוך אותו כך שהמשחק שלך ידפיס את הטקסט למסוף בדף ההוראות:
- הפעל את התוכנית וודא שהיא פועלת.
- מנקודה זו ואילך יהיו לך מספר קבצים למשחק (במיוחד אם אתה רוצה לקבל גרפיקה של ASCII). אתה יכול לגרום לסקריפט האצווה להדפיס את התוכן של כל קובץ על המסך באמצעות פקודת type. להלן ידפיס את התוכן של TEST.txt:
- 6עבדו על תוכן המשחק עצמו. זה המקום שבו רוב היצירתיות / המחקר, העבודה והזמן שלך מושקעים בעבודה על המשחק, כמו גם המקום בו רוב התסריטים של המשחק צריכים להיות. צריך להיות מקום שאליו אתה הולך כשאתה מקבל תשובה שגויה, ודרך להתקדם לשאלה הבאה כשתקבל את התשובה הנכונה. לאמור לעיל יהיו שאלות בסיסיות לגבי החלק החיצוני של המכונית. אתה יכול להחליף אותם במה שאתה אוהב.
- הפעל את התוכנית וודא שהיא פועלת.
- 7צור מסך מנצח. יצירת מסך מנצח היא פשוטה כמו מסך ההוראות. צור מסמך טקסט עם שבח על הזכייה ושמור אותו כ- WIN.txt בתיקיית האצווה. הוסף את השורות הבאות לסוף המשחק שלך למסך הזוכה:
- 8המשחק שלך אמור להיראות כמו הקוד שלמעלה:
- הפעל את התוכנית וודא שהיא פועלת.
- 9גע בקובץ שלך. התחל על ידי מעבר לכל תווית והצבת הפקודה cls אחריה. פעולה זו תנקה את המסך בכל תווית, כך שלא יהיה לך מסך מלא במידע מיותר.
- 10תקן דקדוק במידת הצורך. אם תרצה, הפוך את כל התשובות ברשימה למשפטים המלאים. שים לב שעליך להימנע מהתכווצויות בפקודת ECHO של סקריפט הגרלה! כמו כן, עליך להימנע מקושי קו ומעל / פחות מסמלים, כוכבים, אחוז סמלים וכל סמלים חריגים אחרים. סמלים אלה ייצרו שגיאת תחביר שגורמת לתוכנית להפסיק, להשהות או לקרוס.
- 11צור גרפיקה למשחק אם תרצה. צור אמנות ASCII במסמכי טקסט נפרדים והשתמש בפקודה type כדי להציג אותם בתוכנית:
- 12תקן את כל שגיאות ההקלדה שתוכל למצוא. חשוב על הדברים שלך לתיקון. לאחר מכן הוסף את צבעך באמצעות פקודת הצבע. מומלץ למקם אותה בתחילת התוכנית כך שכל התוכנית תהיה בצבע זה. הנה ההסבר כיצד להשתמש בו ישירות משורת הפקודה:
Sets the default console foreground and background colors.
COLOR [attr]
attr Specifies color attribute of console output
Color attributes are specified by TWO hex digits - the first corresponds to the background; the second the foreground. Each digit can be any of the following values:
0 = Black 8 = Gray 1 = Blue 9 = Light Blue 2 = Green A = Light Green 3 = Aqua B = Light Aqua 4 = Red C = Light Red 5 = Purple D = Light Purple 6 = Yellow E = Light Yellow 7 = White F = Bright White
If no argument is given, this command restores the color to what it was when CMD.EXE started. This value either comes from the current console window, the /T command line switch or from the Default Color registry value.
- במילים אחרות, אם אתה רוצה רקע לבן בוהק וטקסט שחור:
@echo off color f0: הד CLS עיקרי.
- במילים אחרות, אם אתה רוצה רקע לבן בוהק וטקסט שחור:
- 13מזל טוב, יצרת זה עתה משחק מחשב בסיסי עם סקריפט אצווה!
- אם ברצונך לשמור משהו כקובץ אצווה אך אינך רוצה לסיים אותו עדיין, תוכל לערוך את הקובץ שוב על ידי לחיצה ימנית ובחירה באפשרות "ערוך".
- אצווה היא דרך מהנה להתחיל לכתוב תוכניות. כדי לעבור למשהו קצת יותר קשה אבל הרבה יותר חזק נסה את שפת התכנות של פיתון.
תוכל למצוא סרטונים בחינם ב- YouTube כדי ללמוד כל שפת תכנות.
- בעת שמירה, הקפד לשנות את התפריט הנפתח שמתחת לתיבת הקלט של שם הקובץ מ"מסמך טקסט (טקסט) "ל"כל הקבצים". לאחר שתעשה זאת, וודא ששם הקובץ שלך תמיד מסתיים ב-.bat.
- שמור לעיתים קרובות. אתה עלול להתחרט אם לא.
- אם יש לך מספר תוכניות שעובדות יד ביד, אתה יכול להשתמש בפקודה "להתקשר" כדי להפעיל קובץ אצווה אחר מתוך זה שאתה מריץ.
- נסה ליצור גרסאות רבות של המשחק תוך כדי כך שתוכל להשוות ביניהן ולראות אם יש שגיאות. אל תדאג כמה מקום זה ייקח, קבצי אצווה הם קטנים מאוד.
- אתה יכול להגדיר משתנה על ידי הצבת "set variable name = value", או שתוכל לגרום למשתמשים להגדיר משתנים על ידי הצבת "set / p input = קלט טקסט:". ניתן להחליף את "טקסט הקלט" בכל מה שרוצים שיראו בעת הגדרת המשתנה הזה.
- לעיתים קרובות נאמר כי אין זה חוקי לשלוח קבצי אצווה דרך האינטרנט. בשום פנים ואופן זה לא נכון, אך שים לב לעובדה שאתה עלול להסתבך בשליחת קבצי אצווה מסוכנים דרך האינטרנט (למשל: קבצי אצווה שמרסקים את המחשב, מוחקים קבצי מערכת חיוניים וכו '). הם לא נקראים וירוסים, אך הם עדיין מזיקים ואתה יכול להסתבך בצרות קשות עבורם.
- לעולם אל תשים פקודות MS DOS בפקודת ההד, מכיוון שהם יבוצעו. זכרו שכל מה שמוצג על ידי שורת הפקודה הוא הד!
- לעולם אל תשים פקודות MS DOS בקבצי הטקסט המוקלדים למסוף. קבצי טקסט פותרים כמה בעיות, כגון קו נטוי וכוכבים, אך הפקודות בהן עדיין יבוצעו על ידי המערכת.
- היזהר מפקודת "דל". למרות שניתן להשתמש בו כדי למחוק, למשל, משתמשים למשחק ארוך יותר, הוא אינו מוגבל וניתן להשתמש בו למחיקת כל דבר, כולל קבצים חיוניים. לעולם אל תשתמש בפקודה זו עד שתדע באמת מה אתה עושה איתה.
שאלות ותשובות
- כשאני מריץ את קובץ העטלף שלי, הוא הופך למשהו אחר. למה?וודא שכאשר אתה שומר את קובץ ה- Notepad שלך: 1.) אתה שם לקובץ "filenamehere.bat" 2.) אתה בוחר את כל סוגי הנתונים (. *) ו- NOT.txt.
- מדוע שורת הפקודה שלי לא תעבוד? כשאני פותח אותו הוא נסגר מיד.ככל הנראה שורת הפקודה נחסמת על ידי מנהל המערכת אם אתה מקודד ממחשב עבודה או בית ספר.
- האם ניתן להוסיף צליל למשחק, והאם ניתן לעשות זאת ב- DosBox?כן, אתה יכול לעשות זאת ב- DosBox. זה בעצם כמו שורת הפקודה, אבל פשוט תוכנית אחרת.
- אילו צעדים ננקטים לעריכת הטקסט הכלול בתוך קובץ a.txt?פתח את קובץ ה- txt וערוך את הטקסט. שמור את קובץ הטקסט החדש וכאשר אתה מפעיל את המשחק שוב, תקבל את הטקסט שהשתנה.
- כיצד אוכל לפתוח את הקוד עבור קובץ האצווה שלי?פתח את פנקס הרשימות. כתוב את הקוד לחלון ושמור אותו. אתה יכול לפתוח את הקובץ מאוחר יותר על ידי לחיצה ימנית על הקובץ ולפתוח אותו עם פנקס הרשימות. ודא שאתה לא הופך את Notepad לתוכנית ברירת המחדל, או אחרת לחץ לחיצה כפולה על הסקריפט יפתח אותו ב- Notepad במקום להריץ אותו.