แจกวิธีทำเกมไดโนเสาร์บน Scratch

เกมไดโนเสาร์ที่ทุกคนคุ้นเคย เปิดตัวในช่วงปี 2014 ที่มีจำนวนผู้ใช้งานกว่า 270 ล้านคนทั่วโลก และแน่นอนว่าเราสามารถใช้ Scratch ในการสร้างเกมไดโนเสาร์กระโดดได้เช่นกัน ทำยังไงมาดูกันได้เลยครับ
Avatar photo Songklod Saengvoratip | March 2, 2024
แจกวิธีทำเกมไดโนเสาร์บน Scratch

ทุกคนเคยเห็นเกมไดโนเสาร์หน้าตาแบบนี้บ้างไหมครับ

ใช่แล้วครับ นี่คือเกมไดโนเสาร์กระโดดจาก Google นั่นเองครับ และสถานการณ์ส่วนใหญ่ที่ทำให้พบเจอน้องไดโนเสาร์ตัวนี้คือช่วงเวลาที่เราเข้าโปรแกรม Google Chrome ในช่วงที่ไม่มีอินเตอร์เน็ตนั่นเอง ซึ่งจริงๆแล้วเราสามารถเข้าเล่นเกมนี้ได้เลยโดยไม่ต้องรอให้อินเตอร์เน็ตมีปัญหาครับ
( สามารถคลิกที่ลิ้งก์นี้ได้เลยครับ chrome://dino )

เราใช้ Scratch มาทำเกมไดโนเสาร์กระโดด ได้เหมือนกัน Code อยู่ข้างล่าง

มาทำความรู้จักเกมไดโนเสาร์ให้มากขึ้นกัน

เกมไดโนเสาร์นี้เปิดตัวครั้งแรกช่วงปี 2014 โดย Google ในวาระครบรอบ 10 ปีของโปรแกรม Google Chrome ครับ โดยในช่วงแรกที่เกมนี้ถูกปล่อยออกมามีจำนวนผู้ใช้งานกว่า 270 ล้านคนทั่วโลกเลยทีเดียว ซึ่งผู้พัฒนาได้ให้สัมภาษณ์ว่าแนวคิดในการนำไดโนเสาร์มาเป็นตัวละครเอกของเกมนั่นคือ การเปรียบเปรยการที่อินเตอร์เน็ตหลุด หรือ ล่มนั้น ไม่ต่างกับโลกในยุคไดโนเสาร์ เพราะว่าในยุคนั้นยังไม่มีเทคโนโลยีการสื่อสารใดๆเกิดขึ้นบนโลกนั่นเอง ในส่วนของตัวละครมีรูปแบบเป็น Pixel art เพราะต้องการให้สอดคล้องกับการแจ้งเตือนของโปรแกรม Google Chrome เวลา Error นั่นเอง
รูปแบบของเกมนี้คือ “An Endless Runner Game” นั่นหมายถึงเกมที่วิ่งไปเรื่อยๆไม่มีวันจบ แต่ถึงแม้จะใช้คำว่า Endless Game แต่ผู้พัฒนายังมีการทิ้งท้ายไว้อีกว่า

” We built it to max out at approximately 17 million years, the same amount of time that the T-rex was alive on Earth… but we feel like your spacebar may not be the same afterwards.”

ถ้าให้เข้าใจง่ายๆคือ เกมนี้ใช้เวลาเล่น 17 ล้านปีตามจำนวนปีที่ไดโนเสาร์ไทรันโนซอรัสอยู่บนโลกเกมนี้ถึงจะจบครับ
(= =”)
ที่มา : As the Chrome dino runs, we caught up with the Googlers who built it (blog.google)

เรามาลองสร้างเกม Running Dinosaur กันดีกว่า

วันนี้จะพาทุกคนมาสร้างเกม Running Dinosaur กันครับ โดยเราจะสร้างบนโปรแกรม Scratch ซึ่งสามารถเข้าใช้งานได้ฟรี! ผ่านลิ้งก์นี้เลยครับ Scratch – Imagine, Program, Share (mit.edu)

สามารถอ่านบทความเรื่อง Scratch ได้ที่ Scratch เรียนรู้โค้ดดิ้งอย่างง่าย สร้างสรรค์ได้ไม่รู้จบ

เรามาดูส่วนประกอบของเกม และบล็อกคำสั่งที่ใช้ในการเขียนโค้ดกันครับ

Running Dinosaur

แนะนำส่วนประกอบของเกม

เวที (Stage)

ตัวละคร (Sprite)

T-Rex

Costume: ตัวละครนี้มีชุดอยู่ 4 ชุดด้วยกัน เพื่อใช้ในการสร้างท่าทางให้กับของไดโนเสาร์ (ดังภาพด่านล่าง)
สามารถเข้าไปตกแต่งรูปไดโนเสาร์ได้ตามใจชอบในส่วนของ Costume ดังภาพ

Cactus

Costume: ตัวละครนี้มีชุดอยู่ 6 ชุดด้วยกัน เพื่อใช้สร้างความหลากหลายให้กับสิ่งกีดขวาง และเพิ่มท้าทายให้กับผู้เล่นจากขนาดของชุดตัวละครที่มีความกว้างและ ความสูงที่ไม่เท่ากัน

เริ่มต้นเขียนโปรแกรมให้กับเกมของเรากัน

ชุดคำสั่งสำหรับตัวละคร T-Rex

1. ชุดคำสั่งสำหรับการตั้งค่าตัวละคร

  1. เมื่อกดธงเขียว
  2. แสดงตัวบนเวที
  3. กำหนดขนาดที่ 80%
  4. ไปที่ตำแหน่ง x = -165, y = -110
  5. เปลี่ยนชุดเป็น T-rex
  6. วนซ้ำคำสั่งต่อไปนี้ตลอดเวลา => คำสั่งต่อไปนี้ทำให้ตัวละครแสดงผลเป็นท่าทางกำลังวิ่งอยู่ตลอดเวลา
    • เปลี่ยนชุดเป็น T-rex run1
    • รอ 0.1 วินาที
    • เปลี่ยนชุดเป็น T-rex run2
    • รอ 0.1 วินาที

      note : ระยะเวลาที่ใส่ในบล็อกคำสั่ง wait for seconds สามารถปรับเปลี่ยนได้ตามใจชอบตัวเลขยิ่งน้อยตัวละครยิ่งเปลี่ยนชุดเร็ว


2. ชุดคำสั่งควบคุมตัวละครไดโนเสาร์

(ในการสร้างคำสั่งต่อไปนี้จะไม่ได้ใช้บล็อกคำสั่ง When this sprite clicked เพราะว่าทีมงานต้องการให้ คลิกตรงจุดไหนก็สามารถทำให้ตัวละครกระโดดได้ ไม่จำเป็นต้องคลิกที่ตัวละครเท่านั้น)

  1. เมื่อกดธงเขียว
  2. วนซ้ำคำสั่งต่อไปนี้ตลอดเวลา => เพื่อให้เกิดการตรวจสอบการคลิกตลอดเวลา
    • ถ้าเมาส์ถูกคลิก => คำสั่งต่อไปนี้ทำให้ตัวละครกระโดดขึ้นและ กลับลงมายืนบนพื้น
      • เล่นเสียง Jump
      • วนซ้ำคำสั่งต่อไปนี้ 14 ครั้ง
      • เปลี่ยนค่า Y ทีละ 10 หน่วย
      • วนซ้ำคำสั่งต่อไปนี้ 14 ครั้ง
      • เปลี่ยนค่า Y ทีละ -10 หน่วย


        note : ระยะเวลาที่ใส่ในบล็อกคำสั่ง wait for seconds สามารถปรับเปลี่ยนได้ตามใจชอบตัวเลขยิ่งน้อยตัวละครยิ่งเปลี่ยนชุดเร็ว


3. ชุดคำสั่งตรวจสอบการสัมผัสของตัวละคร

สร้างคำสั่งตรวจสอบการสัมผัสถูกตัวละคร Cactus เพื่อสร้างความสนุกให้กับเกม

  1. เมื่อกดธงเขียว
  2. วนซ้ำคำสั่งต่อไปนี้ตลอดเวลา => คำสั่งตรวจสอบการสัมผัสตลอดเวลา
    • ถ้าสัมผัสตัวละคร Cactus
      • หยุดการทำงานคำสั่งอื่นๆของ ตัวละครนี้
      • เปลี่ยนชุดเป็น T-rex Touch
      • เล่นเสียง hit จนกว่าจะจบ
      • สิ้นสุดการทำงานทั้งหมด

ชุดคำสั่งสำหรับตัวละคร Cactus


1. ชุดคำสั่งตั้งค่าตัวละคร

  1. เมื่อกดธงเขียว
  2. ซ่อนตัว
  3. กำหนดขนาดที่ 80%
  4. ไปที่ชิ้นงานหลังสุด
  5. ไปที่ตำแหน่ง x = 240, y = -120
  6. รอ 1 วินาที
  7. วนซ้ำคำสั่งต่อไปนี้ตลอดเวลา
    • แสดงตัว
    • เปลี่ยนตำแหน่ง x ทีละ -5
    • ถ้าตำแหน่ง x น้อยกว่า -200 => คำสั่งต่อไปนี้จะตรวจสอบตำแหน่งของตัวละครเพื่อทำการกลับสู่ตำแหน่งเริ่มต้น
      • ซ่อนตัว
      • เปลี่ยนชุดถัดไป
      • ไปที่ตำแหน่ง x = 240, y = -120

ชุดคำสั่งสำหรับเวที (Stage)

1. ชุดคำสั่งตั้งค่าเกม

  1. เมื่อกดธงเขียว
  2. กำหนดค่าตัวแปร score เป็น 0
  3. เลือกฉากหลักเป็น Land
  4. วนซ้ำคำสั่งต่อไปนี้ตลอดเวลา
    • กำหนดค่าตัวแปร score เป็น round timer => คำสั่งนี้เราจะนำตัวแปร timer ที่โปรแกรมมีให้มาใช้เป็นคะแนนให้กับผู้เล่น
    • ถ้าตัวแปร score > ตัวแปร high_score => คำสั่งนี้ทำให้เกิดการบันทึกสถิติคะแนนสูงสุดที่ทำได้
      • กำหนดค่าตัวแปร high_score เป็น score
    • ถ้าตัวแปร score > 0 และตัวแปร score mod 10 = 0 => คำสั่งต่อไปนี้จะทำให้เกิดการเล่นเสียงเตือนผู้เล่นทุกๆ 10 คะแนน
      • เล่นเสียง reach จนกว่าจะจบ
      • รอ 1 วินาที

สามารถ Share Project ได้ที่ https://scratch.mit.edu/projects/973190595