תוכן עניינים:
- שלב 1: לפני תחילת העבודה …
- שלב 2: כללי משחק הניחושים
- שלב 3: תוכנית הבלוקים: משתנים
- שלב 4: הפונקציות
- שלב 5: הפעלת התוכנית ומטפלים באירועי אירועים ואירועים
- שלב 6: הודעת ההפעלה ופונקציות האתגר
- שלב 7: אירוע הכפתור בלחיצה - השב לאתגר ה- BITs
- שלב 8: אירוע הקלקה על כפתור B - שלח תגובה לאתגר ה- BITs
- שלב 9: הרווח/הפסיד ושאר הפונקציות
- שלב 10: הסימולטור והקוד
וִידֵאוֹ: מה החשיבה ביט? צרו משחק ניחושים פשוט בעזרת המיקרוביט של ה- BBC !: 10 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
אספתי כמה מיקרוביטים של BBC לאחר שקראתי ביקורות חיוביות עליהם במספר מאמרים מקוונים.
בניסיון להכיר את ה- BIT, שיחקתי עם עורך הבלוקים המקוון של Microsoft במשך כמה שעות והגעתי למשחק ניחושים פשוט.
ב- IBLE זה נדבר על חוקי המשחק וננווט בין הפונקציות המורכבות בגושי קוד שונים בעורך הבלוקים.
לבסוף, קהל נרגש יכול לנווט לסימולטור המקוון ולתת משחק פשוט זה.
בואו נתחיל.
שלב 1: לפני תחילת העבודה …
החומרה
קל להכיר את לוח ה- Microbit של BBC. עבור IBLE זה, כל מה שאתה צריך לדעת הוא שזה לוח זעיר עם 2 כפתורי לחיצה, מערך נוריות LED זעירות ושקע מיקרו- USB המשמש כספק כוח ואמצעי להעלאת תוכנית ללוח..
את מערך הלדים הזעירים ניתן לתכנת להאיר בדפוסים שונים.
הערה:
אתה לא צריך את הלוח הפיזי עבור IBLE זה! באתר ה- Microbit של BBC יש סימולטור מקוון לבדיקת הקוד שאתה מפתח באינטרנט.
התוכנה
IBLE זה אינו מפרט לגבי תחילת העבודה עם ה- Microbit של BBC ו/או עורך הבלוקים המקוונים.
הקהל מוזמן לחקור את המשאב הזה של ה- Micorbit של ה- BBC לפני שהוא ממשיך לשלב הבא.
ה- Microbit של BBC תוכנן ללמד תכנות באמצעות גישה מאוד ידידותית למשתמש ולכן הכרות עם שפת תכנות אחרת היא נחמדה, אך לא נדרשת במיוחד אם אתה מתכוון להשתמש בעורך Microsoft Blocks כדי ללמוד תכנות.
עם זאת, טרם נתקלתי במוצר שקל כל כך להתחיל איתו מאשר ה- Microbit של BBC, בהתחשב בכך שאני מחזיק ומשחק עם מספר פלטפורמות תכנות אחרות של מיקרו-בקר.
שלב 2: כללי משחק הניחושים
כללי המשחק הם כדלקמן:
- עם ההפעלה, ה- BIT חושב על מספר ומאתגר את השחקן האנושי לנחש מהו המספר הזה על ידי הדפסת הודעה בלוח ה- LED שלו, ומחכה לתשובה
- השחקן מנחש ולוחץ על לחצן הלחיצה השמאלית (A) פעמים רבות כמו התשובה - דוגמה, אם השחקן ניחש 5, אז הכפתור נלחץ 5 פעמים
- כדי לשלוח את התשובה ל- BIT, השחקן לוחץ פעם אחת על כפתור הלחיצה הימני (B)!
- אם השחקנים מנחשים שהוא צודק, אז השחקן קולע נקודה, אם לא ה- BIT מקבל נקודה
- אם שחקן אחד ניחש מספר מחוץ לטווח, השחקן השני קולע נקודה - ה- BIT מציג X גדול על צג ה- LED שלו וממשיך לנחש מספר חדש ולחזור על האתגר; דוגמה: אם ה- BIT אתגר אתכם לנחש מספר בין 1 ל -5, וניחשתם 6, או אם ניחשתם אפס (על ידי לחיצה פשוטה על לחצן B לפני לחיצה על כפתור A), סיבוב זה לא תקף.
- תגובת האתגר נמשכת עד שאחד השחקנים משיג את הנקודות המרביות המותרות
פתיחת משחק חדש:
כדי להתחיל משחק חדש בכל עת, פשוט תן לנער את ה- BIT! לחלופין, פשוט נתק וחבר את החשמל מחדש.
שלב 3: תוכנית הבלוקים: משתנים
התוכנית משתמשת בכמה משתנים ששמם כדי להתאים את הפונקציות המפורטות להלן. ניתן ליצור משתנים אלה על ידי לחיצה על הכרטיסייה תכנות משתנים בעורך הבלוקים
BIT_SCORE - עוקב אחר הנקודות שצבר ה- BIT
bitGuessed - משתנה זה מחזיק את הערך האקראי אותו מנחש ה- BIT
CHECK - כאשר הוא מוגדר ל- True, ה- BIT בודק אם הניחושים של השחקנים שווים את הניחוש של ה- BITs
GAME_RANGE - מספר זה מגביל עד כמה גבוה ה- BIT או שחקן יכולים לנחש
דוגמה: אם הוא מוגדר ל -6, שני השחקנים יכולים לנחש מ -1 עד 6
MSG - מחרוזת שמשתנה להצגת הודעות שונות על בסיס ההקשר של המשחק
PLAYER_SCORE - עוקב אחר הנקודות שהשיג השחקן
playerGuess - המספר שניחש על ידי השחקן נרשם במשתנה זה
הערה
המשתנה הראשון בשם פריט הוא משתנה כללי וברירת מחדל וניתן להתעלם ממנו
שלב 4: הפונקציות
כחלק מתהליך הלמידה ולארגון טוב יותר, הקוד היה מאורגן במספר פונקציות שניתן לקרוא להן או להפעיל אותן בתוכנית הראשית. בדיוק כמו משתנים, ניתן ליצור ולגשת לפונקציות על ידי לחיצה על הכרטיסייה מתקדם> תכנות פונקציות.
להלן תיאור קצר של הפונקציות:
announceWinner - פונקציה זו מדפיסה את הודעת הזכייה המופנית לשחקן המנצח
doChallenge - הפונקציה שאליה ה- BIT מתקשר כדי לנחש מספר ולהציב אתגר לשחקן
showBadGuess - מציג הודעה עם X עצום בלוח ה- LED אם אחד מהשחקנים ניחש מחוץ לטווח המותר
showLose - נקרא אם ה- BIT מנצח בסיבוב אתגר על השחקן
showMessage - מציג מסר לאתגר את השחקן לנחש מספר בטווח מוגדר
showWin - נקרא כאשר השחקן מנצח את סיבוב הניחושים על ה- BIT
שלב 5: הפעלת התוכנית ומטפלים באירועי אירועים ואירועים
ה- "on start" ו- "on shake" הם מטפלים באירועים הנקראים בהתאמה כאשר אירועי "start" ו- "shake" קורים. כפי שניתן לראות מקוד הבלוקים, מה שקורה כאשר קוראים לשני מטפלים באירועים זהים כמעט לזה של:
- הפונקציה showMessage () נקראת להציג את ההודעה כאשר המשחק מתחיל
- יש הפסקה קצרה של 650 מילי-שניות לאחר הצגת ההודעה
- נקראת הפונקציה doChallenge () שבה ה- BIT מנחש מספר ומחכה שהשחקן האנושי יגיש ניחוש
נעסוק בשתי הפונקציות בשלב הבא.
עם זאת, ישנם הבדלים מהותיים בין מטפלים באירועי "בהתחלה" ו"נענוע ":
- מטפל האירועים "בהתחלה" פועל בכל פעם שה- BIT מופעל - כמו בניתוק וחיבור מחדש של החשמל ל- BIT
- דברים מסוימים שחייבים לקרות רק פעם אחת בעת הפעלת התוכנית מוגדרים ב- "on start" ובשום מקום אחר בתוכנית כולה
- דבר כזה הוא אתחול המשתנה GAME_RANGE - במקרה זה הוא מאתחל ל -6 מה שאומר שהשחקנים יכולים לנחש מספר בין 1 ל -6
- מכיוון ש"התחלה "היא פונקציית BIT בסיסית, אין פלא שהיא נגישה מכרטיסיית התכנות הבסיסית של עורך הבלוקים.
- ה- "on shake" לעומת זאת הוא מטפל אירועים הנקרא בכל פעם שהמשתמש מספק קלט ל- BIT בצורה של טלטלה מהירה
- לכן ניתן למצוא את מטפל האירועים "on shake" בתוך הכרטיסייה תכנות קלט של עורך הבלוקים
שלב 6: הודעת ההפעלה ופונקציות האתגר
הפונקציה showMessage () הודעת ההפעלה היא פונקציה פשוטה המנקה את לוח ה- LED של BITs באמצעות פקודת מסך ברורה ומציגה הודעת גלילה המאתגרת את השחקן לנחש מספר.
כפי שניתן לראות מתוך בלוק הפונקציות showMessage, כמה חתיכות מחרוזת קבועות מצורפות יחד למשתנה GAME_RANGE כדי להציג הודעה פשוטה שאומרת:
נחשו 0 - 6!
הפונקציה doChallenge () נקראת בתחילת כל סיבוב אתגר, ולכן עושה את הפעולות הבאות כפי שניתן לראות מתוך בלוק הפונקציות doChallenge:
- מאתחל את משתנה playerGuess לאפס לפני קבלת קלט חדש מהנגן האנושי
- מאתחל את משתנה CHECK לשקר - כלומר הסיבוב עומד להתחיל ועדיין לא הגיע הזמן להשוות את המספרים שניחשו שני השחקנים
- לאחר מכן, והמשמעותי ביותר, ה- BIT בוחר מספר אקראי בתוך הטווח שהוגדר על ידי GAME_RANGE ומתעד אותו במשתנה bitGuessed
- לבסוף, לוח הלדים מואר עם סמל סימן שאלה המבקש מהשחקן האנושי להזין תשובה כתגובה לאתגר ה- BITs!
הערה
אם ערך המשתנה GAME_RANGE ישתנה כפי שנדון בשלב הקודם, המשחק שלך עשוי להיראות ולהתנהג קצת אחרת.
פונקציית ההצטרפות היא פונקציית מחרוזת וניתן לגשת אליה מהכרטיסייה תכנות טקסט של עורך הבלוקים
שלב 7: אירוע הכפתור בלחיצה - השב לאתגר ה- BITs
לאחר שסימן השאלה הגדול מופיע על מסך ה- LED של BITs, המענה לאתגר של השחקן האנושי הוא פשוט לבצע את הפעולות הבאות:
- נחשו איזה מספר ה- BIT עשוי לחשוב בין 0 ל -6
- לחץ על כפתור A כמה פעמים שהתשובה שלך היא - לדוגמה אם התשובה שלך היא 3, ואז לחץ על כפתור A 3 פעמים
ברור שלחיצה על הכפתור היא קלט משתמש ולכן מטפל האירועים "על כפתור" נגיש באמצעות הכרטיסייה תכנות קלט של עורך הבלוקים. בכל פעם שהמשתמש לוחץ על כפתור A, מטפל אירועים זה עושה את הפעולות הבאות:
- הגדל את ערך המשתנה של playerGuess ב -1 כל עוד הוא נמצא בגבול GAME_RANGE (6 במקרה זה)
- אם השחקן מגיש 7 ומעלה, הניחוש מבוטל וה- PlayerGuess מתאפס בחזרה לאפס, ובכך בעצם מבטל את הניחושים של השחקנים.
הפעולה הבאה היא הגשת המענה לאתגר, אותו נלך בשלב הבא.
שלב 8: אירוע הקלקה על כפתור B - שלח תגובה לאתגר ה- BITs
השחקן האנושי שולח את התשובה ל- BIT על ידי לחיצה על כפתור B פעם אחת. מספר שלבים מתרחשים בכפתור B "על הקלקה" באירוע ברגע שה- BIT מקבל את תשובת השחקנים כפי שמציינים סימני הקוד בתמונה:
- דגל CHECK מוגדר ל- True - אות ל- BIT להשוות את הניחוש שלו לזה של השחקנים
- הניקוד ממשיך רק אם שני השחקנים ניחשו מספרים גדולים יותר מאפס ובתוך מגבלת GAME_RANGE (של 6) ואם לא, נקראת הפונקציה showBadGuess () - שחקן הניחושים הטובים זוכה בנקודה, ושחקן הניחוש הרע מפסיד אחת!
- אם השחקנים מנחשים תואמים לזה של ה- BITs, הפונקציה showWin () נקראת - השחקן מנצח את הסיבוב הזה!
- אם לא, הפונקציה showLose () נקראת - ה- BIT מנצח בסיבוב הזה!
- בדיקה מתבצעת בסוף כל סיבוב על ידי פונקציית ה- announceWinner () כדי לראות אם אחד משני השחקנים זכה על ידי קלעת 3 נקודות - אם כן, המשחק מסתיים והמנצח הסופי יוכרז וכל הציונים וההודעות הם אִתחוּל
- ה- BIT מפעיל מחדש את המשחק על ידי הנפקת אתגר על ידי קריאה לפונקציית doChallenge () ומחכה שהשחקן יגיב והתהליך חוזר על עצמו
נדון בפונקציות החדשות בשלבים הבאים.
לַחֲכוֹת! איך אתה מנחש אפס?
- אם אתה מסתכל על הפונקציה מתמטיקה אקראית (), אתה יכול לראות שהערך ההתחלתי שלה מוגדר לאפס ולא ניתן לשנותו.
- לכן ה- BIT חופשי לנחש אפס ולאתגר את השחקן כתוצאה ממגבלה זו
- באופן דומה, השחקן האנושי יכול להגיש ניחוש אפס על ידי לחיצה על כפתור B מבלי ללחוץ על כפתור A תחילה!
- אם זה מותר אז השחקן האנושי לא צריך להתאמץ לשחק וזה לא הגיוני!
- לכן, מגבלה זו פוצה על ידי Bullet #2. נדון לעיל
שלב 9: הרווח/הפסיד ושאר הפונקציות
כל הפונקציות הללו נקראות על ידי כפתור B "על קליק" מטפל באירועים כפי שניתן לראות בשלב הקודם.
פונקציות אלה די פשוטות וברגע זה אתה אמור להכיר את אופיו האינטואיטיבי והנרטיבי של הקוד שנוצר על ידי שילוב של משתנים בעלי שם מתאים והתכונות החזותיות של עורך הבלוקים.
- הפונקציה showWin () מציגה הודעה המציינת כי השחקן ניצח בסבב האתגר הזה ומגדיל את משתנה PLAYER_SCORE ב -1
- באופן דומה, הפונקציה showLose () מציגה שהשחקן ניחש לא טוב ומעניק נקודה ל- BIT על ידי הגדלת המשתנה BIT_SCORE ב- 1
- הפונקציה showBadGuess () מציגה X גדול על המסך המציין כי אחד השחקנים ניחש ניחוש גרוע (של 0 או יותר מ -6) - השחקן הרע במקרה זה מאבד נקודה, והשני קולע נקודה!
ולבסוף, הפונקציה announceWinner () מבצעת את משימת ההכרזה מי הזוכה הגדול לאחר 3 סבבי אתגר/תגובה ואחריה:
- איפוס משתני הציון PLAYER_SCORE ו- BIT_SCORE
- עצירה קצרה והתחלת משחק חדש באמצעות התקשרות לפונקציית ההפעלה showMessage () שנדונה בשלב הקודם (6) של IBLE זה
לבסוף, הלאה לסימולטור והקוד!
שלב 10: הסימולטור והקוד
הקוד פועל בסימולטור המקוון שנמצא כאן
- הסימולטור ממוקם בפינה השמאלית התחתונה של הדף
- לחלופין, ניתן להשתמש בלחצן הורד להורדת הקוד למקרה שיש לך מיקרוביט בידי שימושי
- כפי שצוין בתחילת ה- IBLE, אינך צריך מיקרוביט של BBC כדי לבנות את הקוד בעורך הבלוקים או לדמות ולבדוק את הקוד שלך, אם כי זה לא עובד עבור אנשים סקרנים כמוני!
הערה על כפתור העריכה
- אם שמת לב, הקוד נמצא ברשות הציבור ויש דרך לערוך אותו באמצעות כפתור העריכה בפינה השמאלית העליונה
- עם זאת, אני מבקש בכנות שתעשה עותק של קוד זה ותשנה אותו כך שיתאים לצרכיך כך שהגרסה המקורית תישמר לטובת IBLE זה.
תודה! וקידוד שמח !!!:-)
מוּמלָץ:
משחק ניחושים פשוט - פייתון + XBees + ארדואינו: 10 שלבים
משחק ניחושים פשוט - פייתון + XBees + ארדואינו: כך פועל המשחק: יש לך 4 ניסיונות לנחש אות בין 'a' - 'h' - > נחשו את האות הנכונה: אתם מנצחים! ?-> נחשו את האות הלא נכונה: המשחק נגמר?-> נחשו כל דמות אחרת מחוץ ל- 'a' - 'h': המשחק נגמר? הארדואינו שלכם יאפשר לכם
מדוד את מהירות הרוח בעזרת מיקרו: ביט ומעגלי הצמד: 10 שלבים
מדוד את מהירות הרוח בעזרת מיקרו: ביט ומעגלי הצמד: סיפור כשבעלי ואני עבדנו על מד -מד של מזג אוויר, החלטנו להרחיב את הכיף באמצעות תכנות. מהו מד רוח? כנראה שאתה שואל מה " מד -מד " הוא. ובכן, זהו מכשיר המודד את הרוח
צרו משחק תלת ממד במחשב בעזרת Coppercube: 5 שלבים
צרו משחק תלת ממד במחשב באמצעות קופרקוב: עשיתי משחק בקוביית נחושת! בזה תלמדו כיצד להכין משחק בקוביית נחושת או כל תוכנה אחרת. תפגשו אותי גם בהנחיות אחרות! עכשיו עקבו אחריי ובואו נכין משחק במחשב עם קוביית נחושת
משחק ניחושים בפייתון: 9 שלבים
משחק ניחושים בפייתון: ההנחיות הבאות מספקות הדרכה שלב אחר שלב כיצד לכתוב תוכנית באמצעות המודול האקראי ויצירת משחק ניחושים המתקשר עם המשתמש. כדי להתחיל, יהיה עליך להתקין פייתון במחשב שלך וגם לפעול
צרו אופוטוקולר פשוט: 4 שלבים
צור אופטוקופלר פשוט: בעבודה מאוחרת בערב אחד בניסיון לבנות טריגר של זמן לשגות למצלמה שלי, הבנתי שאין לי מכשירי אופטוקולר בפח החלקים שלי. החנות האלקטרונית שלי הייתה סגורה למשך הלילה, אז מה לעשות? להיות האקס -רדיס הגאוני שאני (לדעתי, אתה