แหล่งรวมเกม Microbit ที่มีความน่าสนใจ และเหมาะสำหรับผู้เริ่มต้น
การสร้างเกมด้วย Microbit สามารถเสริมพัฒนาการทักษะด้าน Conding ให้กับน้อง ๆ ได้อย่างดี เนื่องจากการทำโปรเจกต์ Microbit ช่วยให้น้อง ๆ ได้ฝึกคิด วิเคราะห์ แก้ไขปัญหาอย่างเป็นระบบพร้อมทั้งได้ลงมือปฏิบัติในทุก ๆ ขั้นตอนด้วยตนเอง ประกอบกับการเรียนรู้ Microbit มักจะเป็นการสร้างเกม ทำให้น้อง ๆ รู้สึกเกิดความน่าสนใจในการเรียนรู้ โดยการเรียนรู้ Microbit นั้นเหมาะสำหรับผู้เริ่มต้นหรือผู้ที่กำลังเรียนเนื้อหาเกี่ยวกับการ Coding ในขั้นพื้นฐาน เพราะเป็นการเรียนรู้ Coding ในรูปแบบ Block Programming นั่นเอง
นอกจากการเรียนรู้ผ่าน Microbit แล้วนั้น ยังมีการเรียนรู้ Coding พื้นฐานด้วย Scratch และ Python ที่สามารถฝึกฝนทักษะการแก้ปัญหาอย่างเป็นระบบตามหลักการคิดเชิงวิทยาการคำนวณที่สำคัญ และยังสามารถสนุกไปพร้อมกับการเรียนรู้ในเนื้อหาที่มีสาระไปด้วยกันได้ ซึ่งจะเป็นการสร้างเสริมประสิทธิภาพในการเรียนรู้ให้กับน้อง ๆ ได้เป็นอย่างดี
รายชื่อเกมที่มีความน่าสนใจ และเหมาะกับการฝึกฝน Microbit เบื้องต้น
ในวันนี้ทาง Code Genius ได้รวบรวมเกมที่น้อง ๆ สามารถทำได้ง่าย ๆ ด้วย Microbit สามารถนำไปเล่นกับเพื่อน ๆ ได้ง่าย ๆ เป็นการสร้างโปรเจกต์ Microbit สำหรับผู้เริ่มต้น ซึ่งทาง Code Genius ได้คัดมาให้สำหรับผู้ที่สนใจทั้งหมด 5 เกม ดังนี้
1. เกม Dice Game
Dice Game เป็นโปรเจกต์สร้างลูกเต๋า ซึ่งสามารถนำลูกเต๋าไปต่อยอดในการเล่นเกมได้หลายเกม โดยการใช้เพื่อทอยให้ได้แต้มบนหน้าลูกเต๋าแล้วนำมาใช้ต่อโดยเราสามารถสร้างลูกเต๋าจาก Micro:bit ได้ดังนี้
หลักการทำงาน และ วิธีการเล่นเกม Dice Game
1. สร้างตัวแปร Dice โดยการกด Make a Variable… ในกลุ่มบล็อกคำสั่ง Variables
2. นำบล็อกคำสั่ง set Dice to 0 มาใส่ในบล็อกคำสั่ง on shake ที่อยู่ในกลุ่มบล็อกคำสั่ง input
3. นำบล็อกคำสั่ง pick random จากกลุ่มบล็อกคำสั่ง Math มาแทนที่ 0 ในบล็อกคำสั่ง set Dice to 0 โดยให้ random จาก 1 ถึง 6 เนื่องจากแต้มบนหน้าลูกเต๋ามี 1 ถึง 6
4. สร้างเงื่อนไขเพื่อให้ Micro:bit แสดงแต้ม โดยนำบล็อกคำสั่ง show leds มาใช้แสดงแต้ม
- ทักษะที่ได้
1. System Thinking : ได้ฝึกการวางแผนและ Coding อย่างเป็นระบบและเป็นขั้นเป็นตอน
2. Algorithm Design : ได้ฝึกการสร้าง Algorithm ด้วยตัวเองเพื่อสร้างโปรแกรมบน Microbit สามารถพัฒนาแนวทางแก้ปัญหาอย่างเป็นขั้นเป็นตอน หรือสร้างหลักเกณฑ์ขึ้นมาเพื่อดำเนินตามทีละขั้นตอนในการแก้ไขปัญหา
3. Debugging : ได้ฝึกการมองหาข้อผิดพลาดของโปรแกรมและสามาร Debug โปรแกรมได้
- สามารถเข้าไปดู script คำสั่งเพิ่มเติม หรือทดลองเล่นได้จากลิงก์ : https://makecode.microbit.org/S93571-68271-89666-61367
2. เกม Rock Paper Scissors
Rock Paper Scissors เป็นโปรเจกต์หรือเกมที่สร้างเกมเป่ายิงฉุบ ที่สามารถแจ้งผลแพ้ชนะได้ด้วยการส่งสัญญาณคลื่นวิทยุ จาก Micro: bit เพื่อนำไปเล่นกับเพื่อน ๆ โดยมีขั้นตอนการสร้าง ดังนี้
หลักการทำงาน และ วิธีการเล่น Rock Paper Scissors
1. กำหนดให้เมื่อกดปุ่ม A แล้ว Micro: bit จะแสดงตัวเลขเพิ่มทีละ 1 ดังนี้
– สร้างตัวแปร choose ที่ variable
– เลือก make a variable จากนั้นตั้งชื่อตัวแปร เช่น choose และเลือก OK
– Code เพื่อให้กดปุ่ม A ของ Micro: bit แล้วตัวเลขเพิ่มทีละ 1 ดังภาพ
– กำหนดเงื่อนไขให้เมื่อกดปุ่ม A แล้วแสดงตัวเลขวนจาก 1 -> 2 -> 3 -> 1 -> 2 -> 3 ไปเรื่อย ๆ ดังภาพ (1, 2, 3 เทียบได้กับ 1 คือค้อน 2 คือกระดาษ และ 3 คือกรรไกร)
2. สร้าง function เพื่อแทนค่า 1 เป็นค้อน 2 เป็นกระดาษ 3 เป็นกรรไกร
– สร้าง function RockPaperScissors (หรือชื่ออื่นสั้น ๆ) โดยเลือกที่ Advance 🡪 Functions 🡪 Make a Functions
– ตั้งชื่อ Function แล้วกดที่ Number จากนั้นกดที่ปุ่ม Done สีเขียว จะได้ Function มา
– Code ให้ function ทำงาน เพื่อแทนค่า 1 เป็นค้อน 2 เป็นกระดาษ 3 เป็นกรรไกร ใช้คำสั่ง if else โดยกดที่ปุ่มเครื่องหมาย + สองครั้งและกดปุ่มเครื่องหมาย – ด้านล่างหนึ่งครั้งจนได้ if – else if – else if จากนั้นนำคำสั่ง num ด้านบนมาใส่ใน if แต่ละอัน ดังภาพ
3. กำหนดให้เรียกใช้ Function นี้เมื่อที่กดปุ่ม A
– นำ show number choose ออกไป
– เลือกคำสั่ง call RockPaperScissors แล้วใส่ตัวแปร choose ลงไป ดังภาพ
4. กำหนดให้เมื่อกดปุ่ม B แล้วทำการส่งค่าตัวเลข 1, 2 หรือ 3 ไปยังผู้เล่นคนอื่น
– ที่ on start เพิ่ม radio set group ลงไป (กำหนดตัวเลขให้ตรงกันกับผู้เล่นอื่น)
– กำหนดให้ปุ่ม B เป็นการกดเพื่อส่งสัญญาณตัวเลข
5. เมื่อผู้เล่นอื่นส่ง Radio มา ให้แสดงตัวเลขบน Micro: bit เราด้วย
– เลือก receivedNumber มาใส่ใน show number ดังภาพ
6. สร้าง Function ที่ชื่อว่า check เพื่อตรวจสอบผลแพ้ชนะในการเป่ายิงฉุบ
7. เรียกใช้ Function Check เมื่อได้รับสัญญาณ radio โดยเอา show number received number ออก และใส่ function Check เข้าไปแทน
8. ส่งตัวเลขที่เราเลือก ไปให้เพื่อนเช่นเดียวกัน และจะต้องใส่ reset เพื่อป้องกัน infinity loop (วนซ้ำไม่หยุด) ด้วย ดังภาพ
- ทักษะที่ได้
1. Algorithm: สร้างโปรแกรมที่ประกอบด้วย การจัดลำดับ (Sequences), เหตุการณ์ (Events), การทำซ้ำ (Loops) และ เงื่อนไข (Conditions)
2. Decomposition: ได้แยกแยะปัญหาใหญ่ออกเป็นปัญหาย่อย
- สามารถเข้าไปดู script คำสั่งเพิ่มเติม หรือทดลองเล่นได้จากลิงก์ : https://makecode.microbit.org/S02219-80186-36427-17488
3. เกม Snap the Dot
Snap the Dot เป็นเกมที่ให้เราพยายามกดปุ่ม A เมื่อจุดบนหน้าจอ Micro:bit เคลื่อนที่มาอยู่กลางจอ โดยมีขั้นตอนการสร้าง ดังนี้
หลักการทำงาน และ วิธีการเล่น Snap the Dot
1. Create a Dot
– ไปที่แท็บ Game แล้วลาก create sprite at x:2 y:2 ออกมา
– ไปที่ Variable แล้วลากบล็อก set ออกมา นำ create เมื่อสักครู่มาใส่
2. Move the Dot
– การกระทำนี้จะ Loop ตลอดเวลาตาม Flowchart ย่อย จึงอยู่ใน forever
– ขยับ Dot ทีละช่องไปเรื่อย ๆ
– ปรับความเร็วในการขยับด้วยบล็อก pause ยิ่งเลขมากยิ่งขยับช้า (แต่จะลดความยากลง)
– หากชนขอบ ให้ Bounce (เด้งกลับ)
3. A button press: สร้างเหตุการณ์เมื่อผู้เล่นกดปุ่ม A ที่ Micro: bit
– ที่แท็บ input จะเจอบล็อก on button A pressed
– นำ if else ที่ Logic มาใส่ แล้วตรวจสอบว่า ถ้าค่า x (แนวนอน) ของ Dot อยู่ที่ 2 ตอนกด A ให้เพิ่มคะแนน แต่ถ้าไม่ใช่ให้ Game Over
- ทักษะที่ได้
1. Logical Thinking: สามารถสร้างโปรแกรมที่มีการตรวจสอบเงื่อนไขได้
2. Event Trigger: เข้าใจแนวคิดเบื้องต้นเกี่ยวกับการตรวจจับเหตุการณ์ในเกม
3. Coordinate: เข้าใจการใช้งานพื้นที่แบบ 2 มิติ
- สามารถเข้าไปดู script คำสั่งเพิ่มเติม หรือทดลองเล่นได้จากลิงก์ : https://makecode.microbit.org/S63607-32125-06795-37851
4. เกม Tilt it
Tilt it เป็นเกมเก็บของจากการ Coding ด้วย Micro: Bit โดยมีวิธีการเล่นด้วยการเอียงบอร์ดเพื่อไปเก็บของ มีการจับเวลาและแจ้งคะแนนหลังเล่นจบ โดยมีขั้นตอนการสร้าง ดังนี้
หลักการทำงาน และ วิธีการเล่น Tilt it
1. Set ค่าเริ่มต้นต่าง ๆ
– ไปที่ Variable สร้างตัวแปร Player (ตัวผู้เล่น) และ Object (ของที่จะไปเก็บ) โดยกดที่ Make a Variable
– หน้าจอของ Micro: Bit จะเป็นจุด กว้าง 5 ยาว 5 โดยพิกัดของบนมุมซ้ายจะเป็น x = 0 (แนวนอน) และ y = 0 (แนวตั้ง) ทำให้จุดตรงกลางของจอจะเป็น x = 2 และ y = 2 กำหนดให้มีจุดสำหรับ Player และ Object ขึ้นมาก่อน โดยเอาไว้ตรงกลางจอได้ (บล็อก create sprite นำมาจาก Game โดยการกดที่ Advanced จึงจะเจอ)
– ตั้งค่าให้ตัว Object (ของที่จะไปเก็บ) มีความต่างจากตัว Player (ตัวผู้เล่น) เพื่อให้แยกออกว่าตัวไหนเป็นตัวไหน โดยจะตั้งให้ Object กระพริบ และมีแสงที่จางลง (บล็อก set นำมาจาก Game [sprite] set [x] to 0 แล้วเปลี่ยนให้เป็นแบบในรูป)
– ทำให้ตัว Object ไปปรากฏในตำแหน่งสุ่มของหน้าจอ ต้อง set ทั้ง x และ y ให้อยู่ในตำแหน่ง random ระหว่าง 0-4 คือพื้นที่ที่เป็นไปได้ทั้งหมดของหน้าจอ (บล็อก pick random นำมาจาก math)
2. Controller Code การควบคุมเกม
– การควบคุมเกม ตัวบอร์ด Micro: Bit จะใช้ senser ในการตรวจสอบ action ของผู้เล่นอยู่ตลอดเวลา ดังนั้น code ส่วนนี้จะถูกรันอยู่ใน forever block
– เอียงซ้ายขวา กำหนดค่า x เอียงบนล่าง กำหนดค่า y
(tilt และ logo นำมาจาก input -> is [shake] gesture แล้วเปลี่ยนจาก shake เป็น tilt หรือ logo)
– ทดลองเอียงเล่นดูในตัวจำลอง จะพบว่า Player ขยับเร็วไป ให้ใช้ pause นำไปไว้ใน Loop
100 – 150 กำลังดี โดย 1000 = 1 วินาที
3. Condition เมื่อ Player จับ Object ได้
– ตั้งค่าเริ่มต้น ให้คะแนนเริ่มต้นที่ 0 (หาจาก Game)
– เราจะแยก Process เพื่อให้เข้าใจง่ายขึ้น โดยใช้ Forever อันใหม่ หาได้จาก Basic
– นำ if มาใส่เพื่อสร้างเงื่อนไขการ detect ว่า Player ชนกับ Object แล้วให้เพิ่มคะแนน
– เมื่อชนแล้ว นอกจากได้คะแนน ตัว Object จะต้องย้ายตำแหน่งแบบสุ่มด้วย
4. ตั้งระยะเวลาในการเล่น
– ที่ On start ใส่ start countdown (ms) 15000 จะได้เวลา 15 วินาทีต่อการเล่น 1 ครั้ง สามารถปรับตัวเลขได้ตามต้องการ โดย 1000 = 1 วินาที
– เมื่อหมดเวลา เกมจะแสดงคำว่า Game Over ต่อด้วยแสดงคะแนนทีได้
- ทักษะที่ได้
1. Coordinate: มีทักษะในการเขียนโปรแกรมที่เกี่ยวข้องกับพิกัด 2 มิติ (x,y)
2. Condition: มีทักษะในการเขียนโปรแกรมที่มีการสร้างเงื่อนไขแพ้ชนะจากเหตุการณ์ได้
3. Project Based: ได้เรียนรู้การ Coding ผ่านการสร้าง Mini Project
- สามารถเข้าไปดู script คำสั่งเพิ่มเติม หรือทดลองเล่นได้จากลิงก์ : https://makecode.microbit.org/S42248-57005-01274-33240
5. เกม Space Invaders
Space Invaders เป็นเกมที่ยิงศัตรูที่เคลื่อนที่ โดยใช้ Micro:bit ในการสร้าง โดยมีวิธีการเล่นคือกดปุ่มเพื่อขยับตัวละครไปซ้ายขวา แล้วยิงศัตรูที่เคลื่อนที่เข้ามาเพื่อให้ได้คะแนน โดยมีขั้นตอนการสร้าง ดังนี้
หลักการทำงาน และ วิธีการเล่น Space Invaders
1. การสร้างยานรบของผู้เล่น
– สร้าง Variable (อาจชื่อ Ship) จากนั้นนำบล็อก set (สีแดง) ตามภาพมาใส่ใน on start
– จากนั้นไปที่ Advanced แล้วจะเจอแท็บ Game (สีเขียว) นำ create sprite at x y มาใส่แทนเลข 0 แล้วเปลี่ยนค่า x เป็น 2 และ y เป็น 4 เพื่อให้ยานเกิดที่ x=2, y=4 ให้ดูที่ simulator (ตัวจำลอง Micro: bit จุดสีแดงคือตำแหน่ง x=2, y=4)
2. สร้างการควบคุมให้ยานเคลื่อนที่ซ้ายขวา ตาม script ดังรูป
3. การยิงกระสุน
– สร้าง Variable (อาจชื่อ Shoot) แล้ว set จุดเกิดของกระสุน
– เมื่อกด A+B กระสุนจะไปเกิดที่ตำแหน่งเดียวกับ Ship ให้นำ sprite x มาใส่ แล้วเปลี่ยนเป็น ship ทั้ง x และ y
– ตั้งค่าให้ Shoot มีค่าความสว่าง 80 เพื่อให้มองเห็นได้ง่าย แตกต่างจากตัวอื่น
– ทำให้กระสุนพุ่งไปข้างบน โดยกระสุนจะเกิดด้านล่างเสมอ ดังนั้นกระสุนจะเลื่อนขึ้นได้ 4 ครั้งแล้วจะสุดขอบบน ให้ทำการ repeat 4 แล้วเปลี่ยนค่า y ของ Shoot หากลองกดดูแล้วกระสุนพุ่งเร็วเกินไป ให้ใช้ pause มาช่วยทำให้ช้าลง
– เมื่อลองยิงดูแล้วจะเห็นว่ากระสุนไปค้างอยู่บนสุดไม่ยอมหายไป ใช้ script ดังรูป เพื่อให้กระสุนจะหายไป (ตำแหน่งบนสุดคือค่า y เป็น 0 หากถึงตำแหน่งนี้ให้กระสุนหายไป)
4. สร้างยานรบศัตรู
– สร้าง Variable (อาจชื่อ Enemy) set จุดเกิดให้อยู่แถวบนสุดเสมอ (y = 0) แต่ x ให้ random ตั้งแต่ 0 – 4 แล้วตั้งค่าความสว่างประมาณ 150 พร้อมกับ pause ประมาณ 200 เพื่อให้ปรากฏตัวแล้วค้างไว้ก่อนเล็กน้อย Code ของ Enemy จะอยู่ใน forever เพราะจะปรากฏตัวขึ้นมาเองเรื่อย ๆ
– Enemy จะพุ่งลงมาข้างล่าง ให้ทำคล้ายกระสุน แต่เปลี่ยนค่าให้กลายเป็นลง แล้ว pause ให้เคลื่อนที่ช้ากว่ากระสุน
– ถ้า Enemy ลงมาจนถึงล่างสุดแล้ว ให้ Enemy หายไปได้โดยใช้ script ดังรูป (เมื่อ Enemy ลงมาจนถึง Y = 4 แล้ว จึงทำให้ Enemy หายไป)
5. Game Over
– เพิ่มเติมบล็อกคำสั่ง เพื่อให้ Game over
6. Get score
– เพิ่มเติมบล็อกคำสั่ง เพื่อให้ Get score
– ตอนเริ่มเกมให้ตั้งคะแนนเป็น 0 ก่อนด้วย ให้นำ set score 0 ไปใส่ใน on start
- ทักษะที่ได้
1. Algorithm: สามารถลำดับความคิดแล้วแสดงออกมาผ่านการ Coding
2. Decomposition: สามารถแบ่งปัญหาใหญ่ออกเป็นปัญหาย่อยได้
3. Logical Thinking: สามารถสร้างเงื่อนไขการให้คะแนนและการจบเกมได้
- สามารถเข้าไปดู script คำสั่งเพิ่มเติม หรือทดลองเล่นได้จากลิงก์ : https://makecode.microbit.org/S21429-05112-93319-27784
สรุป
การสร้างเกมด้วย Microbit ที่ทาง Code Genius คัดมานี้หากน้อง ๆ ลองฝึกเรียนรู้และนำเกมเหล่านี้ไปเรียนรู้วิธีการสร้างด้วยตนเอง จะทำให้น้อง ๆ เกิดทักษะการคิดแก้ไขปัญหาอย่างมีเหตุผล มีการลำดับขั้นตอนที่ถูกต้อง การสร้างเกมด้วย Microbit นี้ช่วยให้น้อง ๆ รู้พื้นฐานการ Coding ที่จะสามารถนำไป ต่อยอดการเขียนโปรแกรมที่มีการประยุกต์ใช้ที่ซับซ้อนได้มากยิ่งขึ้น น้อง ๆ ยังจะได้ประสบการณ์ในด้านความคิดสร้างสรรค์และได้รู้จักการใช้อุปกรณ์ผ่านการได้ทดลองสร้างโปรเจกต์ต่าง ๆ ด้วยตนเอง
นอกจากการเรียนรู้ Coding ด้วย Microbit แล้วการเรียนรู้ Coding พื้นฐานในการป้อนคำสั่งรูปแบบ Block Programming ยังสามารถเรียนรู้ได้ผ่านการสร้างเกม scratch และ เกม Python ซึ่งมีความสนุกสนาน กระตุ้นการเรียนรู้ของน้อง ๆ ได้อย่างมีประสิทธิภาพไม่แพ้ Microbit เลยทีเดียว
สำหรับผู้ที่สนใจสร้างผลงานรูปแบบใหม่ ๆ ด้วย Microbit
สำหรับน้อง ๆ ที่สนใจ หรืออยากสร้างผลงานใหม่ ๆ โดยเรียนรู้ผ่าน Microbit สามารถติดต่อมาที่โรงเรียนของเราได้เลยที่ Code Genius เรามีหลักสูตร Microbit / Genius Innovator ที่การเรียนรู้ coding จะเป็นในรูปแบบ Block Base Programming ซึ่งจะเหมาะกับอายุของน้อง ๆ มากกว่าการเรียนรู้ในรูปแบบ Text-Base Programming ที่จะเน้นการพิมพ์คำสั่ง โดยเนื้อหาจะเน้นการทำ Project หรือที่เรียกว่า Project-base learning ซึ่งในหนึ่งคาบสอนผู้เรียนจะได้เรียนรู้คำสั่งต่าง ๆ หลังจากนั้นจะนำคำสั่งที่เรียนรู้นำมาประยุกต์ให้เป็น Project ที่ใช้ได้จริง เช่น เกมส์ เข็มทิศ อุปกรณ์วัดความเข้มแสง และ Pedometer, Fruit Keyboard เป็นต้น