Para armazenar dados, você pode usar armazenamento de dados com o DataStoreService ou armazenamento de memória com o 2>Class.MemoryStoreService2> .
Alternativamente, você também pode usar tipos e variáveis Lua para armazenar dados em memória em Lua, sem usar os serviços de armazenamento de dados ou memória.
Quando usar armazenamento de dados
O DataStoreService armazena dados de longo prazo que precisam durar entre sessões, como o progresso do usuário ou itens de inventário. Os armazenamentos de dados são consistentes por experiência, para que todos os servidores para cada local dentro de uma experiência possam acessar e alterar os mesmos dados. Existem dois tipos de armazenamentos de dados: padrão e solicitado. Armazenamento de dados padrão pode armazenar dados como números,cordas e tabelas que não precisam ser classificados ou classificados. Este armazenamento é armazenado como pares de chave-valor, onde cada entrada é armazenada sob uma chave que é única em seu armazenamento de dados e que você pode recuperar, atualizaçãoou excluir.
Armazenamento de dados ordenados só pode armazenar números. Cada entrada é armazenada sob uma chave que é única dentro de seu armazenamento de dados e que você pode recuperar, atualizaçãoou excluir. Você pode classificar e agrupar este dado numericamente e recuperá-lo em ordem crescente ou decrescente com base nos valores numéricos armazenados. Para mais informações, see Armazenamento de dados ordenados .
Armazenamento de dados padrão > | Armazenamento de dados ordenado | |
---|---|---|
Tipo de datos | Números, cadenas, booleanos y tablas. | Sólo números. |
Ejemplos de uso común | Progreso del usuario, artículos de inventario y configuración de experiencia. | Sistemas de clasificación de todos los tiempos y tablas de clasificación. A diferencia de las tablas de clasificación en los almacenes de memoria, los datos de esta tabla de clasificación son permanentes. |
Respaldo de la versión pasada | Administrar automáticamente las versiones previas de sus datos durante 30 días. | No gestiona las versiones previas de sus datos. |
Quando usar armazenamento de memória
O MemoryStoreService é um serviço de alto desempenho e baixa latência que armazena dados temporários que precisam ser atualizados ou acessados com frequência, como globais leaderboards ou filas de matchmaking. Com armazenamento de memória, todos os servidores para cada local dentro de uma experiência podem acessar e alterar os mesmos dados rapidamente e frequentemente. Os dados em um armazenamento de memória expiram após um determinado período de
Embora os armazenamentos de memória armazenem dados temporários, eles também suportam recursos permanentes, como um mercado global. O mercado é permanente, mas os itens à venda dentro dele têm uma data de expiração.
Armazenamento de memória | |
---|---|
Tipo de datos | Números, cadenas, booleanos y tablas que no necesitan persistir más de 45 días. |
Ejemplos de uso común | emparejamientobasado en habilidades, estados de partida para juegos multijugador, tablas de clasificación diarias y mensuales. |
Quando usar armazenamento em memória em Lua
Você pode usar armazenamento em memória em Lua para armazenar dados temporários que precisam ser acessados com latência mínima e sem o custo de fazer chamadas de serviço externas para armazenamentos de dados ou memórias. Não há etapas extras necessárias para configurar armazenamento em memória como está construído em padrão no Lua.
Armazenamento em memória em Lua | ||
---|---|---|
Tipo de datos | Números, cadenas, booleanos y tablas. | |
Ejemplos de uso común | Los datos que solo son relevantes para una sola sesión de servidor y que puedes actualizar instantáneamente sin preocuparte por la persistencia. | Ejemplo: Buffs activos, puntos temporales y progreso de misiones que se restablecen cuando el usuario salga de la experiencia. |
Los valores que cambian con frecuencia, como contadores, temporizadores o banderas de estado. | Ejemplo: Barra de salud de un usuario que se actualiza con cada golpe. | |
Evitar las limitaciones de la tasa de uso para las operaciones de alta frecuencia en experiencias activas grandes. | Ejemplo: una experiencia con decenas de usuarios interactuando con el mismo objeto. | |
Los datos que impulsan la lógica del juego, como variables temporales o estados de potenciador donde el acceso rápido sin demora es esencial. | Ejemplo: El estado de ataque actual de un usuario o la salud actual de un enemigo, que debe ser accesible instantáneamente y sin la latencia asociada a la llamada de servicios externos como almacenes de datos o memoria. | |
Interacciones multijugador que solo importan dentro de un solo servidor. | Ejemplo: Un objetivo compartido en una experiencia de misión cooperativa. |