Kövesse nyomon játékosa teljesítményeit, és jutalmazza őket bizonyos mérföldkövekért egy egyszerű pontozási rendszerrel.

Bármely játékban a pontozási rendszer megvalósítása nem csak a pontok nyomon követését jelenti. A pontozás alapvető funkció, amely mélységet, kihívást és sikerélményt ad.

Akár egy hétköznapi mobiljátékot, akár egy intenzív akciódús kalandot készítesz, a jól megtervezett pontozási rendszer a játékosok motivációjának és elköteleződésének hajtóereje lehet.

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

Mielőtt belevágna a pontozási rendszerbe, állítson be egy alapvető 2D-s játékot a Godot játékmotor. Hozz létre egy játékos karaktert, aki mozoghat a képernyőn. Adjon hozzá néhány mozgó ellenséget is, hogy a játékos elkerülje.

Először hozzon létre egy új jelenetet, és adja hozzá a CharacterBody2D csomópontot a játékos fő testeként. Benne CharacterBody2D csomópont, add hozzá a CollisionShape2D téglalap alakú, amely a játékos hitboxát ábrázolja. Ezenkívül adjon hozzá a Sprite2D csomópont a játékos sprite megjelenítéséhez.

instagram viewer

A cikkben használt kód itt érhető el GitHub adattár és az MIT licence alapján ingyenesen használható.

Most írja be a lejátszó mozgásának GDScript kódját:

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 kiterjeszti a CharacterBody2D csomópontot, és lehetővé teszi a játékos számára, hogy négy irányba mozogjon a nyílbillentyűk segítségével.

Ezután adjon hozzá néhány mozgó ellenséget. Az egyszerűség kedvéért használja az egyszerűt Sprite2D vízszintesen mozgó csomópontok a képernyőn:

extends StaticBody2D

var speed = 100

func _physics_process(delta):
position.x -= speed * delta

if position.x < -100:
position.x = 800

Ez a kód egy egyszerű ellenséget hoz létre, amely jobbról balra mozog. Állítsa vissza a pozícióját, amikor kimegy a képernyőről, hogy az ellenségek folyamatos áramlásának illúzióját keltse.

Pontozási rendszer beállítása

Most, hogy megvan a játék alapvető beállítása, adja hozzá a pontozási rendszert. Hozzon létre egy globális változót a játékos pontszámának nyomon követéséhez. Ezt a szkriptet elhelyezheti egy külön csomóponton vagy magára a játékos karakterére:

extends CharacterBody2D

var score = 0

func _ready():
score = 0

A pontszám változó a játékos pontszámának központi tárolójaként működik a játék során. Ahogy a játékos pontokat gyűjtő akciókat hajt végre, ennek megfelelően növelje ezt a pontszám változót. Ez a megvalósítás megkönnyíti a pontszám megjelenítését a képernyőn, frissítését játék közben, és mentheti a magas pontszámok követéséhez.

A beállított pontozási rendszerrel továbbléphet a pontszám megjelenítésére a képernyőn, nyomon követheti a játékos magas pontszámát, és különféle funkciókat adhat hozzá, hogy vonzóbbá tegye a pontozási rendszert.

Jelenítse meg a pontszámot

A pontszám megjelenítéséhez a képernyőn hozzon létre egy címke csomópontot, és frissítse azt az aktuális pontszámmal minden képkockában. A jelenetben adjunk hozzá a Címke csomópontot, és adjon neki nevet. Ezután adja hozzá a következő kódot, hogy frissítse a címkét a pontszámmal:

extends CharacterBody2D

var score = 0
var score_label

func _ready():
score_label = get_parent().get_node("Label")
score = 0

func _physics_process(delta):
var velocity = Vector2()
// Player movement code...

# Update score and display
score_label.text = "Score: " + str(score)

Ez a kód letölti a Címke csomópontot, és frissíti a szövegét az aktuális pontszámmal.

Több funkciót is beleértve

Annak érdekében, hogy a pontozási rendszere még vonzóbbá váljon, fontolja meg e funkciók némelyikének vagy mindegyikének bevezetését a platformer játékaid.

Erősítések és bónuszok

Hozzon létre különféle kiegészítőket vagy gyűjthető tárgyakat, amelyeket a játékosok összegyűjthetnek a játék során. Ezek az erők ideiglenes erősítést, extra pontokat vagy különleges képességeket adhatnak, javítva az általános élményt.

Például egy Double Score-bekapcsolás megduplázhatja a megszerzett pontokat korlátozott ideig, vagy a Shield-bekapcsolás rövid időre legyőzhetetlenné teheti a játékost.

Kombinált rendszer

Valósítson meg egy kombinált rendszert, amely extra pontokkal jutalmazza a játékosokat az egymást követő akciókért, mint például az ellenség gyors egymásutáni legyőzése. Minél hosszabb a kombinált lánc, annál magasabb a pontszám szorzója.

Ez a rendszer arra ösztönzi a játékosokat, hogy megtartsák lendületüket, és ügyesen vegyék le az ellenségeiket, hogy maximalizálják pontszámaikat.

Időbónusz

Adj hozzá egy időalapú bónuszt, amely jutalmazza a játékosokat a szintek vagy célok bizonyos időn belüli teljesítéseért. Minél gyorsabban végeznek, annál több bónuszpontot kapnak. Ez a funkció hatékony játékra ösztönzi a játékosokat, és sürgőssé teszi a játékmenetet.

Szintű célok

Tervezzen szinteket konkrét pontszámokkal vagy célkitűzésekkel, amelyeket a játékosok elérhetnek. Például célul tűzheti ki a játékosok számára, hogy elérjenek egy bizonyos ponthatárt, vagy összegyűjtsenek egy bizonyos számú tárgyat, hogy a következő szintre lépjenek. Ezeknek a céloknak a teljesítése a siker és a fejlődés érzetét adja.

Ellenség viselkedése és pontszáma

Változtasd meg az ellenség viselkedését, és a nehézségi fok alapján rendelj hozzájuk különböző pontértékeket. A nagyobb kihívást jelentő ellenfelek vereség esetén magasabb pontszámot jutalmazhatnak, míg a könnyebb ellenfelek kevesebb pontot adnak. Ez a megközelítés mélységet ad a játékmenethez, és minden ellenséges találkozást egyedivé tesz.

A pontozási rendszer legjobb gyakorlatai

Vannak bevált módszerek a pontozási rendszer hatékonyságának növelésére és magával ragadó játékélmény megteremtésére. Néhány közülük:

Egyensúly és méltányosság

Győződjön meg arról, hogy a pontozási rendszer kiegyensúlyozott és igazságos minden játékos számára. Ne adjon túl sok pontot a könnyű feladatokért, és ne tegye túl nagy kihívást a pontozás az alkalmi játékosok számára. A kiegyensúlyozott pontozási rendszer motiválja a játékosokat a játék folytatására és a jobb eredmények elérésére.

Visszajelzés törlése

Világos és azonnali visszajelzést adjon a pontozási eseményekről. Használjon vizuális és hangjelzések a játékban hogy tájékoztassa a játékosokat, amikor pontokat szereznek, magas pontszámot érnek el vagy kombinációt váltanak ki. A visszajelzéseken keresztüli pozitív megerősítés javítja a játékos élményét és leköti őket.

Nehézségi skálázás

Fontolja meg a dinamikus pontozás alkalmazását a játékos képzettségi szintje vagy a játék nehézségi beállításai alapján. A pontozási rendszer skálázásával minden szintű játékos élvezheti a játékot, legyen szó kezdő vagy tapasztalt játékosról.

Újrajátszhatóság

Úgy alakítsa ki a pontozási rendszert, hogy ösztönözze az újrajátszhatóságot. Kínáljon fel több utat vagy választható célt, amelyeket a játékosok követhetnek pontszámaik növelése érdekében. Ez a megközelítés okot ad a játékosoknak arra, hogy visszatérjenek és felfedezzék a különböző stratégiákat.

Magas pontszámú láthatóság

Jelenítse meg jól láthatóan a magas pontszámot a főmenüben vagy a játékon belüli felületen. A magas pontszám motiválja a játékosokat, hogy az első helyre törekedjenek, és egészséges versenyt teremt a játékosok között.

A Godot-játékok vonzóbbá tétele pontozási rendszerrel

Pontozási rendszer hozzáadása a Godot játékhoz hatékony módja annak, hogy vonzóbbá és élvezetesebbé tegye a játékosok számára. Egyértelmű fejlődést biztosít, ösztönzi az újrajátszhatóságot, és elősegíti az egészséges versenyt a játékosok között.

A pontozási rendszert számos egyéb funkcióval és bevált gyakorlattal kombinálva létrehozhat a dinamikus és kifizetődő játékélmény, amely leköti a játékosokat, és izgalomban tartja a magasabb eredmények elérését pontszámokat.