3 načina rada s skladištima podataka na Robloxu

Sadržaj:

3 načina rada s skladištima podataka na Robloxu
3 načina rada s skladištima podataka na Robloxu
Anonim

Svi su htjeli spremiti podatke i ponovo ih učitati svaki put kada igrač ponovno uđe u igru? Otkad je Data Persistence postao uzaludan, ROBLOX uvodi skladišta podataka koja su mnogo funkcionalnija. Sljedeći vodič s uputama omogućit će vam rad sa skladištima podataka za ROBLOX.

Koraci

Metoda 1 od 3: Postavljanje spremišta podataka

7815950 1
7815950 1

Korak 1. Konfigurirajte API

To ne uključuje skriptiranje, ali da biste aktivirali sav API pohrane podataka, najprije morate omogućiti pristup API -ju. Da biste to učinili, idite na karticu Razvoj i kliknite "Igre". Ovo bi vas trebalo usmjeriti na sva trenutna mjesta igre koja posjedujete. Pronađite svoju igru i kliknite na zupčanik. Tu bi se trebao pojaviti padajući izbornik i jednostavno pritisnite "Konfiguriraj". Potvrdite okvir omogućenim "Omogući studijski pristup API uslugama" i spremite. Sada biste trebali imati pristup potpunom API -ju.

7815950 2
7815950 2

Korak 2. Dohvatite spremište podataka

Upotrijebite API Data Store za pozivanje skladišta podataka jer ćemo se na njega morati pozivati. Za početak otvorite skriptu na ROBLOX -u i imenujte varijablu koju bismo htjeli koristiti za pozivanje na referencu.

    lokalno skladište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime")

7815950 3
7815950 3

Korak 3. Koristite varijablu prema potrebi

Uspješno ste nazvali skladište podataka s varijablom "skladište podataka". Sada, kad god trebate dohvatiti skladište podataka, možete ga jednostavno nazvati po njegovoj varijabli.

Imajte na umu da ako spremište podataka još nije stvoreno, automatski će stvoriti novu

Metoda 2 od 3: Korištenje metoda pohrane podataka

7815950 4
7815950 4

Korak 1. GetAsync

Pomoću GetAsync vratite vrijednost unosa u spremištu podataka s datim ključem. Svakako dajte svakom igraču jedinstveni skup ključeva jer će postavljanje dva igrača istim ključem nadjačati njihove vlastite podatke u igri, uzrokujući kaos između dviju strana. Ako želite znati kako postaviti jedinstveni ključ, čitajte dalje.

  • Sljedeći kôd će ispisati nulu, jer poslužitelj nije mogao pronaći nikakvu vrijednost koja povezuje ključ; važno je poslužitelju pokazati točno ono što pokušavamo ispisati, tako da poslužitelj zna što treba prikazati.
  • lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: GetAsync (key) end)

7815950 5
7815950 5

Korak 2. SetAsync

Pomoću SetAsync postavite vrijednost ključa i nadjačajte sve postojeće podatke pohranjene za jedinstveni ključ.

  • Ako je prethodni skup informacija važan, razmislite o korištenju UpdateAsync, o čemu će biti riječi u nastavku.
  • Sljedeći kôd pokazuje vam kako implementirati obje metode: ": GetAsync ()" i ": SetAsync ()".
  • lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: SetAsync (key, 90) - - postavlja ključ na vrijednost, 90 lokalnih data_stored = datastore: GetAsync (ključ) - može otkriti ispis promjene vrijednosti (data_stored) - ispisuje kraj izlaza)

  • Napomena: Ovo neće raditi, osim ako nemate omogućen pristup API -ju. Da biste to učinili, pročitajte prvu uputu ovog vodiča.
7815950 6
7815950 6

Korak 3. Pomoću UpdateAsync vratite vrijednost ključa i ažurirajte je novom vrijednošću

To potvrđuje podatke i stoga mora pričekati dok poslužitelj ne nađe vremena za njihovo ažuriranje. Da bi ovo funkcioniralo, morate proći dva parametra; prvi je niz koji uzima jedinstveni ključ koji ste postavili: "'user_'.. player.userId", a drugi je funkcija koja će uzeti staru vrijednost.

    lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) - završi stvari) završi)

  • U ovom smo slučaju staru vrijednost nazvali "stara". Unutar ove funkcije morat ćemo napraviti varijablu koja će uzeti u obzir naš ažurirani rezultat, a zatim je vratiti kako bi mogla prikazati naš novi rezultat.
  • lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) lokalno novo = staro ili 0 - moglo bi biti nula novo = novo + 1 - dodati 1 staroj vrijednosti vratiti novo - vratiti ga s novom vrijednošću kraj) kraj)

  • Imajte na umu da će poslužitelj vratiti nil ako ključ ne postoji ili nije pravilno dodijeljen.
  • Ako funkcija ne postoji, ažuriranje će se otkazati.
7815950 7
7815950 7

Korak 4. Pomoću IncrementAsync povećajte vrijednost ključa i vraća povećanu vrijednost

Ova metoda radi samo na cijelim brojevima.

Metoda 3 od 3: Događaji pohrane podataka i ažuriranje podataka

7815950 8
7815950 8

Korak 1. Postavite jedinstveni ključ

Izuzetno je važno da svaki igrač ima ključ koji mu je jedinstven. Držat će se tog ključa koji će pohraniti sve njihove podatke. Da bismo to učinili, koristimo ID igrača. Nakon što postavite spremište podataka, jednostavno pozovite funkciju za učitavanje playera, a zatim pronađite ID igrača. Kôd bi trebao izgledati ovako:

    lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId end)

  • Ovo će automatski stvoriti ključ koji je jedinstven samo za tog igrača, jer će svaki igrač imati jedan jedinstveni ID. "Korisnik_" neće biti važan.
7815950 9
7815950 9

Korak 2. Ažurirajte podatke

Sada kada imate jedinstveni ključ za svakog igrača, spremni ste za ažuriranje pohrane podataka i dohvaćanje podataka. Ispod ključa htjet ćete dodati metodu koja najviše odgovara vašim potrebama. U ovom slučaju koristit ćemo "UpdateAsync".

  • Počnite s funkcijom koja će poslužitelju pomoći razumjeti što namjeravate učiniti.
  • lokalno spremište podataka = igra: GetService ("DataStoreService"): GetDataStore ("ime") igra. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) lokalna nova vrijednost = stara ili 0 - može biti nula newValue = newValue + 50 return newValue end) end)

  • U ovoj smo funkciji postavili drugu funkciju, staru. "stari" su bili naši prethodno spremljeni podaci. U ovom scenariju, svaki put kad bi igrač ušao na poslužitelj, poslužitelj bi locirao njegov ključ, koji je njihov userId, i ažurirao bi podatke za 50 bodova, vraćajući i prikazujući tu novu vrijednost.
7815950 10
7815950 10

Korak 3. Čestitamo

Uspješno ste pohranili i ažurirali podatke igrača.

Upozorenja

  • Prilikom prvog stvaranja skladišta podataka, provjerite ima li "game: GetService (" DataStoreService ")", s ispravnim velikim slovima. Neće raditi učinkovito ako se pogrešno pozove.
  • Obavezno znajte kada koristiti "SetAsync" i "UpdateAsync" jer se pogrešnom upotrebom stvari mogu pretvoriti u nered pri preuzimanju podataka. U većini slučajeva programeri će koristiti "UpdateAsync".

Preporučeni: