Adjon ösztönzőket játékának fő útvonalához vagy mellékküldetéseihez jutalmazó gyűjthető tárgyakkal.

Ha erősítőket és gyűjteményeket ad hozzá Godot-játékához, az jelentősen javíthatja a játékos élményét, így még vonzóbbá és izgalmasabbá válik. A feljavítások különleges képességeket vagy átmeneti előnyöket biztosíthatnak a játékosnak, míg a gyűjthető tárgyak jutalomként szolgálhatnak, növelve a játékos pontszámát vagy egyéb előnyöket biztosítva.

Szerencsére az intuitív szkriptnyelvnek és a beépített fizikai motornak köszönhetően a Godot-ban a power-up és a gyűjthető tárgyak létrehozása egyszerű.

A Godot játék beállítása

A kezdéshez hozzon létre egy 2D-s játékot a Godot játékmotor és állítsd be a játékos karakterét. Hozzon létre egy új jelenetet, és adjon hozzá a CharacterBody2D csomópont. Benne CharacterBody2D, add hozzá a CollisionShape2D téglalap alakú, amely a játékos ütközési területét ábrázolja, és a Sprite2D a játékos karakterének megjelenítéséhez.

Ennek a demónak a kódja elérhető benne GitHub adattár és az MIT licence alapján ingyenesen használható.

instagram viewer

Most írja be a GDScript kódot, hogy kezelje a játékos mozgását és a képernyő határvonalaival való ütközést. Íme a játékos mozgásának teljes kódja:

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)

Ez a kód lehetővé teszi a játékos számára, hogy a nyílbillentyűkkel balra, jobbra, fel és le mozogjon. Azt is biztosítja, hogy a játékos ne mozogjon túl gyorsan a sebességvektor normalizálásával és sebességtényező alkalmazásával.

Ezenkívül hozzon létre ellenséges objektumokat saját ütközési területekkel és sprite-okkal. Az ellenség mozgásának kezelésére használhat hasonlót _fizikai_folyamat lejátszóként működik.

Gyűjtemény készítése

A gyűjthető tárgyak sok játékban nélkülözhetetlenek, és gyakori típusa az érmék. Hozz létre egy gyűjthető érmét, amely 20 ponttal növeli a játékos pontszámát, ha összegyűjti.

Először hozzon létre egy új jelenetet, és adjon hozzá egy Area2D node, mint a gyűjthető érme. Benne Area2D, add hozzá a CollisionShape2D az ütközési területet ábrázoló kör alakkal és a Sprite2D hogy megjelenítse az érmét.

Ezután adja hozzá a következő GDScript kódot a lejátszó szkripthez:

extends CharacterBody2D

var score = 0

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

Ez a kód a _on_area_2d_body_entered jel, amely érzékeli, ha a játékos karakter belép a gyűjthető érme ütközési területére. Ha észleli a játékos karakterét, összegyűjtik az érmét (a hívást queue_free() eltávolítja a színről), és 20 ponttal növelik a pontszámukat.

Power-Upok létrehozása

A feljavítások izgalmassá tehetik a játékot azáltal, hogy átmeneti előnyöket vagy képességeket biztosítanak a játékosnak. Hozzon létre egy bekapcsolást, amely aktiválja a 10 másodperces időzítőt, amikor összegyűjti. Ha a játékos ezen időn belül megérinti az ellenséget, elpusztítja az ellenséget.

A bekapcsolás létrehozásához hozzon létre egy új jelenetet, és adjon hozzá egy Area2D csomópont. Benne Area2D, add hozzá a CollisionShape2D téglalap alakú és a Sprite2D a bekapcsolás megjelenítéséhez.

Most adja hozzá a következő kódot a lejátszó szkriptjéhez:

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

Ez a kód a _on_powerups_body_entered jel annak érzékelésére, hogy a játékos karaktere mikor veszi fel a bekapcsolást. Amikor megteszik, eltávolítja a bekapcsolást a helyszínről, és beállítja a power_up_active változó igaz.

A funkció végül elindít egy időzítőt várja és create_timer, 10 másodperces időtartammal. Ez idő alatt, ha a játékos karakter megérint egy ellenséget, elpusztítja azt.

Az összegyűjtött gyűjtemények megjelenítése

A játékos által összegyűjtött gyűjtemények számának megjelenítése sikerélményt és előrelépést jelenthet. Ehhez először hozzon létre a Címke csomópontot, és helyezze el a képernyő bal felső sarkában.

Ezután adja hozzá a következő GDScript-kódot a címkeszöveg frissítéséhez, amikor a lejátszó gyűjtögetni kezd:

extends Label

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

A Player.gd szkripten:

extends CharacterBody2D

var bar

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

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

Ez a kód frissíti a címke szövegét a megszerzett gyűjthető tárgyak számával, amelyet úgy számíthatsz ki, hogy elosztod a játékos pontszámát 20-zal.

Kiegészítő funkciókkal együtt

Számos egyéb funkciót is hozzáadhat a teljesítmény- és gyűjteményes rendszeréhez, hogy tovább javítsa játékát. Íme néhány ötlet:

Több szintű bekapcsolás

Ahelyett, hogy csak egyfajta bekapcsolás lenne, bevezethet különböző szintű bekapcsolásokat, amelyek egyre erősebb képességeket biztosítanak. Például frissítheti az alapvető sebességfokozót egy szupersebességű bekapcsolásra, amely még gyorsabbá teszi a lejátszót.

Kombinált erősítések

Hozzon létre olyan teljesítmény-kombinációkat, amelyek egyedi és erőteljes hatásokat kínálnak, ha összegyűjtik őket. Ösztönözze a játékosokat, hogy stratégiát alakítsanak ki, és kísérletezzenek a különböző bekapcsolási kombinációkkal a maximális előny érdekében.

Bekapcsolások korlátozása

Valósíts meg egy lehűlést vagy korlátozd azt, hogy a játékos milyen gyakran gyűjthet be egy adott bekapcsolást. Ez a játékos számára a döntéshozatal egy elemét adja, mivel ki kell választania a megfelelő pillanatot a bekapcsolás aktiválásához.

Gyűjthető fajták

Tervezzen különböző típusú gyűjthető tárgyakat különböző jutalommal. Egyes gyűjthető tárgyak extra életeket, ideiglenes buffokat biztosíthatnak, vagy különleges funkciókat nyithatnak meg a platformer játékod.

Bevált gyakorlatok a teljesítménynövelések és a gyűjtemények megvalósításához

Amikor erősítést és gyűjteményt épít be a Godot játékban, vegye figyelembe a következő bevált módszereket:

Egyensúly és játékteszt

Tesztelje alaposan a teljesítményt és a gyűjthető tárgyakat, hogy megbizonyosodjon arról, hogy nem okoznak egyensúlyt a játékban. Állítsa be az effektusokat és a jutalmakat, hogy tisztességes és élvezetes élményt nyújtson a játékosoknak.

Vizuális és hangos visszajelzés

Használjon áttekinthető és tetszetős ikonokat vagy sprite-okat a teljesítménynövelők és a gyűjthető tárgyak ábrázolására. Ezen kívül tartalmazza a megfelelő szerzői jog mentes hangeffektusok kielégítő visszajelzést adni, amikor a játékosok összegyűjtik őket.

Felhasználói felület (UI)

Tervezzen letisztult és intuitív felhasználói felületet, amely releváns információkat jelenít meg a tápellátásról és a gyűjthető tárgyakról. Mutassa meg az aktív bekapcsolásig hátralévő időt, az összegyűjtött gyűjtemények számát és minden egyéb lényeges részletet.

Következetesség

Győződjön meg arról, hogy a teljesítménynövelők és a gyűjthető tárgyak összhangban vannak a játék általános témájával és mechanikájával. A tervezés és a megvalósítás következetessége segít fenntartani a koherens játékélményt.

Mentés és betöltés

Ha a játékod olyan erőket vagy gyűjthető tárgyakat tartalmaz, amelyek a játékmenetek során is megmaradnak, alkalmazz egy mentési és betöltési rendszert a játékos fejlődésének megőrzése érdekében. Ez zökkenőmentes élményt biztosít, és motiválja a játékosokat, hogy visszatérjenek a játékhoz.

E bevált gyakorlatok betartásával egy kifinomult és lebilincselő bekapcsoló- és gyűjthető rendszert hozhat létre, amely gazdagítja Godot-játékának játékmenetét, és még élvezetesebbé teszi a játékosok számára.

Tegye vonzóbbá a Godot-játékokat erőfeltöltésekkel és gyűjteményekkel

Ha erőt és gyűjthető tárgyakat adsz a Godot-játékodhoz, az jelentősen növelheti annak elköteleződését és újrajátszhatóságát. A power-up izgalmas és átmeneti előnyöket biztosít a játékosoknak.

A kiegészítők és gyűjthető tárgyak gondos megtervezésével és megvalósításával még magával ragadó és élvezetesebb játékélményt teremthet játékosai számára. A Godot rugalmassága és egyszerűsége megkönnyíti a játékfejlesztők számára, hogy lebilincselő kiegészítőket és gyűjthető tárgyakat hozzanak létre, amelyek javítják játékuk mechanikáját és élvezetét.