Adăugați stimulente pentru calea principală sau pentru misiunile secundare ale jocului dvs., cu obiecte de colecție pline de recompense.

Adăugarea de power-up-uri și obiecte de colecție la jocul Godot poate îmbunătăți semnificativ experiența jucătorului, făcându-l mai captivant și mai interesant. Power-up-urile pot acorda abilități speciale sau avantaje temporare jucătorului, în timp ce obiectele de colecție pot servi drept recompense, crescând scorul jucătorului sau oferind alte beneficii.

Din fericire, crearea de power-up-uri și obiecte de colecție în Godot este simplă, datorită limbajului său de scriptare intuitiv și motorului fizic încorporat.

Configurarea jocului Godot

Pentru a începe, creați un joc 2D în motorul de joc Godot și configurați personajul jucătorului. Creați o scenă nouă și adăugați un CharacterBody2D nodul. În interiorul CharacterBody2D, adauga o CollisionShape2D cu o formă dreptunghiulară pentru a reprezenta zona de coliziune a jucătorului și a Sprite2D pentru a afișa caracterul jucătorului.

instagram viewer

Codul pentru această demonstrație este disponibil în documentul său Depozitul GitHub și este gratuit pentru utilizare sub licența MIT.

Acum, scrieți codul GDScript pentru a gestiona mișcarea jucătorului și coliziunile cu limitele ecranului. Iată codul complet pentru mișcarea jucătorului:

extends CharacterBody2D

var speed = 200

func _physics_process(delta):
var velocity = Vector2()

if Input.is_action_pressed('ui_right'):
velocity.x += 1

if Input.is_action_pressed('ui_left'):
velocity.x -= 1

if Input.is_action_pressed('ui_down'):
velocity.y += 1

if Input.is_action_pressed('ui_up'):
velocity.y -= 1

velocity = velocity.normalized() * speed
move_and_collide(velocity * delta)

Acest cod permite jucătorului să se deplaseze la stânga, la dreapta, în sus și în jos folosind tastele săgeți. De asemenea, asigură că jucătorul nu se mișcă prea repede prin normalizarea vectorului viteză și aplicând un factor de viteză.

În plus, creați obiecte inamice cu propriile lor zone de coliziune și sprite. Pentru a gestiona mișcarea inamicului, puteți folosi un similar _proces_fizică funcţionează ca jucător.

Crearea obiectelor de colecție

Elementele de colecție sunt esențiale în multe jocuri, iar un tip comun sunt monedele. Creați o monedă de colecție care crește scorul jucătorului cu 20 de puncte atunci când este colectată.

Mai întâi, creați o scenă nouă și adăugați un Zona2D nod ca monedă de colecție. În interiorul Zona2D, adauga o CollisionShape2D cu formă de cerc pentru a reprezenta zona de coliziune și a Sprite2D pentru a afișa moneda.

Apoi, adăugați următorul cod GDScript la scriptul playerului:

extends CharacterBody2D

var score = 0

func _on_area_2d_body_entered(body):
get_parent().get_node("Collectibles").queue_free()
score += 20

Acest cod folosește _on_area_2d_body_a introdus semnal pentru a detecta când personajul jucătorului intră în zona de coliziune a monedei de colecție. Dacă detectează personajul jucătorului, ei colectează moneda (apelul către queue_free() îl scoate din scenă) și le măresc scorul cu 20 de puncte.

Crearea de power-up-uri

Power-up-urile pot adăuga entuziasm jocului tău, oferind jucătorului avantaje sau abilități temporare. Creați o pornire care activează un cronometru de 10 secunde atunci când este colectat. Dacă jucătorul atinge un inamic în acest timp, el va distruge inamicul.

Pentru a crea pornirea, creați o scenă nouă și adăugați un Zona2D nodul. În interiorul Zona2D, adauga o CollisionShape2D cu formă dreptunghiulară și a Sprite2D pentru a afișa pornirea.

Acum, adăugați următorul cod la scriptul playerului:

extends CharacterBody2D

var timer_duration = 10
var power_up_active = false

func _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()

Acest cod folosește _on_powerups_body_a introdus semnal pentru a detecta când personajul jucătorului colectează pornirea. Când o fac, elimină pornirea din scenă și setează power_up_active variabilă la adevărat.

Funcția pornește în sfârșit un temporizator folosind asteapta și create_timer, cu o durată de 10 secunde. În acest timp, dacă personajul jucător atinge un inamic, îl distrug.

Afișarea obiectelor de colecție colectate

Afișarea numărului de obiecte de colecție pe care jucătorul le-a adunat poate adăuga un sentiment de realizare și progres. Pentru a face acest lucru, începeți prin a crea un Eticheta nod și poziționându-l în colțul din stânga sus al ecranului.

Apoi, adăugați următorul cod GDScript pentru a actualiza textul etichetei ori de câte ori jucătorul colectează un obiect de colecție:

extends Label

func _ready():
self.text = "Collectibles: 0"

Pe scriptul Player.gd:

extends CharacterBody2D

var bar

func _ready():
bar = get_parent().get_node("Label")

func _physics_process(delta):
bar.text = "Collectibles: " + str(score / 20)

Acest cod actualizează textul etichetei cu numărul de obiecte de colecție obținute, pe care îl puteți calcula împărțind scorul jucătorului la 20.

Inclusiv caracteristici suplimentare

Există diverse alte caracteristici pe care le puteți adăuga la sistemul dvs. de power-up și de colecție pentru a vă îmbunătăți și mai mult jocul. Iată câteva idei:

Mai multe niveluri de power-up-uri

În loc să ai un singur tip de power-up, poți introduce diferite niveluri de power-up care oferă abilități din ce în ce mai puternice. De exemplu, puteți face upgrade la o pornire de bază pentru creșterea vitezei la o pornire super-viteză care face jucătorul și mai rapid.

Putere combinate

Creați combinații de power-up-uri care oferă efecte unice și puternice atunci când sunt adunate împreună. Încurajează jucătorii să elaboreze strategii și să experimenteze cu diferite combinații de power-up pentru un avantaj maxim.

Limitarea pornirilor

Implementați un cooldown sau o limită cu privire la frecvența cu care un jucător poate colecta o anumită putere. Acest lucru adaugă un element de luare a deciziilor pentru jucător, deoarece trebuie să aleagă momentul potrivit pentru a activa pornirea.

Soiuri de colecție

Proiectați diferite tipuri de obiecte de colecție cu recompense diferite. Unele obiecte de colecție ar putea oferi vieți suplimentare, beneficii temporare sau debloca funcții speciale jocul tău platformer.

Cele mai bune practici pentru implementarea power-up-urilor și a obiectelor de colecție

Când implementați power-up-uri și obiecte de colecție în jocul Godot, luați în considerare următoarele bune practici:

Echilibrul și testarea jocului

Testați-vă intens power-up-urile și obiectele de colecție pentru a vă asigura că nu creează dezechilibre în joc. Ajustați efectele și recompensele pentru a oferi jucătorilor o experiență corectă și plăcută.

Feedback vizual și audio

Folosiți pictograme sau sprite-uri clare și atractive din punct de vedere vizual pentru a reprezenta power-up-uri și obiecte de colecție. În plus, includeți adecvat efecte sonore fără drepturi de autor pentru a oferi feedback satisfăcător atunci când jucătorii le colectează.

Interfață cu utilizatorul (UI)

Proiectați o interfață de utilizator curată și intuitivă care afișează informații relevante despre porniri și obiecte de colecție. Afișați timpul rămas pentru pornirile active, numărul de obiecte de colecție colectate și orice alte detalii relevante.

Consecvență

Asigurați-vă că power-up-urile și obiectele de colecție se aliniază cu tema și mecanica generală a jocului dvs. Consecvența în proiectare și implementare ajută la menținerea unei experiențe de joc coerente.

Salvați și încărcați

Dacă jocul tău include power-up-uri sau obiecte de colecție care persistă pe parcursul sesiunilor de joc, implementează un sistem de salvare și încărcare pentru a păstra progresul jucătorului. Acest lucru asigură o experiență perfectă și motivează jucătorii să se întoarcă la joc.

Aderând la aceste bune practici, puteți crea un sistem de pornire și de colecție rafinat și captivant care îmbogățește modul de joc al jocului Godot, făcându-l mai plăcut pentru jucători.

Faceți jocurile Godot mai captivante cu power-up-uri și obiecte de colecție

Adăugarea de power-up-uri și obiecte de colecție la jocul Godot poate crește semnificativ implicarea și rejucabilitatea acestuia. Power-up-urile oferă jucătorilor avantaje incitante și temporare.

Prin proiectarea și implementarea cu atenție a power-up-urilor și a obiectelor de colecție, puteți crea o experiență de joc mai captivantă și mai plăcută pentru jucătorii dvs. Flexibilitatea și simplitatea lui Godot fac mai ușor pentru dezvoltatorii de jocuri să creeze power-up-uri captivante și obiecte de colecție care îmbunătățesc mecanica și plăcerea jocului lor.