3 formas de trabajar con almacenes de datos en Roblox

Tabla de contenido:

3 formas de trabajar con almacenes de datos en Roblox
3 formas de trabajar con almacenes de datos en Roblox
Anonim

¿Todos querían guardar datos y volver a cargarlos cada vez que un jugador entra de nuevo al juego? Desde que la persistencia de datos se ha vuelto inútil, ROBLOX presenta almacenes de datos que son mucho más funcionales. La siguiente guía práctica le permitirá trabajar con almacenes de datos para ROBLOX.

Pasos

Método 1 de 3: Configuración del almacén de datos

7815950 1
7815950 1

Paso 1. Configure la API

Esto no implica ningún tipo de secuencia de comandos, pero para activar toda la API del almacén de datos, primero debe habilitar el acceso a la API. Para hacer esto, vaya a la pestaña Desarrollar y haga clic en "Juegos". Esto debería dirigirlo a todos los lugares de juego actuales que posee. Encuentra tu juego y haz clic en el engranaje. Debería aparecer un menú desplegable y simplemente presione "Configurar". Marque la casilla habilitada "Habilitar el acceso de Studio a los servicios API" y guarde. Ahora debería tener acceso a la API completa.

7815950 2
7815950 2

Paso 2. Recupere el almacén de datos

Utilice la API del almacén de datos para llamar al almacén de datos, ya que necesitaremos hacer referencia a él. Para comenzar, abra un script en ROBLOX y nombre una variable que nos gustaría usar para llamar a la referencia.

    almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre")

7815950 3
7815950 3

Paso 3. Utilice la variable según sea necesario

Ha llamado correctamente al almacén de datos con la variable "almacén de datos". Ahora, siempre que necesite recuperar el almacén de datos, simplemente puede nombrarlo por su variable.

Tenga en cuenta que si aún no se ha creado un almacén de datos, se creará automáticamente uno nuevo

Método 2 de 3: uso de métodos de almacenamiento de datos

7815950 4
7815950 4

Paso 1. GetAsync

Use GetAsync para devolver el valor de la entrada en el almacén de datos con la clave dada. Asegúrate de darle a cada jugador un conjunto único de claves, ya que configurar dos jugadores con la misma clave anulará sus propios datos en el juego, causando caos entre las dos partes. Si desea saber cómo configurar una clave única, siga leyendo.

  • El siguiente código dará como resultado nil, porque el servidor no pudo encontrar ningún valor que se vincule a la clave; Es importante mostrarle al servidor exactamente lo que estamos tratando de generar, de modo que el servidor sepa lo que debe mostrarse.
  • almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre") juego. Players. PlayerAdded: conectar (función (jugador) clave local = "usuario_".. almacén de datos player.userId: GetAsync (clave) final)

7815950 5
7815950 5

Paso 2. SetAsync

Use SetAsync para establecer el valor de la clave y anula todos los datos existentes almacenados para la clave única.

  • Si el conjunto de información anterior es importante, considere usar UpdateAsync, que se enseñará a continuación.
  • El siguiente código muestra cómo implementar los métodos ": GetAsync ()" y ": SetAsync ()".
  • almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre") juego. Players. PlayerAdded: connect (función (jugador) clave local = "usuario_".. almacén de datos player.userId: SetAsync (clave, 90) - - establece la clave en el valor, 90 local data_stored = datastore: GetAsync (clave) - es capaz de detectar el cambio de valor imprimir (data_stored) - imprime el final de la salida)

  • Nota: Esto no funcionará, a menos que tenga habilitado el acceso a la API. Para hacer esto, lea las primeras instrucciones de esta guía.
7815950 6
7815950 6

Paso 3. Utilice UpdateAsync para devolver el valor de la clave y actualizarlo con un nuevo valor

Esto valida los datos y, por lo tanto, debe esperar hasta que el servidor pueda encontrar el tiempo para actualizarlos. Para que esto funcione, deberá pasar dos parámetros; la primera es una cadena que toma la clave única que ha configurado: "'user_'.. player.userId", y la segunda es una función que tomará el valor anterior.

    almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre") juego. Players. PlayerAdded: connect (función (jugador) clave local = "usuario_".. player.userId almacén de datos: UpdateAsync (clave, función (antiguo) - terminar las cosas) terminar)

  • En este caso, llamamos "antiguo" al valor antiguo. Dentro de esta función, necesitaremos crear una variable que tenga en cuenta nuestra puntuación actualizada y luego devolverla para que pueda mostrar nuestra nueva puntuación.
  • almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre") juego. Players. PlayerAdded: conectar (función (jugador) clave local = "usuario_".. player.userId almacén de datos: UpdateAsync (clave, función (antiguo) local nuevo = antiguo o 0 - podría ser nulo nuevo = nuevo + 1 - añadir 1 al valor antiguo devolver nuevo - devolverlo con el nuevo valor end) end)

  • Tenga en cuenta que el servidor devolverá nil si la clave no existe o no está asignada correctamente.
  • Si la función no existe, la actualización se cancelará.
7815950 7
7815950 7

Paso 4. Utilice IncrementAsync para incrementar el valor de una clave y devuelve el valor incrementado

Este método solo funciona con números enteros.

Método 3 de 3: Eventos de almacenamiento de datos y actualización de datos

7815950 8
7815950 8

Paso 1. Establezca una clave única

Es extremadamente vital que cada jugador tenga una clave que sea única para ellos. Conservarán esa clave, que almacenará todos sus datos. Para hacer esto, usamos la identificación del jugador. Una vez que haya configurado el almacén de datos, simplemente llame a una función para cargar el reproductor y luego busque la identificación del jugador. El código debe tener el siguiente aspecto:

    local datastore = juego: GetService ("DataStoreService"): GetDataStore ("nombre") game. Players. PlayerAdded: connect (función (jugador) clave local = "user_".. player.userId end)

  • Esto creará automáticamente una clave única para ese jugador, ya que cada jugador tendrá una identificación única. El "user_" no importará.
7815950 9
7815950 9

Paso 2. Actualice los datos

Ahora que tiene una clave única para cada jugador, está listo para hacer que el almacén de datos se actualice y recupere datos. Debajo de su clave, querrá agregar un método que sea más adecuado a sus necesidades. En este caso, usaremos "UpdateAsync".

  • Comience con una función para ayudar al servidor a comprender lo que pretende hacer.
  • almacén de datos local = juego: GetService ("DataStoreService"): GetDataStore ("nombre") juego. Players. PlayerAdded: connect (función (jugador) clave local = "usuario_".. player.userId almacén de datos: UpdateAsync (clave, función (antiguo) local newValue = antiguo o 0 - podría ser nulo newValue = newValue + 50 return newValue end) end)

  • En esta función, configuramos otra función, antigua. "antiguo" eran nuestros datos previamente guardados. En este escenario, cada vez que un jugador ingresa al servidor, el servidor ubicaría su clave, que es su ID de usuario, y actualizaría los datos en 50 puntos, devolviendo y mostrando ese nuevo valor.
7815950 10
7815950 10

Paso 3. ¡Felicitaciones

Has almacenado y actualizado correctamente los datos de un jugador.

Advertencias

  • Cuando cree su almacén de datos por primera vez, asegúrese de tener "juego: GetService (" DataStoreService ")", con las mayúsculas correctas. No funcionará de manera eficiente si se llama incorrectamente.
  • Asegúrese de saber cuándo usar "SetAsync" y "UpdateAsync", ya que usar el incorrecto puede convertir las cosas en un desastre al recuperar datos. En la mayoría de los casos, los desarrolladores utilizarán "UpdateAsync".

Recomendado: