Kiekvienas norėjo išsaugoti duomenis ir vėl juos įkelti kiekvieną kartą, kai žaidėjas vėl pradeda žaidimą? Nuo tada, kai duomenų atkaklumas tapo beprasmis, „ROBLOX“pristato daug funkcionalesnes duomenų saugyklas. Šis vadovas padės jums dirbti su ROBLOX duomenų saugyklomis.
Žingsniai
1 metodas iš 3: duomenų saugyklos nustatymas
Žingsnis 1. Konfigūruokite API
Tai nereikalauja jokių scenarijų, tačiau norint suaktyvinti visą duomenų saugyklos API, pirmiausia turite įgalinti prieigą prie API. Norėdami tai padaryti, eikite į skirtuką „Kurti“ir spustelėkite „Žaidimai“. Tai turėtų nukreipti jus į visas jums priklausančias dabartines žaidimų vietas. Raskite savo žaidimą ir spustelėkite krumpliaratį. Turėtų pasirodyti išskleidžiamasis meniu ir tiesiog paspauskite „Konfigūruoti“. Pažymėkite laukelį „Įgalinti„ Studio “prieigą prie API paslaugų“ir išsaugokite. Dabar turėtumėte turėti prieigą prie visos API.
Žingsnis 2. Gaukite duomenų saugyklą
Naudokite duomenų saugyklos API, kad iškviestumėte duomenų saugyklą, nes turėsime ją nurodyti. Norėdami pradėti, atidarykite scenarijų „ROBLOX“ir pavadinkite kintamąjį, kurį norėtume naudoti norėdami iškviesti nuorodą.
vietinis duomenų saugykla = žaidimas: „GetService“(„DataStoreService“): „GetDataStore“(„vardas“)
Žingsnis 3. Jei reikia, naudokite kintamąjį
Sėkmingai iškvietėte duomenų saugyklą su kintamuoju „duomenų saugykla“. Dabar, kai jums reikia gauti duomenų saugyklą, galite tiesiog pavadinti ją kintamuoju.
Atminkite, kad jei duomenų saugykla dar nebuvo sukurta, ji automatiškai sukurs naują
2 metodas iš 3: Duomenų saugojimo metodų naudojimas
Žingsnis 1. GetAsync
Naudokite „GetAsync“, kad grąžintumėte įrašo vertę duomenų saugykloje su pateiktu raktu. Būtinai suteikite kiekvienam žaidėjui unikalų raktų rinkinį, nes dviejų žaidėjų nustatymas tuo pačiu raktu pakeis jų pačių žaidimo duomenis ir sukels chaosą tarp dviejų šalių. Jei norite sužinoti, kaip nustatyti unikalų raktą, skaitykite toliau.
- Šis kodas išves nulį, nes serveris nerado jokios reikšmės, susiejančios su raktu; svarbu parodyti serveriui tiksliai tai, ką bandome išvesti, kad serveris žinotų, ką reikia rodyti.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId duomenų saugykla: GetAsync (raktas) pabaiga)
Žingsnis 2. SetAsync
Naudodami „SetAsync“nustatykite rakto vertę ir nepaisykite visų esamų unikaliojo rakto duomenų.
- Jei ankstesnis informacijos rinkinys yra svarbus, apsvarstykite galimybę naudoti „UpdateAsync“, kuris bus aprašytas toliau.
- Šis kodas parodo, kaip įgyvendinti abu metodus: „: GetAsync ()“ir „: SetAsync ()“.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId duomenų saugykla: SetAsync (raktas, 90) - - nustato raktą į vertę, 90 vietinių duomenų_įrašyta = duomenų saugykla: „GetAsync“(raktas) - gali aptikti vertės pasikeitimo atspaudą (duomenys išsaugoti) - atspausdina išvesties pabaigą)
Žingsnis 3. Naudodami „UpdateAsync“grąžinkite rakto vertę ir atnaujinkite ją nauja verte
Tai patvirtina duomenis, todėl reikia palaukti, kol serveris ras laiko juos atnaujinti. Kad tai veiktų, turėsite perduoti du parametrus; pirmasis yra eilutė, kuri paima unikalų jūsų nustatytą raktą: "'user_'.. player.userId", o antroji - funkcija, kuri perims senąją vertę.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId duomenų saugykla: UpdateAsync (raktas, funkcija (senas)) - padaryk dalykus galas) pabaiga)
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId duomenų saugykla: UpdateAsync (raktas, funkcija (senas)) vietinis naujas = senas arba 0 - gali būti nulis naujas = naujas + 1 - pridėti 1 prie senos vertės grąžinti naują - grąžina jį su nauja verte)))
Žingsnis 4. Norėdami padidinti rakto vertę, naudokite „IncrementAsync“ir grąžina padidintą reikšmę
Šis metodas tinka tik sveikiems skaičiams.
3 metodas iš 3: Duomenų saugyklos įvykiai ir duomenų atnaujinimas
Žingsnis 1. Nustatykite unikalų raktą
Labai svarbu, kad kiekvienas žaidėjas turėtų unikalų raktą. Jie laikys tą raktą, kuriame bus saugomi visi jų duomenys. Norėdami tai padaryti, mes naudojame žaidėjo ID. Nustatę duomenų saugyklą, tiesiog įjunkite grotuvo įkėlimo funkciją ir suraskite grotuvo ID. Kodas turėtų atrodyti taip:
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId pabaiga)
Žingsnis 2. Atnaujinkite duomenis
Dabar, kai turite unikalų kiekvieno žaidėjo raktą, esate pasiruošę atnaujinti duomenų saugyklą ir gauti duomenis. Po raktu norėsite pridėti metodą, kuris labiausiai tinka jūsų poreikiams. Šiuo atveju naudosime „UpdateAsync“.
- Pradėkite nuo funkcijos, padedančios serveriui suprasti, ką ketinate daryti.
local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId duomenų saugykla: UpdateAsync (raktas, funkcija (senas)) local newValue = senas arba 0 - gali būti nulis newValue = newValue + 50 return newValue end) end)
Žingsnis 3. Sveikiname
Sėkmingai išsaugojote ir atnaujinote žaidėjo duomenis.
Įspėjimai
- Kai pirmą kartą sukuriate duomenų saugyklą, įsitikinkite, kad yra „game: GetService („ DataStoreService “)“, su didžiosiomis raidėmis. Jis neveiks efektyviai, jei bus iškviestas neteisingai.
- Įsitikinkite, kad žinote, kada naudoti „SetAsync“ir „UpdateAsync“, nes naudojant netinkamą parinktį, nuskaitant duomenis viskas gali virsti netvarka. Daugeliu atvejų kūrėjai naudos „UpdateAsync“.