3 moduri de a lucra cu magazinele de date pe Roblox

Cuprins:

3 moduri de a lucra cu magazinele de date pe Roblox
3 moduri de a lucra cu magazinele de date pe Roblox
Anonim

Toți au dorit să salveze datele și să le încarce din nou de fiecare dată când un jucător intră din nou în joc? De când Persistența datelor a devenit inutilă, ROBLOX introduce magazine de date care funcționează mult mai mult. Următorul ghid vă va permite să lucrați cu magazinele de date pentru ROBLOX.

Pași

Metoda 1 din 3: Setarea depozitului de date

7815950 1
7815950 1

Pasul 1. Configurați API-ul

Acest lucru nu implică niciun fel de scripting, dar pentru a activa toate API-ul magazinului de date, trebuie mai întâi să activați accesul API. Pentru a face acest lucru, accesați fila Dezvoltare și faceți clic pe „Jocuri”. Acest lucru ar trebui să vă direcționeze către toate locurile de joc curente pe care le dețineți. Găsiți-vă jocul și faceți clic pe angrenaj. Ar trebui să apară un meniu derulant și să apăsați pur și simplu „Configurare”. Bifați caseta activată „Activați accesul Studio la serviciile API” și salvați. Acum ar trebui să aveți acces la API-ul complet.

7815950 2
7815950 2

Pasul 2. Recuperați magazinul de date

Folosiți API-ul Data Store pentru a apela la magazinul de date, deoarece va trebui să îl referim. Pentru a începe, deschideți un script pe ROBLOX și denumiți o variabilă pe care am dori să o folosim pentru a apela la referință.

    local datastore = joc: GetService ("DataStoreService"): GetDataStore ("nume")

7815950 3
7815950 3

Pasul 3. Folosiți variabila după cum este necesar

Ați apelat cu succes magazinul de date cu variabila „datastore”. Acum, ori de câte ori trebuie să preluați depozitul de date, îl puteți numi pur și simplu după variabila sa.

Vă rugăm să rețineți că, dacă nu a fost creat încă un magazin de date, acesta va crea automat unul nou

Metoda 2 din 3: Utilizarea metodelor de stocare a datelor

7815950 4
7815950 4

Pasul 1. GetAsync

Utilizați GetAsync pentru a returna valoarea intrării în magazinul de date cu cheia dată. Asigurați-vă că dați fiecărui jucător un set unic de taste, deoarece setarea a doi jucători aceeași cheie va suprascrie propriile date din joc, provocând haos între cele două părți. Dacă doriți să știți cum să setați o cheie unică, citiți mai departe.

  • Următorul cod va ieși nul, deoarece serverul nu a putut găsi nicio valoare care să asocieze cheia; este important să arătăm serverului exact ceea ce încercăm să producem, astfel încât serverul să știe ce trebuie afișat.
  • local datastore = joc: GetService ("DataStoreService"): GetDataStore ("nume") joc. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: GetAsync (key) end)

7815950 5
7815950 5

Pasul 2. SetAsync

Utilizați SetAsync pentru a seta valoarea cheii și suprascrie toate datele existente stocate pentru cheia unică.

  • Dacă setul de informații anterior este important, luați în considerare utilizarea UpdateAsync, care va fi predată mai jos.
  • Următorul cod vă arată cum să implementați ambele metode „: GetAsync ()” și „: SetAsync ()”.
  • local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: SetAsync (key, 90) - - setează cheia la valoare, 90 local data_stored = datastore: GetAsync (cheie) - este capabil să detecteze modificarea valorii print (data_stored) - tipărește sfârșitul de ieșire)

  • Notă: Acest lucru nu va funcționa, decât dacă aveți acces API activat. Pentru aceasta, citiți prima instrucțiune din acest ghid.
7815950 6
7815950 6

Pasul 3. Utilizați UpdateAsync pentru a returna valoarea cheii și actualizați-o cu o nouă valoare

Acest lucru validează datele și, prin urmare, trebuie să aștepte până când serverul poate găsi timpul pentru a le actualiza. Pentru ca acest lucru să funcționeze, va trebui să treceți doi parametri; primul este un șir care preia cheia unică pe care ați configurat-o: „'user_'.. player.userId”, iar al doilea este o funcție care va lua în considerare vechea valoare.

    local datastore = joc: GetService ("DataStoreService"): GetDataStore ("nume") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) - face chestii sfârșit) sfârșit)

  • În acest caz, am numit vechea valoare „vechi”. În interiorul acestei funcții, va trebui să realizăm o variabilă care să țină cont de scorul nostru actualizat, apoi să o returnăm pentru a putea afișa noul nostru scor.
  • local datastore = joc: GetService ("DataStoreService"): GetDataStore ("nume") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) local nou = vechi sau 0 - ar putea fi zero nou = nou + 1 - adăugați 1 la vechea valoare returnează nou - îl returnează cu noua valoare sfârșit) sfârșit)

  • Rețineți că serverul va reveni la zero dacă cheia nu există sau nu este atribuită corect.
  • Dacă funcția nu există, actualizarea va fi anulată.
7815950 7
7815950 7

Pasul 4. Utilizați IncrementAsync pentru a crește valoarea unei chei și returnează valoarea incrementată

Această metodă funcționează numai pe numere întregi.

Metoda 3 din 3: Evenimente de stocare a datelor și actualizarea datelor

7815950 8
7815950 8

Pasul 1. Setați o cheie unică

Este extrem de vital ca fiecare jucător să aibă o cheie unică pentru ei. Vor ține acea cheie, care va stoca toate datele lor. Pentru a face acest lucru, folosim ID-ul jucătorului. După ce ați setat magazinul de date, pur și simplu apelați la o funcție pentru a încărca playerul, apoi găsiți ID-ul playerului. Codul ar trebui să arate după cum urmează:

    local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId end)

  • Aceasta va crea automat o cheie care este unică numai pentru acel jucător, pentru fiecare jucător va avea un ID unic. „Utilizatorul_” nu va conta.
7815950 9
7815950 9

Pasul 2. Actualizați datele

Acum, că aveți o cheie unică pentru fiecare jucător, sunteți gata să faceți actualizarea magazinului de date și să preluați date. Sub cheia dvs., veți dori să adăugați o metodă care este cea mai potrivită nevoilor dumneavoastră. În acest caz, vom folosi „UpdateAsync”.

  • Începeți cu o funcție pentru a ajuta serverul să înțeleagă ce intenționați să faceți.
  • local datastore = joc: GetService ("DataStoreService"): GetDataStore ("nume") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) local newValue = vechi sau 0 - ar putea fi zero newValue = newValue + 50 return newValue end) end)

  • În această funcție, configurăm o altă funcție, veche. „vechi” erau datele noastre salvate anterior. În acest scenariu, de fiecare dată când un jucător a intrat pe server, serverul și-a localizat cheia, care este ID-ul utilizatorului, și a actualizat datele cu 50 de puncte, returnând și afișând acea nouă valoare.
7815950 10
7815950 10

Pasul 3. Felicitări

Ați stocat și actualizat cu succes datele unui jucător.

Avertizări

  • Când creați pentru prima dată magazinul dvs. de date, asigurați-vă că aveți „joc: GetService („ DataStoreService”)”, cu scrierea cu majuscule corectă. Nu va rula eficient, dacă este apelat incorect.
  • Asigurați-vă că știți când să folosiți „SetAsync” și „UpdateAsync”, deoarece utilizarea greșitului poate transforma lucrurile într-o mizerie atunci când extrageți date. În majoritatea cazurilor, dezvoltatorii vor folosi „UpdateAsync”.

Recomandat: