3 spôsoby, ako pracovať s dátovými úložiskami na Robloxe

Obsah:

3 spôsoby, ako pracovať s dátovými úložiskami na Robloxe
3 spôsoby, ako pracovať s dátovými úložiskami na Robloxe
Anonim

Každý chcel uložiť údaje a načítať ich znova zakaždým, keď sa hráč opäť zapojí do hry? Odkedy sa Data Persistence stala márnou, ROBLOX predstavuje dátové úložiská, ktoré sú oveľa funkčnejšie. Nasledujúci sprievodca vám pomôže pracovať s úložiskami dát pre ROBLOX.

Kroky

Metóda 1 z 3: Nastavenie úložiska údajov

7815950 1
7815950 1

Krok 1. Konfigurujte API

Toto nevyžaduje žiadne skriptovanie, ale aby ste mohli aktivovať všetky rozhrania API úložiska údajov, musíte najskôr povoliť prístup k rozhraniu API. Ak to chcete urobiť, prejdite na kartu Vývoj a kliknite na položku „Hry“. To by vás malo nasmerovať na všetky súčasné herné miesta, ktoré vlastníte. Nájdite svoju hru a kliknite na výstroj. Mala by sa objaviť rozbaľovacia ponuka a jednoducho stlačiť „Konfigurovať“. Začiarknite políčko „Povoliť Studio prístup k službám API“a uložte ho. Teraz by ste mali mať prístup k úplnému rozhraniu API.

7815950 2
7815950 2

Krok 2. Načítajte úložisko dát

Na volanie do úložiska údajov použite API na ukladanie údajov, pretože na to budeme musieť odkazovať. Na začiatku otvorte skript na ROBLOX a pomenujte premennú, ktorú by sme chceli použiť na vyvolanie referencie.

    lokálne úložisko dát = hra: GetService ("DataStoreService"): GetDataStore ("názov")

7815950 3
7815950 3

Krok 3. Podľa potreby použite premennú

Úložisko dát ste úspešne zavolali s premennou „datastore“. Teraz, kedykoľvek potrebujete obnoviť dátové úložisko, ho môžete jednoducho pomenovať podľa premennej.

Upozorňujeme, že ak úložisko údajov ešte nebolo vytvorené, automaticky vytvorí nové

Metóda 2 z 3: Použitie metód ukladania údajov

7815950 4
7815950 4

Krok 1. GetAsync

GetAsync použite na vrátenie hodnoty záznamu v dátovom úložisku s daným kľúčom. Uistite sa, že každému hráčovi dáte jedinečnú sadu kľúčov, pretože nastavenie dvoch hráčov tým istým kľúčom prepíše ich vlastné údaje v hre, čo spôsobí chaos medzi oboma stranami. Ak chcete vedieť, ako nastaviť jedinečný kľúč, čítajte ďalej.

  • Nasledujúci kód bude nulový, pretože server nenašiel žiadnu hodnotu spájajúcu s kľúčom; je dôležité ukázať serveru presne to, čo sa pokúšame vytvoriť, aby server vedel, čo je potrebné zobraziť.
  • lokálne úložisko dát: hra: GetService ("DataStoreService"): GetDataStore ("meno") game. Players. PlayerAdded: connect (funkcia (hráč) miestny kľúč = "user_".. player.userId dátový sklad: GetAsync (kľúč) koniec)

7815950 5
7815950 5

Krok 2. SetAsync

Použite SetAsync na nastavenie hodnoty kľúča a prepíše všetky existujúce údaje uložené pre jedinečný kľúč.

  • Ak je predchádzajúci súbor informácií dôležitý, zvážte použitie programu UpdateAsync, ktorý bude popísaný nižšie.
  • Nasledujúci kód ukazuje, ako implementovať metódy „: GetAsync ()“a „: SetAsync ()“.
  • lokálne dátové úložisko = hra: GetService ("DataStoreService"): GetDataStore ("názov") game. Players. PlayerAdded: connect (funkcia (hráč) lokálny kľúč = "user_".. player.userId dátový sklad: SetAsync (kľúč, 90) - - nastaví kľúč na hodnotu, 90 local data_stored = úložisko dát: GetAsync (kľúč) - je schopný zistiť zmenu hodnoty print (data_stored) - vytlačí výstupný koniec)

  • Poznámka: Toto nebude fungovať, pokiaľ nebudete mať povolený prístup API. Za týmto účelom si prečítajte prvé pokyny v tejto príručke.
7815950 6
7815950 6

Krok 3. Na vrátenie hodnoty kľúča použite UpdateAsync a aktualizujte ho na novú hodnotu

Toto overuje údaje, a preto musí počkať, kým si server nenájde čas na ich aktualizáciu. Aby to fungovalo, budete musieť odovzdať dva parametre; prvý je reťazec, ktorý preberá jedinečný kľúč, ktorý ste nastavili: „'user_'.. player.userId , a druhý je funkcia, ktorá prevezme starú hodnotu.

    lokálne úložisko dát: hra: GetService ("DataStoreService"): GetDataStore ("meno") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) - robiť veci koniec) koniec)

  • V tomto prípade sme starú hodnotu nazvali „starou“. V rámci tejto funkcie budeme musieť vytvoriť premennú, ktorá bude zodpovedať za naše aktualizované skóre, a potom ju vrátiť, aby mohla zobrazovať naše nové skóre.
  • lokálne úložisko dát: hra: GetService ("DataStoreService"): GetDataStore ("meno") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) local new = old or 0 - could be nil new = new + 1 - add 1 to the old value return new - returns it with the new value end) end)

  • Ak kľúč neexistuje alebo nie je priradený správne, server sa vráti na nulu.
  • Ak funkcia neexistuje, aktualizácia sa zruší.
7815950 7
7815950 7

Krok 4. Použite IncrementAsync na zvýšenie hodnoty pre kľúč a vráti zvýšenú hodnotu

Táto metóda funguje iba na celé čísla.

Metóda 3 z 3: Udalosti ukladania údajov a aktualizácia údajov

7815950 8
7815950 8

Krok 1. Nastavte jedinečný kľúč

Je mimoriadne dôležité, aby každý hráč mal kľúč, ktorý je pre neho jedinečný. Držia sa tohto kľúča, ktorý uloží všetky ich údaje. Na tento účel používame ID hráča. Hneď ako nastavíte úložisko dát, jednoducho aktivujte funkciu načítania prehrávača a potom vyhľadajte ID hráča. Kód by mal vyzerať nasledovne:

    lokálne dátové úložisko = hra: GetService ("DataStoreService"): GetDataStore ("meno") game. Players. PlayerAdded: connect (funkcia (hráč) miestny kľúč = "user_".. player.userId koniec)

  • Tým sa automaticky vytvorí kľúč, ktorý je jedinečný iba pre tohto hráča, pretože každý hráč bude mať jedno jedinečné ID. Na „user_“nezáleží.
7815950 9
7815950 9

Krok 2. Aktualizujte údaje

Teraz, keď máte pre každého hráča jedinečný kľúč, ste pripravení aktualizovať a načítať údaje v úložisku dát. Pod svoj kľúč budete chcieť pridať metódu, ktorá je najvhodnejšia pre vaše potreby. V takom prípade použijeme „UpdateAsync“.

  • Začnite s funkciou, ktorá pomôže serveru pochopiť, čo máte v úmysle urobiť.
  • miestne úložisko dát: hra: GetService ("DataStoreService"): GetDataStore ("meno") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datastore: UpdateAsync (key, function (old)) local newValue = old or 0 - could be nil newValue = newValue + 50 return newValue end) end)

  • V tejto funkcii sme nastavili inú funkciu, starú. „staré“boli naše predtým uložené údaje. V tomto prípade server vždy, keď hráč vstúpi na server, nájde svoj kľúč, ktorým je jeho ID používateľa, a aktualizuje údaje o 50 bodov, pričom sa vráti a zobrazí túto novú hodnotu.
7815950 10
7815950 10

Krok 3. Blahoželáme

Úspešne ste uložili a aktualizovali údaje hráča.

Varovania

  • Pri prvom vytváraní dátového úložiska sa ubezpečte, že máte „game: GetService (“DataStoreService “)“so správnou kapitalizáciou. Ak je nesprávne zavolaný, nebude fungovať efektívne.
  • Uistite sa, že viete, kedy použiť „SetAsync“a „UpdateAsync“, pretože použitie nesprávneho súboru môže pri získavaní údajov spôsobiť zmätok. Vo väčšine prípadov vývojári použijú „UpdateAsync“.

Odporúča: