PENGEMBANGAN PROJEK SCRATCH BESERTA DOKUMENTASI DAN PUBLIKASI DIGITAL
PENGEMBANGAN PROJEK SCRATCH BESERTA DOKUMENTASI DAN PUBLIKASI DIGITAL
Scratch adalah sebuah platform pemrograman visual yang dikembangkan oleh MIT Media Lab dan ditujukan untuk membantu pemula dalam mempelajari konsep dasar pemrograman komputer secara mudah dan interaktif. Scratch menggunakan sistem block-based programming, yaitu pemrograman dengan cara menyusun balok-balok perintah (blocks) tanpa harus menuliskan kode program secara manual, sehingga dapat meminimalkan kesalahan sintaks yang sering dialami oleh pemula.
Melalui Scratch, pengguna dapat membuat berbagai proyek kreatif seperti animasi, permainan (game), cerita interaktif, dan simulasi sederhana. Setiap perintah dalam Scratch direpresentasikan dalam bentuk blok dengan fungsi tertentu, seperti gerakan (motion), tampilan (looks), suara (sound), kontrol (control), peristiwa (events), dan variabel (variables). Blok-blok tersebut dapat disusun secara logis untuk membentuk alur program yang berjalan sesuai dengan keinginan pengguna.
Scratch dirancang tidak hanya untuk mengajarkan cara membuat program, tetapi juga untuk melatih kemampuan berpikir komputasional (computational thinking), seperti pemecahan masalah, berpikir logis, dan kreativitas. Selain itu, Scratch menyediakan komunitas daring yang memungkinkan pengguna untuk berbagi, memodifikasi, dan mempelajari proyek dari pengguna lain, sehingga proses belajar menjadi lebih kolaboratif.
Dengan kemudahan penggunaan dan fitur yang lengkap, Scratch sangat cocok digunakan sebagai media pembelajaran pemrograman dasar bagi pelajar, mahasiswa, maupun pemula yang ingin memahami konsep pemrograman tanpa harus memiliki latar belakang teknis yang mendalam.
1. Latar Belakang Pembuatan
Perkembangan teknologi digital menuntut peningkatan kemampuan berpikir logis dan pemahaman dasar pemrograman sejak dini. Salah satu cara efektif untuk mempelajari pemrograman adalah melalui media interaktif seperti permainan (game). Scratch sebagai platform pemrograman visual menyediakan lingkungan yang mudah digunakan untuk merancang game sederhana tanpa memerlukan kemampuan coding tingkat lanjut.
Game Rocket Ship dibuat menggunakan Scratch sebagai bentuk implementasi pembelajaran pemrograman berbasis visual. Game ini dirancang untuk memperkenalkan konsep dasar pemrograman seperti event, perulangan (looping), kondisi (conditional), variabel, dan interaksi antar sprite. Dengan menggunakan tema pesawat roket, permainan ini diharapkan mampu meningkatkan ketertarikan pengguna dalam mempelajari pemrograman secara menyenangkan dan interaktif.
Selain sebagai media hiburan, pembuatan game Rocket Ship juga bertujuan untuk melatih kreativitas serta kemampuan problem solving dalam merancang alur permainan, mengatur kontrol gerak, dan menentukan mekanisme permainan yang seimbang dan menarik bagi pengguna.
2. Manfaat Program bagi Pengguna
Game Rocket Ship berbasis Scratch memberikan berbagai manfaat bagi pengguna, di antaranya:
a. Sebagai Media Pembelajaran Pemrograman Dasar
b. Pengguna dapat memahami konsep dasar pemrograman seperti logika perintah, pengulangan, dan percabangan melalui interaksi langsung dengan game.
c. Melatih Berpikir Logis dan Kreatif
d. Permainan ini mendorong pengguna untuk berpikir strategis dalam mengendalikan roket serta menghindari rintangan, sehingga melatih kemampuan berpikir logis dan kreatif.
e. Meningkatkan Minat Belajar Teknologi
f. Tampilan visual dan mekanisme permainan yang sederhana membuat pengguna lebih tertarik untuk mengenal dunia pemrograman dan teknologi informasi.
g. Media Hiburan Edukatif
h. Game Rocket Ship tidak hanya berfungsi sebagai hiburan, tetapi juga sebagai sarana pembelajaran yang edukatif dan interaktif.
i. Mudah Digunakan oleh Berbagai Kalangan
j. Karena dibuat menggunakan Scratch, game ini dapat dimainkan dan dipelajari oleh pelajar, mahasiswa, maupun pemula tanpa memerlukan pengalaman pemrograman sebelumnya.
1. Inisialisasi dan Pengaturan Awal
Program dimulai dengan menyiapkan elemen-elemen dasar permainan:
• Pengaturan Variabel: Sistem menetapkan variabel "Life" (nyawa) awal sebanyak 3 dan variabel "Score" (skor) dimulai dari 0,.
• Persiapan Objek: Menyiapkan sprite utama berupa Rocket ship, musuh berupa Rock (batu), dan sistem pembatas (pembatas batu di kiri dan pembatas laser di kanan) untuk mendeteksi batas area permainan.
• Latar Belakang: Pengguna dapat memilih latar belakang seperti Stars atau Galaxy untuk memperkuat tema luar angkasa.
2. Logika Pergerakan Rocket (Pemain)
Alur pergerakan pemain dikendalikan sepenuhnya melalui input keyboard:
• Navigasi: Menggunakan blok forever dan if, program mendeteksi jika tombol panah ditekan. Panah kanan/kiri akan mengubah nilai koordinat X (change x by 10/-10), sedangkan panah atas/bawah mengubah nilai koordinat Y (change y by 10/-10).
• Kondisi Kalah: Program secara terus-menerus mengecek variabel "Life". Jika "Life" mencapai angka 0, maka blok "stop all" akan aktif dan menghentikan seluruh permainan.
3. Mekanisme Musuh (Rock)
Batu (Rock) bertindak sebagai rintangan yang muncul secara otomatis:
• Pemunculan: Batu muncul dari sisi kanan layar (koordinat x=250) dengan posisi Y yang acak (go to random position) agar tantangan tidak monoton.
• Pergerakan: Batu bergerak terus-menerus ke arah kiri dengan perintah "change x by -7".
• Interaksi dengan Pemain: Jika Rocket ship menyentuh Rock, maka variabel "Life" akan berkurang 1 (-1).
4. Sistem Menembak (Laser) dan Skor
Serangan pemain diatur menggunakan fitur cloning untuk memungkinkan banyak tembakan:
• Pembuatan Clone: Laser diprogram untuk bersembunyi (hide) terlebih dahulu, kemudian muncul sebagai clone setiap 1 detik dari posisi Rocket ship.
• Pergerakan Laser: Setelah muncul sebagai clone, laser akan bergerak ke arah kanan untuk mengenai sasaran.
• Deteksi Skor: Jika Laser menyentuh Rock, maka skor akan bertambah 1.
• Penghapusan Clone: Untuk menjaga performa, clone laser akan dihapus (delete this clone) jika sudah menyentuh target atau mencapai pembatas laser di ujung kanan.
5. Siklus Permainan
Alur ini berjalan dalam sebuah loop (selamanya): musuh akan terus bermunculan, pemain mencoba menembak untuk mengumpulkan skor, dan permainan berakhir saat nyawa habis akibat bertabrakan dengan batu,. Pemain juga bisa menambah tantangan dengan melakukan duplicate pada sprite Rock agar jumlah musuh yang muncul menjadi lebih banyak.
Tahap 1: Persiapan Karakter dan Arena
1. Hapus Sprite Default: Hapus sprite kucing bawaan.
2. Tambah Sprite Utama: Masukkan sprite Rocket, ubah arahnya menjadi 180 derajat dan ukurannya menjadi 80.
3. Tambah Musuh: Masukkan sprite Rock (batu) dan ubah ukurannya menjadi 70.
4. Membuat Pembatas:
◦ Gunakan fitur Paint untuk membuat garis di sisi kiri (beri nama "pembatas batu") dan garis di sisi kanan (beri nama "pembatas laser").
◦ Atur posisi kedua pembatas tersebut ke koordinat x=0 dan y=0 agar presisi di tengah layar.
5. Pilih Latar: Tambahkan latar belakang bertema luar angkasa seperti Stars atau Galaxy.
Tahap 2: Pemrograman Pergerakan Rocket (Pemain)
Klik pada sprite Rocket ship dan susun blok berikut:
• Blok When green flag clicked: Untuk memulai program saat bendera hijau ditekan.
• Blok set Life to 3: Mengatur variabel nyawa awal pemain menjadi 3.
• Blok forever: Digunakan agar perintah di dalamnya dijalankan terus-menerus selama game berlangsung.
• Blok if <key ... pressed?>: Untuk mendeteksi input keyboard (Panah Atas, Bawah, Kanan, Kiri).
• Blok change x by dan change y by:
◦ change x by 10/-10 untuk gerak horizontal (kanan/kiri).
◦ change y by 10/-10 untuk gerak vertikal (atas/bawah).
• Blok if <Life = 0> then stop all: Logika permainan berakhir jika nyawa habis.
• Blok if <touching Rocks?> then change Life by -1: Mengurangi nyawa jika roket bertabrakan dengan batu, sertai dengan blok wait 1 second agar pengurangan nyawa tidak terlalu cepat.
Tahap 3: Pemrograman Musuh (Rock)
Klik pada sprite Rock dan susun blok untuk mengatur kemunculannya:
• Blok go to random position & set x to 250: Membuat batu muncul dari sisi paling kanan layar pada posisi ketinggian (Y) yang acak.
• Blok change x by -7: Membuat batu bergerak maju ke arah kiri (mendekati pemain).
• Blok if <touching pembatas batu?>: Jika batu mencapai ujung kiri tanpa tertembak, batu akan kembali ke posisi awal di sebelah kanan (go to random position dan set x to 250).
Tahap 4: Pemrograman Laser (Tembakan)
Klik pada sprite Laser. Sistem ini menggunakan fitur cloning agar peluru bisa muncul banyak secara bergantian:
• Mekanisme Muncul:
◦ Gunakan blok hide agar laser asli tidak terlihat.
◦ Di dalam blok forever, gunakan create clone of myself dan wait 1 second untuk menciptakan peluru baru setiap satu detik.
• Pergerakan Tembakan:
◦ Gunakan blok when I start as a clone: Perintah khusus untuk setiap salinan laser yang muncul.
◦ go to Rocket ship dan show: Membuat laser muncul tepat dari posisi pesawat pemain.
◦ change x by 10: Membuat laser bergerak cepat ke arah kanan.
• Interaksi dan Skor:
◦ Blok if <touching Rock?>: Jika laser mengenai batu, gunakan blok change Score by 1 untuk menambah poin pemain.
◦ Blok delete this clone: Menghapus laser jika sudah mengenai musuh atau mencapai pembatas laser agar tidak memenuhi memori permainan.
Tahap 5: Penyelesaian (Final Touch)
• Variabel Skor: Buat variabel baru bernama "Score" dan gunakan blok set Score to 0 di awal permainan agar poin selalu mulai dari nol.
• Menambah Kesulitan: Anda dapat melakukan klik kanan dan "duplicate" pada sprite Rock agar jumlah musuh yang muncul menjadi lebih banyak.
1. Rizaldi Muhaemin merupakan mahasiswa S1 Teknik Informatika di Institut Teknologi Garut. Penulis menempuh riwayat pendidikan di SDN Sukajaya 4, SMP IT Banawa, dan SMK Muhammadiyah Tarkid. Memiliki minat pembelajaran di bidang RPL.
333. Mentina Asri
g

Komentar
Posting Komentar