# Starter Arena Bertahan SMP · Pemula · sesi 25–32 ## Memakai starter Ekstrak seluruh ZIP, Project Manager → Import → project.godot, lalu F5. Panah bergerak pada mode fisika; petunjuk kontrol khusus ada pada HUD. R membuat scene baru. Siapkan folder terpisah sebelum mengubah kode. Godot 4.x; contoh diperiksa dengan 4.4.1 Compatibility. ## Cakupan yang tersedia Spawn berbasis Timer, kontak bahaya sekali per instance, nyawa, pembersihan, dan reset. Menu serta hasil rinci dikerjakan siswa. Starter adalah acuan struktur dan mekanik minimum, bukan proyek akhir yang memenuhi semua rubrik. Gunakan lab sesi untuk menguji konsep kecil. Siswa membangun integrasi dan keputusan sendiri sesuai tugas presentasi. Tidak ada build executable yang diklaim telah diuji oleh paket ini. ## Susunan node saat runtime Node dibuat oleh world.gd dari bentuk dasar. Jalankan F6 lalu lihat Scene → Remote untuk menelusuri pohonnya. Untuk belajar konstruksi editor, buat scene siswa terpisah dan tambahkan node melalui tombol + sesuai fungsi helper di world.gd. ```text Arena2D Arena → CharacterBody2D / StaticBody2D / Area2D (mode fisika) CanvasLayer → Label (HUD) Button (mode antarmuka) Timer (mode spawn) ``` ## Cara membangun di editor 1. Buat root Node2D/Control sesuai tugas, simpan scene. 2. Tambahkan bentuk visual dan collision secara terpisah. Collider harus anak badan/area, bukan hanya mesh. Pada 3D, tambahkan kamera current dan lampu. 3. Tambahkan script pada node yang tepat. Implementasikan satu mekanik dari tugas sesi, uji, baru lanjut. 4. Hubungkan signal sekali lewat panel Node atau _ready. Label membaca model, bukan menjadi sumber keadaan. 5. Catat input, keadaan awal, harapan, aktual, perbaikan, dan batas pengujian. ## Urutan praktik - Sesi 25: Aturan arena dan keadaan permainan. Tetapkan mulai, bermain, dan selesai sebelum menulis fitur Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 26: PackedScene dan instance. Buat satu rintangan yang dapat dibuat ulang Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 27: Timer dan spawn. Gunakan satu Timer untuk kemunculan rintangan Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 28: Tabrakan dan nyawa. Kurangi nyawa sekali untuk satu kontak melalui aturan yang jelas Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 29: Label waktu dan akhir. Perbarui waktu serta hentikan Timer ketika selesai Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 30: Pembersihan objek. Hapus rintangan keluar arena dan bersihkan semua saat reset Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 31: Uji dua putaran arena. Periksa jumlah rintangan tidak bertambah akibat pemicu lama Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. - Sesi 32: Presentasi: Arena Bertahan. Jalankan mulai-main-selesai-ulang tanpa editor diubah Lengkapi kerangka mentor, lalu ubah satu nilai atau susunan dan telusuri hasil sendiri. ## Kriteria proyek - Keadaan putaran dan scene rintangan memiliki peran terpisah; siswa menjelaskan perubahan dari kondisi awal yang sama - Satu Timer memunculkan rintangan dan kontak mengurangi nyawa sekali; siswa menjelaskan perubahan dari kondisi awal yang sama - Timer berhenti saat selesai dan objek lama dibersihkan; siswa menjelaskan perubahan dari kondisi awal yang sama - Dua putaran tidak menumpuk rintangan atau pemicu; siswa menjelaskan perubahan dari kondisi awal yang sama Sumber: https://docs.godotengine.org/en/stable/