3 způsoby, jak pracovat s datovými úložišti na Roblox

Obsah:

3 způsoby, jak pracovat s datovými úložišti na Roblox
3 způsoby, jak pracovat s datovými úložišti na Roblox
Anonim

Každý chtěl uložit data a znovu je načíst pokaždé, když hráč znovu vstoupí do hry? Od té doby, co se Data Persistence stala zbytečnou, představuje ROBLOX datová úložiště, která jsou mnohem funkčnější. Následující průvodce vám umožní pracovat s datovými úložišti pro ROBLOX.

Kroky

Metoda 1 ze 3: Nastavení úložiště dat

7815950 1
7815950 1

Krok 1. Konfigurujte API

To nezahrnuje žádné skriptování, ale abyste mohli aktivovat všechny API úložiště dat, musíte nejprve povolit přístup k API. Chcete -li to provést, přejděte na kartu Vývoj a klikněte na „Hry“. To by vás mělo nasměrovat na všechna aktuální herní místa, která vlastníte. Najděte svou hru a klikněte na ozubené kolo. Měla by se objevit rozevírací nabídka a jednoduše stisknout „Konfigurovat“. Zaškrtněte políčko „Povolit přístup aplikace Studio ke službám API“a uložte. Nyní byste měli mít přístup k úplnému API.

7815950 2
7815950 2

Krok 2. Načíst úložiště dat

K volání úložiště dat použijte API Data Store, protože na něj budeme muset odkazovat. Chcete -li začít, otevřete skript na ROBLOX a pojmenujte proměnnou, kterou bychom chtěli použít k volání odkazu.

    lokální úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("název")

7815950 3
7815950 3

Krok 3. Proměnnou použijte podle potřeby

Úspěšně jste zavolali do úložiště dat s proměnnou „datastore“. Nyní, kdykoli potřebujete načíst datové úložiště, jej můžete jednoduše pojmenovat podle jeho proměnné.

Upozorňujeme, že pokud úložiště dat ještě nebylo vytvořeno, automaticky vytvoří nové

Metoda 2 ze 3: Použití metod ukládání dat

7815950 4
7815950 4

Krok 1. GetAsync

Pomocí GetAsync vrátíte hodnotu záznamu v datovém úložišti s daným klíčem. Dejte každému hráči jedinečnou sadu klíčů, protože nastavení dvou hráčů stejným klíčem přepíše jejich vlastní data ve hře, což způsobí chaos mezi oběma stranami. Pokud chcete vědět, jak nastavit jedinečný klíč, čtěte dále.

  • Následující kód bude nulový, protože server nemohl najít žádnou hodnotu spojující klíč; je důležité ukázat serveru přesně to, co se snažíme vygenerovat, aby server věděl, co je třeba zobrazit.
  • místní úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) local key = "user_".. player.userId datastore: GetAsync (key) end)

7815950 5
7815950 5

Krok 2. SetAsync

Použijte SetAsync k nastavení hodnoty klíče a přepíše všechna existující data uložená pro jedinečný klíč.

  • Pokud je předchozí sada informací důležitá, zvažte použití UpdateAsync, který bude popsán níže.
  • Následující kód ukazuje, jak implementovat metody „: GetAsync ()“a „: SetAsync ()“.
  • lokální úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) local key = "user_".. player.userId datastore: SetAsync (key, 90) - - nastaví klíč na hodnotu, 90 local data_stored = úložiště dat: GetAsync (klíč) - je schopen detekovat změnu hodnoty tisk (data_stored) - vytiskne konec výstupu)

  • Poznámka: To nebude fungovat, pokud nebudete mít povolený přístup API. Chcete -li to provést, přečtěte si první pokyny této příručky.
7815950 6
7815950 6

Krok 3. Pomocí UpdateAsync vraťte hodnotu klíče a aktualizujte ji novou hodnotou

Toto ověřuje data, a proto musí počkat, až si server najde čas na jejich aktualizaci. Aby to fungovalo, budete muset předat dva parametry; první je řetězec, který přebírá jedinečný klíč, který jste nastavili: „'user_'.. player.userId , a druhý je funkce, která převezme starou hodnotu.

    místní úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) místní klíč = "uživatel_".. player.userId úložiště dat: UpdateAsync (klíč, funkce (starý)) - dělat věci konec) konec)

  • V tomto případě jsme starou hodnotu nazvali „stará“. Uvnitř této funkce budeme muset vytvořit proměnnou, která bude odpovídat za naše aktualizované skóre, a poté ji vrátit, aby mohla zobrazit naše nové skóre.
  • místní úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) místní klíč = "uživatel_".. player.userId úložiště dat: UpdateAsync (klíč, funkce (starý)) 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)

  • Pokud klíč neexistuje nebo není správně přiřazen, server se vrátí na nulu.
  • Pokud funkce neexistuje, aktualizace bude zrušena.
7815950 7
7815950 7

Krok 4. Pomocí IncrementAsync zvyšte hodnotu klíče a vrátí inkrementovanou hodnotu

Tato metoda funguje pouze na celá čísla.

Metoda 3 ze 3: Události úložiště dat a aktualizace dat

7815950 8
7815950 8

Krok 1. Nastavte jedinečný klíč

Je nesmírně důležité, aby každý hráč měl klíč, který je pro něj jedinečný. Budou držet ten klíč, který bude ukládat všechna jejich data. K tomu používáme ID hráče. Jakmile nastavíte úložiště dat, jednoduše vyvolejte funkci pro načtení přehrávače a poté najděte ID hráče. Kód by měl vypadat následovně:

    lokální datové úložiště = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) local key = "user_".. player.userId end)

  • Tím se automaticky vytvoří klíč, který je jedinečný pouze pro tohoto hráče, protože každý hráč bude mít jedno jedinečné ID. Na „user_“nezáleží.
7815950 9
7815950 9

Krok 2. Aktualizujte data

Nyní, když máte pro každého hráče jedinečný klíč, jste připraveni provést aktualizaci úložiště dat a načtení dat. Pod svůj klíč budete chtít přidat metodu, která je nejvhodnější pro vaše potřeby. V tomto případě použijeme „UpdateAsync“.

  • Začněte funkcí, která pomůže serveru pochopit, co máte v úmyslu udělat.
  • místní úložiště dat = hra: GetService ("DataStoreService"): GetDataStore ("jméno") game. Players. PlayerAdded: connect (funkce (hráč) místní klíč = "uživatel_".. player.userId úložiště dat: UpdateAsync (klíč, funkce (starý)) local newValue = old or 0 - could be nil newValue = newValue + 50 return newValue end) end)

  • V této funkci jsme nastavili další funkci, starou. „stará“byla naše dříve uložená data. V tomto scénáři by server pokaždé, když vstoupil na server, vyhledal svůj klíč, což je jejich ID uživatele, a aktualizoval by data o 50 bodů, čímž by se vrátil a zobrazil tuto novou hodnotu.
7815950 10
7815950 10

Krok 3. Gratulujeme

Úspěšně jste uložili a aktualizovali data hráče.

Varování

  • Při prvním vytváření úložiště dat se ujistěte, že máte "game: GetService (" DataStoreService ")" se správnou kapitalizací. Pokud je nesprávně volán, nebude fungovat efektivně.
  • Ujistěte se, že víte, kdy použít „SetAsync“a „UpdateAsync“, protože použití nesprávného může při načítání dat udělat z věcí nepořádek. Ve většině případů vývojáři použijí „UpdateAsync“.

Doporučuje: