3 veidi, kā strādāt ar datu krātuvēm vietnē Roblox

Satura rādītājs:

3 veidi, kā strādāt ar datu krātuvēm vietnē Roblox
3 veidi, kā strādāt ar datu krātuvēm vietnē Roblox
Anonim

Ikviens gribēja saglabāt datus un ielādēt tos vēlreiz katru reizi, kad spēlētājs atkal ienāk spēlē? Kopš datu noturība ir kļuvusi veltīga, ROBLOX ievieš datu krātuves, kas darbojas daudz efektīvāk. Šis ceļvedis ļaus jums strādāt ar ROBLOX datu krātuvēm.

Soļi

1. metode no 3: Datu krātuves iestatīšana

7815950 1
7815950 1

1. darbība. Konfigurējiet API

Tas neietver nekādu skriptu rakstīšanu, taču, lai aktivizētu visu datu krātuves API, vispirms ir jāiespējo API piekļuve. Lai to izdarītu, dodieties uz cilni Izstrādāt un noklikšķiniet uz "Spēles". Tam vajadzētu novirzīt jūs uz visām pašreizējām spēļu vietām, kas jums pieder. Atrodiet savu spēli un noklikšķiniet uz zobrata. Tur vajadzētu parādīties nolaižamajā izvēlnē un vienkārši nospiediet "Konfigurēt". Atzīmējiet izvēles rūtiņu "Iespējot Studio piekļuvi API pakalpojumiem" un saglabājiet. Tagad jums vajadzētu būt pieejamai pilnai API.

7815950 2
7815950 2

2. darbība. Izgūstiet datu krātuvi

Izmantojiet datu veikala API, lai izsauktu datu krātuvi, jo mums uz to būs jāatsaucas. Lai sāktu, atveriet ROBLOX skriptu un nosauciet mainīgo, kuru mēs vēlētos izmantot, lai izsauktu atsauci.

    vietējā datu krātuve = spēle: GetService ("DataStoreService"): GetDataStore ("nosaukums")

7815950 3
7815950 3

Solis 3. Ja nepieciešams, izmantojiet mainīgo

Jūs esat veiksmīgi izsaucis datu krātuvi ar mainīgo "datu krātuve". Tagad, kad nepieciešams izgūt datu krātuvi, varat to vienkārši nosaukt pēc tā mainīgā.

Lūdzu, ņemiet vērā: ja datu krātuve vēl nav izveidota, tā automātiski izveidos jaunu

2. metode no 3: datu glabāšanas metožu izmantošana

7815950 4
7815950 4

1. darbība. GetAsync

Izmantojiet GetAsync, lai ar norādīto atslēgu atgrieztu datu krātuves ieraksta vērtību. Noteikti dodiet katram spēlētājam unikālu atslēgu komplektu, jo divu spēlētāju vienas atslēgas iestatīšana ignorēs viņu pašu spēles datus, izraisot haosu starp abām pusēm. Ja vēlaties uzzināt, kā iestatīt unikālu atslēgu, lasiet tālāk.

  • Šis kods izvadīs nulli, jo serveris nevarēja atrast vērtību, kas saistītu ar atslēgu; ir svarīgi parādīt serverim tieši to, ko mēs cenšamies izvadīt, lai serveris zinātu, kas ir jāparāda.
  • local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datu krātuve: GetAsync (atslēga) beigas)

7815950 5
7815950 5

Solis 2. SetAsync

Izmantojiet SetAsync, lai iestatītu atslēgas vērtību, un ignorē visus esošos unikālajai atslēgai saglabātos datus.

  • Ja iepriekšējā informācijas kopa ir svarīga, apsveriet iespēju izmantot UpdateAsync, kas tiks mācīts tālāk.
  • Šis kods parāda, kā ieviest abas metodes: ": GetAsync ()" un ": SetAsync ()".
  • local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datu krātuve: SetAsync (atslēga, 90) - - iestata atslēgu uz vērtību, 90 local data_stored = datu krātuve: GetAsync (atslēga) - spēj noteikt vērtību izmaiņu izdruku (data_stored) - izdrukā izvades beigas)

  • Piezīme. Tas nedarbosies, ja vien nebūs iespējota API piekļuve. Lai to izdarītu, izlasiet šīs rokasgrāmatas pirmo instrukciju.
7815950 6
7815950 6

3. solis. Izmantojiet UpdateAsync, lai atgrieztu atslēgas vērtību, un atjaunina to ar jaunu vērtību

Tas apstiprina datus, un tāpēc jāgaida, līdz serveris atradīs laiku to atjaunināšanai. Lai tas darbotos, jums būs jānokārto divi parametri; pirmā ir virkne, kas aizņem jūsu iestatīto unikālo atslēgu: "'user_'.. player.userId", un otrā ir funkcija, kas ņems vērā veco vērtību.

    local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datu krātuve: UpdateAsync (atslēga, funkcija (veca)) - dari lietas beigas) beigas)

  • Šajā gadījumā mēs nosaucām veco vērtību par “veco”. Šīs funkcijas ietvaros mums būs jāizveido mainīgais, kas ņems vērā mūsu atjaunināto rezultātu, un pēc tam jāatgriež tas, lai tas varētu parādīt mūsu jauno rezultātu.
  • local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datu krātuve: UpdateAsync (atslēga, funkcija (vecais)) vietējais jauns = vecs vai 0 - varētu būt nulle jauns = jauns + 1 - pievienot 1 vecajai vērtībai atgriezt jaunu - atgriež to ar jauno vērtību beigas) beigas)

  • Ņemiet vērā, ka serveris atgriezīs nulli, ja atslēga neeksistē vai nav pareizi piešķirta.
  • Ja funkcija neeksistē, atjaunināšana tiks atcelta.
7815950 7
7815950 7

4. solis. Izmantojiet IncrementAsync, lai palielinātu atslēgas vērtību, un atgriež palielināto vērtību

Šī metode darbojas tikai ar veseliem skaitļiem.

3. metode no 3: Datu krātuves notikumi un datu atjaunināšana

7815950 8
7815950 8

1. solis. Iestatiet unikālu atslēgu

Ir ārkārtīgi svarīgi, lai katram spēlētājam būtu unikāla atslēga. Viņi turēs šo atslēgu, kurā tiks saglabāti visi viņu dati. Lai to izdarītu, mēs izmantojam spēlētāja ID. Kad esat iestatījis datu krātuvi, vienkārši izmantojiet funkciju, lai ielādētu atskaņotāju, un pēc tam atrodiet atskaņotāja ID. Kodam vajadzētu izskatīties šādi:

    local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId beigas)

  • Tas automātiski izveidos atslēgu, kas ir unikāla tikai šim spēlētājam, jo katram spēlētājam būs viens unikāls ID. "Lietotājam_" nebūs nozīmes.
7815950 9
7815950 9

2. solis. Atjauniniet datus

Tagad, kad katram spēlētājam ir unikāla atslēga, jūs esat gatavs atjaunināt datu krātuvi un izgūt datus. Zem atslēgas vēlaties pievienot metodi, kas ir vispiemērotākā jūsu vajadzībām. Šajā gadījumā mēs izmantosim "UpdateAsync".

  • Sāciet ar funkciju, kas palīdz serverim saprast, ko jūs plānojat darīt.
  • local datastore = game: GetService ("DataStoreService"): GetDataStore ("name") game. Players. PlayerAdded: connect (function (player) local key = "user_".. player.userId datu krātuve: UpdateAsync (atslēga, funkcija (vecais)) local newValue = vecs vai 0 - varētu būt nulle newValue = newValue + 50 atgriezt newValue beigas) end)

  • Šajā funkcijā mēs iestatījām citu veco funkciju. "veci" bija mūsu iepriekš saglabātie dati. Šādā gadījumā katru reizi, kad spēlētājs ienāca serverī, serveris atradīs savu atslēgu, kas ir viņu lietotāja ID, un atjauninās datus par 50 punktiem, atgriežot un parādot šo jauno vērtību.
7815950 10
7815950 10

Solis 3. Apsveicam

Jūs esat veiksmīgi saglabājis un atjauninājis spēlētāja datus.

Brīdinājumi

  • Pirmoreiz veidojot savu datu krātuvi, pārliecinieties, vai ir “game: GetService (“DataStoreService”)” ar pareizo lielo burtu lietojumu. Tas nedarbosies efektīvi, ja tas tiks izsaukts nepareizi.
  • Noteikti ziniet, kad lietot “SetAsync” un “UpdateAsync”, jo, izmantojot nepareizu, datu izgūšanas laikā lietas var pārvērsties juceklī. Vairumā gadījumu izstrādātāji izmantos "UpdateAsync".

Ieteicams: