Membuat Game Petualangan Interaktif: Avery dan Noni
Ayo membuat cerita digital yang hidup! Avery dan Noni akan berjalan di tepi pantai, saling menyapa, memperkenalkan diri, lalu melanjutkan perjalanan ditemani burung dan musik latar.
1. Tujuan Pembelajaran | Learning Objectives
Setelah menyelesaikan proyek ini, siswa diharapkan mampu:
- Menggunakan event untuk memulai dan mengatur jalannya program.
- Menggerakkan sprite serta membuat animasi dengan pergantian kostum.
- Mengatur kemunculan karakter menggunakan show dan hide.
- Menggunakan broadcast dan when I receive untuk mengoordinasikan beberapa sprite.
- Menggunakan sensor touching edge dan distance to.
- Menerima masukan pengguna dengan ask and wait, lalu menampilkan jawaban menggunakan answer dan join.
- Menggabungkan animasi, dialog, backdrop, dan suara menjadi sebuah cerita interaktif.
Students will combine events, motion, looks, sensing, operators, and sound to create an interactive animated story.
2. Kenali Ceritanya | Meet the Story
👧 Avery
Avery adalah karakter yang berjalan lebih dahulu, kemudian menyapa Noni dan mengajaknya melihat pemandangan.
👧 Noni
Noni menyambut Avery, menanyakan nama pemain, lalu membalas dengan sapaan yang menyertakan nama tersebut.
🐦 Burung
Burung bergerak dengan pergantian kostum saat backdrop Boardwalk ditampilkan.
🎵 Musik & latar
Musik dimulai saat bendera hijau diklik. Pergantian backdrop membantu menandai suasana dan bagian cerita.
3. Persiapan Proyek | Project Setup
- Buka Scratch Editor dan buat proyek baru.
- Tambahkan sprite Avery, Noni, dan burung. Pastikan Avery dan Noni memiliki lebih dari satu kostum agar dapat dianimasikan.
- Tambahkan backdrop Blue Sky, Beach Rio, dan Boardwalk sesuai nama yang digunakan dalam script.
- Pilih suara musik Morning Has Broken (Piano Version) atau suara lain yang tersedia di proyek.
- Atur posisi sprite melalui koordinat x dan y. Panggung Scratch memiliki rentang koordinat horizontal sekitar -240 sampai 240 dan vertikal -180 sampai 180.
4. Memainkan Proyek Jadi | Play the Finished Project
Cobalah proyek yang sudah dibuat. Klik bendera hijau pada area permainan untuk memulai.
Jika permainan tidak muncul, buka proyek melalui tombol di atas. Koneksi internet diperlukan untuk memuat proyek Scratch.
5. Membuat Script Langkah demi Langkah
A. Avery baju biru berjalan | Avery Walks
Avery ditempatkan di bagian kiri bawah panggung. Ketika bendera hijau diklik, Avery berpindah ke koordinat awal, muncul, lalu berjalan dengan mengganti kostum secara berulang.

when green flag clicked
→ go to x: -165 y: -78
→ show
→ switch backdrop to Blue Sky
→ repeat 80
→ move 10 steps
→ next costume
→ wait 0.5 seconds
→ if touching edge then
→ go to x: -165 y: -78
→ next backdrop
→ hide
→ broadcast Ganti karakter
Mengapa menggunakan repeat 80? Perintah ini mengulang gerakan sebanyak 80 kali. Setiap pengulangan Avery maju 10 langkah, mengganti kostum, lalu menunggu 0,5 detik. Dengan demikian gerakannya tampak seperti berjalan.
Mengapa ada touching edge? Ketika Avery menyentuh tepi panggung, ia dikembalikan ke posisi awal dan backdrop berpindah. Ini membuat perpindahan adegan terjadi sebagai bagian dari perjalanan.
B. Avery melanjutkan perjalanan | Continue Walking
Script berikut dijalankan ketika sprite menerima pesan Kembali berjalan. Avery muncul dan bergerak sampai menyentuh tepi panggung, kemudian menghilang dan mengirim pesan akhir cerita.

when I receive Kembali berjalan
→ show
→ repeat until touching edge
→ move 10 steps
→ next costume
→ wait 1 seconds
→ hide
→ broadcast Akhir cerita
Blok repeat until akan terus mengulang perintah selama kondisi belum terpenuhi. Ketika Avery menyentuh tepi, pengulangan berhenti dan program melanjutkan ke blok hide.
C. Noni berjalan | Noni Walks
Noni muncul setelah backdrop berubah menjadi Beach Rio. Ia berjalan menuju Avery. Sensor distance to Avery Walking memeriksa jarak antara Noni dan sprite Avery yang sedang berjalan.

when backdrop switches to Beach Rio
→ go to x: 183 y: -76
→ point in direction -90
→ show
→ repeat until (distance to Avery Walking < 100)
→ move 15 steps
→ next costume
→ wait 0.5 seconds
→ broadcast ganti orang
→ hide
Memahami distance to: blok ini mengukur jarak dari Noni ke sprite yang dipilih pada dropdown. Operator < 100 membuat Noni berhenti mendekat ketika jaraknya kurang dari 100 satuan.
D. Noni berbicara dan menanyakan nama | Noni Talks
Setelah menerima pesan ganti orang, Noni muncul dan meminta pemain mengetik nama. Jawaban pemain kemudian digabungkan dengan kalimat sapaan.

when I receive ganti orang
→ show
→ go to x: 3 y: -76
→ ask Halo saya Noni, siapa nama kamu and wait
→ say (join Halo (join (answer) , senang berkenalan denganmu)) for 3 seconds
→ next costume
→ broadcast Pertanyaan pertama
→ wait 3 seconds
→ say Mari kita berjalan bersama. Di sana banyak pemandangan... for 4 seconds
→ next costume
→ wait 3 seconds
→ broadcast Jalan lagi
→ hide
Bagaimana answer bekerja? Setelah pemain mengisi kotak jawaban dan menekan Enter, blok answer menyimpan teks yang dimasukkan. Blok join menggabungkan beberapa potongan teks menjadi satu kalimat.
Contoh: jika pemain mengetik “Dina”, Noni akan menyapa: “Halo Dina, senang berkenalan denganmu”.
E. Avery menjawab percakapan | Avery Replies
Ketika menerima pesan Pertanyaan pertama, Avery berganti kostum, menyapa Noni, lalu mengirim pesan agar perjalanan dilanjutkan.

when I receive Pertanyaan pertama
→ switch costume to Avery-a
→ say Hello! Noni, senang bertemu dengan kamu juga for 3 seconds
→ next costume
→ wait 4 seconds
→ say Ayo, saya ingin melihatnya for 3 seconds
→ next costume
→ broadcast Kembali berjalan
→ hide
Pesan Kembali berjalan menghubungkan percakapan dengan animasi gerak Avery. Inilah salah satu manfaat utama broadcast: sprite lain dapat menjalankan script ketika menerima pesan yang sama.
F. Burung terbang | Flying Bird
Burung disembunyikan saat permainan dimulai. Ketika backdrop berubah menjadi Boardwalk, burung muncul, berganti kostum berulang kali, dan memainkan suara burung.

when green flag clicked → go to x: -102 y: 96 → set size to 30% → hide
when backdrop switches to Beach Rio → hide
when backdrop switches to Boardwalk → show → repeat 18
→ next costume
→ wait 1 seconds
→ start sound Bird
Setiap kostum menggambarkan posisi sayap yang berbeda. Pergantian kostum menciptakan ilusi gerakan. Nilai set size to 30% membuat burung tampil lebih kecil.
G. Penutup cerita dan musik | Ending and Background Music
Sprite tulisan atau narasi menampilkan bagian penutup ketika menerima pesan Akhir cerita. Musik mulai diputar ketika bendera hijau diklik.

when green flag clicked → hide
when I receive Akhir cerita → show → wait 3 seconds → stop all
when green flag clicked
→ start sound Morning Has Broken (Piano Version)
6. Peta Pesan Antar-Sprite | Broadcast Map
Perhatikan alur pesan berikut. Pesan menjadi penghubung antarbagian cerita.
| Pesan | Dikirim ketika | Sprite/objek yang merespons |
|---|---|---|
| Ganti karakter | Avery menyelesaikan bagian berjalan pertama. | Sprite karakter yang diposisikan untuk adegan berikutnya. |
| ganti orang | Noni mendekati Avery hingga jaraknya kurang dari 100. | Noni mulai memperkenalkan diri dan bertanya nama. |
| Pertanyaan pertama | Noni selesai menyapa pemain. | Avery memulai dialog balasan. |
| Kembali berjalan | Avery selesai berbicara. | Avery kembali bergerak. |
| Jalan lagi | Noni selesai berbicara. | Noni kembali berjalan. |
| Akhir cerita | Avery menyentuh tepi panggung setelah perjalanan. | Sprite tulisan penutup tampil. |
A broadcast message is like a signal. One sprite sends the signal, and another sprite reacts when it receives that message.
7. Konsep Pemrograman yang Dipelajari
| Blok | Fungsi | Contoh dalam proyek |
|---|---|---|
| when green flag clicked | Memulai script saat bendera hijau diklik. | Memulai musik dan mengatur posisi awal. |
| when I receive | Menjalankan script saat pesan diterima. | Memulai dialog atau gerakan berikutnya. |
| broadcast | Mengirim pesan ke sprite lain dan Stage. | Mengatur pergantian adegan. |
| show / hide | Menampilkan atau menyembunyikan sprite. | Mengatur karakter yang sedang tampil. |
| next costume | Mengganti ke kostum berikutnya. | Membuat animasi berjalan dan terbang. |
| repeat / repeat until | Mengulang perintah berdasarkan jumlah atau kondisi. | Menggerakkan karakter sampai tepi. |
| touching edge? | Mendeteksi apakah sprite menyentuh tepi panggung. | Mengakhiri gerakan Avery. |
| distance to | Mengukur jarak ke sprite atau objek lain. | Menghentikan Noni saat mendekati Avery. |
| ask and wait / answer | Meminta dan menyimpan jawaban pemain. | Menanyakan nama pemain. |
| join | Menggabungkan teks. | Membuat sapaan menggunakan nama pemain. |
| start sound | Memulai pemutaran suara. | Memainkan musik latar. |
8. Praktik Mandiri | Your Turn!
Praktik 1 — Ubah kecepatan
Ubah nilai move 10 steps menjadi 5, kemudian 20. Amati perbedaan kecepatan gerak Avery.
Change the movement value and compare the speed.
Praktik 2 — Ubah jarak
Ubah kondisi distance to Avery Walking < 100 menjadi kurang dari 60. Apa yang berubah?
Change the distance threshold and observe when Noni stops.
Praktik 3 — Dialog baru
Tambahkan satu kalimat dialog Noni yang menyebutkan tempat yang ingin dikunjungi.
Add a new line of dialogue for Noni.
Praktik 4 — Efek suara
Tambahkan suara ombak ketika backdrop Beach Rio tampil.
Add a wave sound when the beach backdrop appears.
9. Tantangan Pengembangan | Coding Challenge
- Tambahkan satu karakter baru yang menyapa Avery dan Noni.
- Buat agar pemain dapat memilih tujuan perjalanan dengan blok ask and wait.
- Jika pemain memilih “pantai”, tampilkan backdrop Beach Rio. Jika memilih “taman”, tampilkan backdrop lain.
- Tambahkan variabel Jumlah Percakapan yang bertambah setiap kali karakter menyelesaikan dialog.
- Buat tombol atau sprite yang dapat diklik untuk mengulang cerita dari awal.
Bonus: Buat dua akhir cerita berbeda berdasarkan pilihan pemain. Gunakan pesan broadcast untuk mengatur akhir cerita yang sesuai.
10. Kuis Evaluasi | Check Your Understanding
Pilih satu jawaban yang paling tepat untuk setiap pertanyaan.
Lihat kunci jawaban dan pembahasan
- B — broadcast. Mengirim pesan kepada sprite lain dan Stage.
- A — menjalankan script saat pesan diterima. Pasangan bloknya adalah broadcast dan when I receive.
- C — ask and wait. Memunculkan kotak input dan menunggu jawaban pemain.
- B — mengganti kostum. Pergantian kostum dapat membentuk animasi.
- A — jarak kurang dari 100. Operator kurang dari membandingkan hasil pengukuran jarak.
- B — menggabungkan teks. Join dapat menyusun sapaan dengan nama pemain.
- A — repeat until touching edge. Perintah berulang sampai kondisi menyentuh tepi terpenuhi.
- B — menyembunyikan sprite sementara. Sprite dapat ditampilkan lagi dengan show.
11. Refleksi | Reflection
- Bagian script mana yang paling menantang untuk kamu buat?
- Bagaimana broadcast membantu mengatur percakapan beberapa karakter?
- Apa yang terjadi jika blok wait dihilangkan dari animasi?
- Ide cerita apa yang ingin kamu buat setelah menyelesaikan proyek Avery dan Noni?
12. Sumber Belajar Tambahan
- Scratch — Video Tutorials: panduan animasi, membuat cerita, dan menggerakkan sprite.
- Scratch — Broadcast Block: penjelasan resmi tentang pengiriman pesan.
- Scratch Foundation — Costumes: mengenal kostum dan animasi sprite.
Materi disusun sebagai panduan pembelajaran berdasarkan proyek Scratch Avery dan Noni. Nama blok ditulis mengikuti antarmuka Scratch berbahasa Inggris agar mudah dicocokkan dengan editor.
