Pidä kirjaa pelaajasi saavutuksista ja palkitse heidät tietyistä virstanpylväistä yksinkertaisella pisteytysjärjestelmällä.

Missä tahansa pelissä pisteytysjärjestelmän käyttöönotto ei ole vain pisteiden seurantaa. Pisteytys on perusominaisuus, joka lisää syvyyttä, haastetta ja onnistumisen tunnetta.

Olitpa luomassa rentoa mobiilipeliä tai intensiivistä toimintaa täynnä olevaa seikkailua, hyvin suunniteltu pisteytysjärjestelmä voi olla pelaajien motivaation ja sitoutumisen liikkeellepaneva voima.

Godot-pelin perustaminen

Ennen kuin sukellat pisteytysjärjestelmään, luo 2D-peruspeli Godot-pelimoottori. Luo pelaajahahmo, joka voi liikkua näytöllä. Lisää myös liikkuvia vihollisia, joita pelaaja voi välttää.

Luo ensin uusi kohtaus ja lisää a CharacterBody2D solmu pelaajan päärunkoon. Sisällä CharacterBody2D solmu, lisää a CollisionShape2D suorakaiteen muotoinen edustamaan pelaajan hitboxia. Lisää lisäksi a Sprite2D solmu näyttääksesi pelaajan spriten.

Tässä artikkelissa käytetty koodi on saatavilla tässä GitHub-arkisto ja sen käyttö on ilmaista MIT-lisenssin alaisena.

Kirjoita nyt GDScript-koodi soittimen liikkeelle:

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)

Tämä koodi laajentaa CharacterBody2D solmu ja antaa pelaajan liikkua neljään suuntaan nuolinäppäimillä.

Lisää seuraavaksi liikkuvia vihollisia. Yksinkertaisuuden vuoksi käytä yksinkertaista Sprite2D solmut, jotka liikkuvat vaakasuunnassa näytöllä:

extends StaticBody2D

var speed = 100

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

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

Tämä koodi luo yksinkertaisen vihollisen, joka liikkuu oikealta vasemmalle. Palauta sijainti, kun se poistuu näytöstä luodaksesi illuusion jatkuvasta vihollisvirrasta.

Luo pisteytysjärjestelmä

Nyt kun sinulla on peruspeliasetukset, lisää pisteytysjärjestelmä. Luo globaali muuttuja seurataksesi pelaajan tulosta. Voit sijoittaa tämän skriptin erilliseen solmuun tai itse pelaajahahmoon:

extends CharacterBody2D

var score = 0

func _ready():
score = 0

Pistemuuttuja toimii pelaajan tulosten keskusvarastona koko pelin ajan. Kun pelaaja suorittaa toimintoja, jotka ansaitsevat pisteitä, lisää tätä pistemuuttujaa vastaavasti. Tämä toteutus helpottaa tulosten näyttämistä näytöllä, päivittämistä pelin aikana ja tallentamista korkeiden tulosten seurantaa varten.

Kun pisteytysjärjestelmä on määritetty, voit siirtyä näyttämään pisteet näytöllä, seuraamaan pelaajan huipputuloksia ja lisäämään erilaisia ​​ominaisuuksia, jotka tekevät pisteytysjärjestelmästä kiinnostavamman.

Näytä pisteet

Jos haluat näyttää tuloksen näytöllä, luo tarrasolmu ja päivitä se nykyisellä pistemäärällä jokaisessa kehyksessä. Lisää kohtaukseen a Label solmu ja anna sille nimi. Lisää sitten seuraava koodi päivittääksesi tarran pistemäärällä:

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)

Tämä koodi hakee Label solmu ja päivittää tekstinsä nykyisellä tuloksella.

Sisältää lisää ominaisuuksia

Jos haluat tehdä pisteytysjärjestelmästäsi entistä kiinnostavamman, harkitse joidenkin tai kaikkien näiden ominaisuuksien käyttöönottoa tasohyppelypelisi.

Tehostukset ja bonukset

Luo erilaisia ​​lisävoimia tai keräilyesineitä, joita pelaajat voivat kerätä pelin aikana. Nämä tehosteet voivat tarjota tilapäisiä tehosteita, lisäpisteitä tai erityisiä kykyjä, jotka parantavat yleistä kokemusta.

Esimerkiksi Double Score -tehostin voi tuplata ansaitut pisteet rajoitetun ajan tai Shield-tehostaminen voi tehdä pelaajasta voittamattoman lyhyeksi ajaksi.

Yhdistelmäjärjestelmä

Ota käyttöön yhdistelmäjärjestelmä, joka palkitsee pelaajat lisäpisteillä peräkkäisistä toimista, kuten vihollisten lyömisestä nopeasti peräkkäin. Mitä pidempi yhdistelmäketju, sitä korkeampi pistemäärän kerroin.

Tämä järjestelmä rohkaisee pelaajia pitämään yllä vauhtiaan ja ottamaan taitavasti vihollisiaan pisteiden maksimoimiseksi.

Aika bonus

Lisää aikaan perustuva bonus, joka palkitsee pelaajia tasojen tai tavoitteiden suorittamisesta tietyn aikarajan sisällä. Mitä nopeammin he lopettavat, sitä enemmän bonuspisteitä he saavat. Tämä ominaisuus rohkaisee pelaajia pelaamaan tehokkaasti ja lisää peliin kiireellisyyttä.

Tason tavoitteet

Suunnittele tasot tietyillä tulostavoitteilla tai tavoitteilla, jotka pelaajat voivat saavuttaa. Voit esimerkiksi asettaa pelaajille tavoitteen saavuttaa tietyn pistekynnyksen tai kerätä tietyn määrän esineitä edetäksesi seuraavalle tasolle. Näiden tavoitteiden saavuttaminen tarjoaa onnistumisen ja edistymisen tunteen.

Vihollisen käyttäytyminen ja pisteet

Vaihtele vihollisen käyttäytymistä ja anna heille erilaisia ​​pistearvoja vaikeusasteen mukaan. Haastavammat viholliset voivat palkita suurempia pisteitä tappion jälkeen, kun taas helpommat viholliset tarjoavat vähemmän pisteitä. Tämä lähestymistapa lisää pelin syvyyttä ja saa jokaisen vihollisen kohtaamisen tuntumaan erilliseltä.

Pisteytysjärjestelmän parhaat käytännöt

On olemassa parhaita käytäntöjä, joilla voit parantaa pisteytysjärjestelmäsi tehokkuutta ja luoda mukaansatempaavan pelikokemuksen. Jotkut niistä ovat:

Tasapaino ja oikeudenmukaisuus

Varmista, että pisteytysjärjestelmä on tasapainoinen ja oikeudenmukainen kaikille pelaajille. Vältä ylimääräisten pisteiden myöntämistä helpoista tehtävistä tai tekemästä pisteytystä liian haastavaksi satunnaisille pelaajille. Tasapainoinen pisteytysjärjestelmä motivoi pelaajia jatkamaan pelaamista ja pyrkimään parempiin tuloksiin.

Tyhjennä palaute

Anna selkeää ja välitöntä palautetta pisteytystapahtumista. Käytä visuaalista ja äänimerkkejä pelissäsi ilmoittaa pelaajille, kun he ansaitsevat pisteitä, saavuttavat korkean pistemäärän tai laukaisevat yhdistelmän. Positiivinen vahvistus palautteen kautta parantaa pelaajakokemusta ja pitää heidät sitoutuneina.

Vaikeus skaalaus

Harkitse dynaamisen pisteytyksen käyttöönottoa pelaajan taitotason tai pelin vaikeusasetusten perusteella. Pisteytysjärjestelmän skaalaaminen antaa kaiken tasoisille pelaajille mahdollisuuden nauttia pelistä, olivatpa he aloittelijoita tai kokeneita pelaajia.

Toistettavuus

Suunnittele pisteytysjärjestelmä niin, että se edistää uudelleenpelattavuutta. Tarjoa useita polkuja tai valinnaisia ​​tavoitteita, joilla pelaajat voivat parantaa pisteitään. Tämä lähestymistapa antaa pelaajille syyn palata ja tutkia erilaisia ​​strategioita.

Korkean pisteen näkyvyys

Näytä huippupisteet näkyvästi päävalikossa tai pelin sisäisessä käyttöliittymässä. Korkean tuloksen näkeminen motivoi pelaajia tavoittelemaan kärkipaikkaa ja luo tervettä kilpailua pelaajien kesken.

Tee Godot-peleistä kiinnostavampia pisteytysjärjestelmän avulla

Pisteytysjärjestelmän lisääminen Godot-peliisi on tehokas tapa tehdä siitä kiinnostavampi ja nautittavampi pelaajille. Se tarjoaa selkeän edistymisen tunteen, rohkaisee uudelleenpelattavuutta ja edistää tervettä kilpailua pelaajien välillä.

Yhdistämällä pisteytysjärjestelmän useisiin muihin ominaisuuksiin ja parhaisiin käytäntöihin voit luoda a dynaaminen ja palkitseva pelikokemus, joka pitää pelaajat koukussa ja innoissaan saavuttaakseen korkeamman tulokset.