Tambahkan insentif untuk jalur utama atau misi sampingan game Anda, dengan hadiah koleksi.
Menambahkan power-up dan barang koleksi ke game Godot Anda dapat meningkatkan pengalaman pemain secara signifikan, menjadikannya lebih menarik dan mengasyikkan. Power-up dapat memberikan kemampuan khusus atau keuntungan sementara kepada pemain, sedangkan barang koleksi dapat berfungsi sebagai hadiah, meningkatkan skor pemain, atau memberikan manfaat lainnya.
Untungnya, membuat power-up dan koleksi di Godot sangatlah mudah, berkat bahasa scripting yang intuitif dan mesin fisika bawaan.
Menyiapkan Game Godot
Untuk memulai, buat game 2D di mesin permainan Godot dan mengatur karakter pemain. Buat adegan baru dan tambahkan a KarakterBody2D simpul. Di dalam KarakterBody2D, tambah sebuah TabrakanBentuk2D dengan bentuk persegi panjang untuk mewakili area tabrakan pemain dan a Sprite2D untuk menampilkan karakter pemain.
Kode untuk demo ini tersedia di dalamnya repositori GitHub dan gratis untuk Anda gunakan di bawah lisensi MIT.
Sekarang, tulis kode GDScript untuk menangani pergerakan pemain dan tabrakan dengan batas layar. Berikut kode lengkap untuk pergerakan pemain:
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
var velocity = Vector2()if Input.is_action_pressed('ui_right'):
velocity.x += 1if Input.is_action_pressed('ui_left'):
velocity.x -= 1if Input.is_action_pressed('ui_down'):
velocity.y += 1if Input.is_action_pressed('ui_up'):
velocity.y -= 1
velocity = velocity.normalized() * speed
move_and_collide(velocity * delta)
Kode ini memungkinkan pemain untuk bergerak ke kiri, kanan, atas, dan bawah menggunakan tombol panah. Ini juga memastikan bahwa pemain tidak bergerak terlalu cepat dengan menormalkan vektor kecepatan dan menerapkan faktor kecepatan.
Selain itu, buat objek musuh dengan area tabrakan dan sprite mereka sendiri. Untuk menangani pergerakan musuh, Anda bisa menggunakan yang serupa _fisika_proses berfungsi sebagai pemain.
Membuat Koleksi
Barang koleksi sangat penting dalam banyak game, dan jenis yang umum adalah koin. Buat koin tertagih yang meningkatkan skor pemain sebesar 20 poin saat dikumpulkan.
Pertama, buat adegan baru dan tambahkan Area2D simpul sebagai koin tertagih. Di dalam Area2D, tambah sebuah TabrakanBentuk2D dengan bentuk lingkaran untuk menyatakan luas tumbukan dan a Sprite2D untuk menampilkan koin.
Selanjutnya, tambahkan kode GDScript berikut ke skrip pemutar:
extends CharacterBody2D
var score = 0
func _on_area_2d_body_entered(body):
get_parent().get_node("Collectibles").queue_free()
score += 20
Kode ini menggunakan _on_area_2d_body_masuk sinyal untuk mendeteksi saat karakter pemain memasuki area tabrakan koin tertagih. Jika mendeteksi karakter pemain, mereka mengumpulkan koin (panggilan ke antrian_bebas() menghapusnya dari tempat kejadian) dan meningkatkan skor mereka sebesar 20 poin.
Membuat Power-Up
Power-up dapat menambah kegembiraan pada game Anda dengan memberikan keuntungan atau kemampuan sementara kepada pemain. Buat power-up yang mengaktifkan timer 10 detik saat dikumpulkan. Jika pemain menyentuh musuh dalam waktu tersebut, mereka akan menghancurkan musuh tersebut.
Untuk membuat power-up, buat adegan baru dan tambahkan Area2D simpul. Di dalam Area2D, tambah sebuah TabrakanBentuk2D dengan bentuk persegi panjang dan a Sprite2D untuk menampilkan power-up.
Sekarang, tambahkan kode berikut ke skrip pemain Anda:
extends CharacterBody2D
var timer_duration = 10
var power_up_active = falsefunc _on_powerups_body_entered(body):
get_parent().get_node("Powerups").queue_free()
power_up_active = true# Start the timer
await get_tree().create_timer(10.0).timeout
power_up_active = false
func _on_enemy_body_entered(body):
if power_up_active:
get_parent().get_node("Enemy").queue_free()
else:
queue_free()
Kode ini menggunakan _on_powerups_body_masuk sinyal untuk mendeteksi saat karakter pemain mengumpulkan power-up. Ketika mereka melakukannya, itu menghilangkan power-up dari tempat kejadian, dan mengaturnya power_up_aktif variabel menjadi benar.
Fungsi akhirnya mulai menggunakan timer menunggu Dan buat_timer, dengan durasi 10 detik. Selama ini, jika karakter pemain menyentuh musuh, mereka akan menghancurkannya.
Menampilkan Koleksi yang Dikumpulkan
Menampilkan jumlah koleksi yang telah dikumpulkan pemain dapat menambah rasa pencapaian dan kemajuan. Untuk melakukannya, mulailah dengan membuat a Label simpul dan memposisikannya di sudut kiri atas layar.
Lalu, tambahkan kode GDScript berikut untuk memperbarui teks label setiap kali pemain mengumpulkan barang koleksi:
extends Label
func _ready():
self.text = "Collectibles: 0"
Pada skrip Player.gd:
extends CharacterBody2D
var bar
func _ready():
bar = get_parent().get_node("Label")
func _physics_process(delta):
bar.text = "Collectibles: " + str(score / 20)
Kode ini memperbarui teks label dengan jumlah barang koleksi yang diperoleh, yang dapat Anda hitung dengan membagi skor pemain dengan 20.
Termasuk Fitur Tambahan
Ada berbagai fitur lain yang dapat Anda tambahkan ke sistem power-up dan koleksi untuk meningkatkan permainan Anda lebih jauh. Berikut adalah beberapa ide:
Beberapa Tingkat Power-Up
Alih-alih hanya memiliki satu jenis power-up, Anda dapat memperkenalkan berbagai level power-up yang memberikan kemampuan yang semakin kuat. Misalnya, Anda dapat meningkatkan peningkatan kecepatan dasar menjadi peningkatan kecepatan super yang membuat pemain semakin cepat.
Combo Power-Up
Buat kombinasi power-up yang menawarkan efek unik dan kuat saat dikumpulkan bersama. Dorong pemain untuk menyusun strategi dan bereksperimen dengan berbagai kombinasi power-up untuk keuntungan maksimal.
Membatasi Power-Up
Terapkan cooldown atau batas seberapa sering pemain dapat mengumpulkan power-up tertentu. Ini menambah elemen pengambilan keputusan bagi pemain, karena mereka harus memilih saat yang tepat untuk mengaktifkan power-up.
Varietas Koleksi
Rancang berbagai jenis barang koleksi dengan beragam hadiah. Beberapa barang koleksi dapat memberikan nyawa ekstra, buff sementara, atau membuka fitur khusus game platformer Anda.
Praktik Terbaik untuk Mengimplementasikan Power-Up dan Koleksi
Saat menerapkan power-up dan koleksi di game Godot Anda, pertimbangkan praktik terbaik berikut:
Keseimbangan dan Playtesting
Uji power-up dan koleksi Anda secara ekstensif untuk memastikan mereka tidak menciptakan ketidakseimbangan dalam game. Sesuaikan efek dan hadiah untuk memberikan pengalaman yang adil dan menyenangkan bagi pemain.
Umpan Balik Visual dan Audio
Gunakan ikon atau sprite yang jelas dan menarik secara visual untuk merepresentasikan power-up dan barang koleksi. Selain itu, sertakan yang sesuai efek suara bebas hak cipta untuk memberikan umpan balik yang memuaskan saat pemain mengumpulkannya.
Antarmuka Pengguna (UI)
Rancang antarmuka pengguna yang bersih dan intuitif yang menampilkan informasi relevan tentang power-up dan barang koleksi. Tunjukkan sisa waktu untuk power-up aktif, jumlah barang koleksi yang terkumpul, dan detail relevan lainnya.
Konsistensi
Pastikan power-up dan koleksi selaras dengan keseluruhan tema dan mekanisme game Anda. Konsistensi dalam desain dan implementasi membantu mempertahankan pengalaman bermain game yang koheren.
Simpan dan Muat
Jika game Anda menyertakan power-up atau barang koleksi yang bertahan di seluruh sesi game, terapkan sistem simpan dan muat untuk mempertahankan kemajuan pemain. Ini memastikan pengalaman yang mulus dan memotivasi pemain untuk kembali ke permainan.
Dengan mengikuti praktik terbaik ini, Anda dapat membuat sistem power-up dan koleksi yang dipoles dan menarik yang memperkaya gameplay game Godot Anda, menjadikannya lebih menyenangkan bagi pemain.
Membuat Game Godot Lebih Menarik Dengan Power-Up dan Barang Koleksi
Menambahkan power-up dan barang koleksi ke game Godot Anda dapat meningkatkan keterlibatan dan replayability secara signifikan. Power-up memberi pemain keuntungan yang menarik dan sementara.
Dengan merancang dan mengimplementasikan power-up dan koleksi secara hati-hati, Anda dapat menciptakan pengalaman bermain game yang lebih imersif dan menyenangkan bagi para pemain Anda. Fleksibilitas dan kesederhanaan Godot memudahkan pengembang game untuk membuat power-up dan koleksi menarik yang meningkatkan mekanisme dan kenikmatan game mereka.