Alle ønsket å lagre data, og laste dem inn igjen hver gang en spiller går inn i spillet igjen? Helt siden Data Persistence har blitt meningsløs, introduserer ROBLOX datalagre som er mye mer fungerende. Følgende veiledning gjør at du kan jobbe med datalagre for ROBLOX.
Trinn
Metode 1 av 3: Angi datalagring
Trinn 1. Konfigurer API
Dette innebærer ikke noe scripting, men for å aktivere alle datalagrets API må du først aktivere API -tilgangen. For å gjøre dette, gå til kategorien Utvikle og klikk på "Spill". Dette bør lede deg til alle de nåværende spillstedene du eier. Finn spillet ditt, og klikk på tannhjulet. Det skal vises en rullegardinmeny, og bare trykke "Konfigurer". Merk av i boksen "Aktiver Studio -tilgang til API -tjenester", og lagre. Du bør nå ha tilgang til hele API -en.
Trinn 2. Hent datalagret
Bruk Data Store API til å ringe etter datalagret, da vi må referere til det. For å starte, åpne et skript på ROBLOX, og navngi en variabel som vi vil bruke til å kalle for referansen.
lokal datastore = spill: GetService ("DataStoreService"): GetDataStore ("navn")
Trinn 3. Bruk variabelen etter behov
Du har vellykket kalt datalageret med variabelen "datastore". Nå, når du trenger å hente datalagringen, kan du ganske enkelt navngi den med variabelen.
Vær oppmerksom på at hvis en datalagring ikke er opprettet ennå, vil den automatisk opprette en ny
Metode 2 av 3: Bruke datalagringsmetoder
Trinn 1. GetAsync
Bruk GetAsync til å returnere verdien av oppføringen i datalageret med den angitte nøkkelen. Sørg for å gi hver spiller et unikt sett med nøkler, ettersom å sette to spillere den samme nøkkelen vil overstyre sine egne data i spillet og forårsake kaos mellom de to partene. Hvis du vil vite hvordan du setter en unik nøkkel, kan du lese videre.
- Følgende kode sendes null, fordi serveren ikke kunne finne noen verdi som kobler til nøkkelen; Det er viktig å vise serveren nøyaktig hva vi prøver å sende ut, slik at serveren vet hva som må vises.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: GetAsync (key) end)
Trinn 2. SetAsync
Bruk SetAsync til å angi verdien til nøkkelen, og overstyrer alle eksisterende data som er lagret for den unike nøkkelen.
- Hvis det forrige settet med informasjon er viktig, bør du vurdere å bruke UpdateAsync, som vil bli beskrevet nedenfor.
- Følgende kode viser deg hvordan du implementerer begge metodene ": GetAsync ()" og ": SetAsync ()".
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: SetAsync (key, 90) - - setter nøkkelen til verdien, 90 lokale data_stored = datastore: GetAsync (nøkkel) - er i stand til å oppdage verdiendringen print (data_stored) - skriver ut utgangen)
Trinn 3. Bruk UpdateAsync til å returnere verdien av nøkkelen, og oppdater den med en ny verdi
Dette validerer data, og må derfor vente til serveren finner tid til å oppdatere dem. For at dette skal fungere, må du passere to parametere; den første er en streng som tar den unike nøkkelen du har satt opp: "'user_'.. player.userId", og den andre er en funksjon som tar inn den gamle verdien.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) - gjør ting slutt) slutt)
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) lokal ny = gammel eller 0 - kan være null ny = ny + 1 - legg til 1 i den gamle verdien returnere ny - returnerer den med den nye verdien slutten) slutten)
Trinn 4. Bruk IncrementAsync til å øke verdien for en nøkkel, og returnerer den inkrementerte verdien
Denne metoden fungerer bare på heltall.
Metode 3 av 3: Datalagringshendelser og oppdatering av data
Trinn 1. Angi en unik nøkkel
Det er ekstremt viktig at hver spiller har en nøkkel som er unik for dem. De vil holde på nøkkelen, som lagrer alle dataene deres. For å gjøre dette bruker vi spillerens ID. Når du har angitt datalagret, kan du bare ringe til en funksjon for å laste inn spilleren, og deretter finne spillerens ID. Koden skal se slik ut:
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId end)
Trinn 2. Oppdater dataene
Nå som du har en unik nøkkel til hver spiller, er du klar til å gjøre datalagret oppdatere og hente data. Under nøkkelen din vil du legge til en metode som passer best for dine behov. I dette tilfellet bruker vi "UpdateAsync".
- Start med en funksjon for å hjelpe serveren å forstå hva du har tenkt å gjøre.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old) lokal newValue = gammel eller 0 - kan være null newValue = newValue + 50 return newValue end) end)
Trinn 3. Gratulerer
Du har lagret og oppdatert dataene til en spiller.
Advarsler
- Når du lager datalagret for første gang, må du sørge for å ha "game: GetService (" DataStoreService ")" med riktig stor bokstav. Det vil ikke kjøre effektivt, hvis det kalles feil.
- Sørg for å vite når du skal bruke "SetAsync" og "UpdateAsync", siden bruk av feil kan gjøre ting til rot når du henter data. I de fleste tilfeller vil utviklere bruke "UpdateAsync".