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
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.
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")
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
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)
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)
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)
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)
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
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)
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)
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".