๐ŸŽฏ Tujuan ๐Ÿ”„ Game Loop & State ๐Ÿ‘พ Scratch & Python Game ๐ŸŽฎ Number Guessing Lab ๐Ÿ“ Evaluasi Formatif โœจ Rangkuman & Refleksi
Learn / KKA / Algoritma & Pemrograman / 07. Membuat Game Sederhana
๐Ÿค– KKA ยท Unit 05 ยท Modul 07

Prinsip Desain & Pembuatan Game Sederhana

Bermain game itu seru, tetapi membuatnya sendiri jauh lebih membanggakan! Integrasikan seluruh konsep komputasi: Game Loop (Input $\rightarrow$ Update $\rightarrow$ Render), sistem nyawa & skor, gravitasi platformer di Scratch, game interaktif teks di Python, hingga pengenalan library grafis Pygame.

โฑ๏ธ Waktu: 45 Menit ๐ŸŽฎ Fokus: Game Loop, State & Pygame ๐Ÿ“ Evaluasi: 20 Soal (4 Bagian)
๐ŸŽฏ

Tujuan Pembelajaran

Kompetensi yang akan kamu kuasai setelah menyelesaikan modul ini

01.
Memahami Arsitektur Siklus Game Loop

Menjelaskan alur 3 tahap berkelanjutan per frame: Tangkap Input Pengguna $\rightarrow$ Update Logika/Fisika $\rightarrow$ Gambar Layar (Render).

02.
Mengelola Status Permainan (Game State Management)

Mengontrol transisi status menu utama, gameplay berlangsung, kondisi kalah (Game Over), dan menang (Victory).

03.
Membangun Game Berbasis Teks di Python

Memprogram game tebak angka (Number Guessing) dan gunting-batu-kertas memanfaatkan modul random dan perulangan while.

04.
Mengenal Dasar Framework Pygame

Mengetahui fungsi inisialisasi jendela game (window surface), event loop, dan rendering audio visual di Python.

1

3 Pilar Jantung Game: Siklus Game Loop

Berjalan 60 kali per detik (60 FPS) untuk menghadirkan animasi interaktif yang mulus

๐ŸŽฎ

1. Input Handling

Mengecek apakah tombol panah, spasi lompat, atau sentuhan layar sedang ditekan oleh pemain.

โš™๏ธ

2. Update State & Physics

Menghitung gravitasi posisi karakter, mendeteksi tabrakan peluru dengan monster, dan menambah skor.

๐Ÿ–ฅ๏ธ

3. Render Output

Menggambar ulang posisi sprite baru di layar panggung dan memainkan efek suara ledakan.

2

Evolusi Proyek Game: Dari Scratch ke Python

Pilih platform yang tepat untuk mewujudkan imajinasi kreatifmu

1. Game Platformer Scratch

Sangat cocok untuk game bertema petualangan visual 2D seperti Mario Bros: menggunakan variabel kecepatan_y untuk gravitasi lompat dan deteksi pijakan tanah.

2. Game Teks & Pygame Python

Mulai dari game logika tebak angka berbasis terminal hingga game grafis 2D arcade lengkap menggunakan library pygame (pip install pygame).

๐ŸŽฎ

Interactive Python Number Guessing Game

Komputer telah memilih angka rahasia antara 1 s.d. 50. Coba tebak angkanya dalam maksimal 5 kesempatan!

Game Lab
๐ŸŽฒ Masukkan Tebakan Angka (1-50):
// Logika Python Game:
target = random.randint(1, 50)
while sisa_nyawa > 0: cek tebakan...
GAME CONSOLE FEEDBACK โค๏ธโค๏ธโค๏ธโค๏ธโค๏ธ 5 NYAWA
๐Ÿค”
Masukkan angka tebakan pertamamu!
Petunjuk: Komputer akan memberitahu apakah angka terlalu BESAR atau terlalu KECIL.
๐Ÿ“

Evaluasi Formatif: Membuat Game Sederhana

Uji pemahaman arsitektur Game Loop, modul random, dan game balancing (Total Skor: 100)

Target Kelulusan Minimal 70 Poin
Bagian A

Pilihan Ganda (5 Soal ยท Bobot: 25 Poin)

1. Tiga fase utama yang dijalankan secara terus-menerus di dalam siklus Game Loop adalah...

2. Modul bawaan Python yang wajib diimpor untuk memilih angka acak atau mengacak pilihan komputer adalah...

3. Library open-source paling populer di ekosistem Python untuk merancang game 2D dengan grafika dan kontrol keyboard adalah...

4. Konsep 'Game Balancing' dalam perancangan game memiliki tujuan utama untuk...

5. Pada game Scratch platformer, efek gravitasi jatuh bebas ke tanah diprogram dengan cara...

Bagian B

Benar atau Salah (5 Soal ยท Bobot: 25 Poin)

1. State Management mengatur perpindahan status layar dari MENU $\rightarrow$ PLAYING $\rightarrow$ GAMEOVER.
2. Di Python, kode random.randint(1, 10) dapat menghasilkan angka 11.
3. Playtesting (uji coba main oleh teman) sangat penting untuk menemukan bug dan mengukur keseruan game sebelum dirilis.
4. Game petualangan teks (Text Adventure) hanya membutuhkan perpaduan perulangan while, percabangan if-else, dan input teks pemain.
5. Game yang bagus harus selalu dibuat sesulit mungkin agar tidak ada satupun pemain yang bisa menyelesaikannya.
Bagian C

Menjodohkan Elemen Game & Fungsinya (5 Pasangan ยท Bobot: 25 Poin)

Bagian D

Urutan Tahap Pembuatan Proyek Game Edukasi (Bobot: 25 Poin)

Urutkan proses perancangan game dari ide awal hingga siap dimainkan:

A. Menentukan ide cerita, karakter utama, dan aturan objektif kemenangan (Game Design)
B. Menyiapkan aset visual sprite karakter dan musik efek suara latar
C. Memprogram logika kontrol pergerakan pemain dan deteksi tabrakan rintangan
D. Menambahkan sistem skor, peningkatan level, dan layar Game Over
E. Melakukan playtesting bersama teman kelas dan memperbaiki bug
โœจ

Rangkuman Materi & Refleksi Belajar

Tuliskan pemahaman dan pengalaman belajarmu pada materi ini

1. Inti Game Loop: Game adalah program yang terus berputar menangkap input, memperbarui dunia game, dan menampilkan grafis.

2. Menghidupkan Interaktivitas: Padukan elemen visual, kontrol responsif, suara, dan keseimbangan tantangan.

3. Kreativitas Pembuat: Menjadi game creator mengasah logika algoritma sekaligus daya imajinasi seni.