En este documento, se explica cómo integrar las estadísticas de juego en tu juego con Google Play Console. Se abarcan los formatos de archivo CSV y archivo ZIP esenciales, y se describe cómo crearlos, importarlos y administrarlos.
Cómo crear o importar eventos
Existen dos maneras de agregar eventos por primera vez con Google Play Console:
- Crear un evento: Agrega un evento a la vez.
- Importar eventos: Importa varios eventos.
Crea un evento
Para crear un evento para un juego, sigue estos pasos:
- En Google Play Console, selecciona un juego.
- En la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego), selecciona Agregar un evento > Crear un evento.
- En la página Crear un evento, completa el formulario.
- Haz clic en Guardar cambios.
Importar eventos
Para agregar múltiples eventos a tu juego a la vez, sigue estos pasos:
- Crea el archivo CSV de eventos PlayerGameEvent.csv.
- En Google Play Console, selecciona un juego.
- En la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego), selecciona Agregar un evento > Importar mediante CSV.
- En la página Configuración de eventos, suelta el archivo CSV para subirlo.
- Después de crear un evento, configura las estadísticas.
Crear o importar estadísticas
Existen dos maneras de agregar estadísticas por primera vez con Google Play Console:
- Crear una estadística: Agrega una estadística a la vez.
- Importar estadísticas: Importa varias estadísticas.
Crear una estadística
Para crear una estadística de un juego, completa estos pasos:
- En Google Play Console, selecciona un juego.
- En la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego), selecciona Agregar una estadística > Crear una estadística.
- En la página Crear una estadística, completa el formulario.
- Haz clic en Guardar cambios.
- Después de crear una estadística, publica tu juego.
Estadísticas de importación
Para importar estadísticas, sigue estos pasos:
- Crea el archivo ZIP que contenga los archivos de íconos, localizaciones y estadísticas según los lineamientos de archivos ZIP para estadísticas.
- En Google Play Console, selecciona un juego.
- En la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego), selecciona Agregar una estadística > Importar mediante ZIP.
- En la página Configuración de las estadísticas de juego, suelta el archivo ZIP para subirlo.
- Después de subir todas las estadísticas, publica el juego.
Prueba las estadísticas de juego
Para verificar que las estadísticas de juego funcionen según lo previsto, sigue estos pasos para probarlas:
- Abre la app de Google Play Store.
- Accede a tu perfil de Play Juegos en la app de Google Play Store.
- Consulta tus estadísticas de juego en tu perfil de gamer.
Consulta los registros en tu dispositivo
Para verificar que las Estadísticas de juego funcionen según lo previsto, activa los registros en tu dispositivo:
Habilita la depuración de adb en tu dispositivo y ejecuta los siguientes comandos en una terminal:
adb shell setprop log.tag.Games INFO adb logcat -s "PlayGamesServices[GameStatsAgent]:I"
Verifica que aparezca un mensaje de registro correcto, como se muestra en el siguiente ejemplo:
Successfully uploaded batch of X events.
Nota: Debido a que la API admite cargas parciales, este registro de información indica que se procesó el lote. Si algún evento individual dentro del lote no superó la validación del esquema, un registro de errores precederá este mensaje.
Si alguno de los eventos enviados no pasa la validación, verás un mensaje de error con los detalles del problema:
BatchRecordEvents validation failed for X event(s): ...
Publica las estadísticas de juego
Una vez que termines de probar el juego, deberás publicarlo. Todos los eventos y las estadísticas del juego se publicarán con él.
Para publicar, sigue estos pasos:
- En Google Play Console, selecciona un juego.
- En la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego), haz clic en Revisar y publicar.
- En la página Servicios de Play Games - Publicación (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Publicación), revisa las acciones y corrige los problemas.
- Haz clic en Publicar. Se publicarán todas tus Estadísticas de juego.
Editar Estadísticas de juego
Si ya tienes Estadísticas de juego y quieres editarlas, sigue estos pasos:
- En Google Play Console, selecciona un juego.
- Ve a la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego).
- Para editar un evento, sigue estos pasos:
- En la sección Configuración de eventos, selecciona un evento.
- Puedes agregar o borrar propiedades de eventos.
- No puedes editar el Nombre del evento.
- Haz clic en Guardar cambios.
- Para editar una estadística, sigue estos pasos:
- En la sección Configuración de las estadísticas de juego, selecciona una estadística.
- Puedes editar los campos Nombre de la estadística, Descripción de la estadística y Nombre del archivo de ícono.
- No puedes editar el ID de estadística ni la Dirección de progresión. Unidad de estadística y Detalles del evento asociado.
- Haz clic en Guardar cambios.
- En la página Servicios de Play Games - Estadísticas de juego, la estadística editada se encuentra en el estado Disponible para verificadores.
- Después de probar la estadística, haz clic en Revisar y publicar. De esta manera, se vuelve a publicar el juego para todos los usuarios, junto con las estadísticas actualizadas.
Borra las estadísticas de juego
Una vez que se publican las Estadísticas de juego, no se pueden borrar.
Puedes borrar un evento o una estadística que tenga el estado Disponible para verificadores.
- En Google Play Console, selecciona un juego.
- Ve a la página Servicios de Play Games - Estadísticas de juego (Aumenta la cantidad de usuarios > Servicios de Play Games > Configuración y administración > Estadísticas de juego).
- Para borrar un evento, haz lo siguiente:
- En la sección Configuración de eventos, selecciona un evento.
- Haz clic en Borrar evento.
- Para borrar una estadística, sigue estos pasos:
- En la configuración de Estadísticas de juego, selecciona la estadística que quieras borrar.
- Haz clic en Borrar estadística de juego.
Lineamientos de los archivos CSV para eventos
La primera fila del archivo CSV es una fila de encabezado. Debes importar eventos con el archivo CSV de eventos, por ejemplo, PlayerGameEvent.csv.
Formato de PlayerGameEvent.csv
El archivo CSV contiene el evento declarado y sus propiedades como valores separados por comas en el siguiente orden:
Event Name,Property Name,Property Type
Si envías el evento progressUpdate para progressionStat, agrega una fila para este evento. Este evento debe contener, al menos, una propiedad currentProgress de tipo INT o STRING, además de cualquier otra propiedad que quieras enviar.
Estos campos se describen en la siguiente tabla:
| Encabezados de columnas de CSV | Obligatorio u opcional | Accepted values |
|---|---|---|
| Nombre del evento | Obligatorio | Máximo de 50 caracteres Debe contener solo letras, números y guiones bajos. Si se usa el nombre de evento especial |
| Nombre de la propiedad | Obligatorio | Máximo de 50 caracteres Debe contener solo letras, números y guiones bajos. Únicos por evento: Los nombres de las propiedades deben ser únicos dentro del mismo evento. No uses las siguientes palabras clave reservadas: |
| Tipo de propiedad | Obligatorio | Es una cadena de enumeración que distingue mayúsculas de minúsculas y que coincide con uno de los tipos de datos admitidos:
INT64, DOUBLE, STRING, BOOL
|
Requisitos del archivo PlayerGameEvent.csv:
- El archivo admite un máximo de 20 nombres de eventos únicos, con hasta 20 propiedades por evento.
- El contenido del archivo no puede estar vacío y debe tener al menos 1 fila.
Tabla de ejemplos
| Nombre del evento | Nombre de la propiedad | Tipo de propiedad |
|---|---|---|
| matchCompleted | duración | DOUBLE |
| matchCompleted | asesinatos | INT64 |
| matchCompleted | isWinner | BOOL |
| matchCompleted | matchType | STRING |
| itemCollected | coinsAmount | INT64 |
| itemCollected | weaponType | STRING |
| progressUpdate | currentProgress | INT64 |
Lineamientos para archivos ZIP de estadísticas
Puedes importar estadísticas a la vez con un archivo ZIP. Consulta la tabla para conocer los nombres de archivo precisos que debes usar en tu archivo ZIP:
| Nombre del archivo | Obligatorio u opcional | Accepted values |
|---|---|---|
RepetitiveStatsConfig.csv
|
Obligatorio | Una estadística repetitiva representa acciones que los jugadores realizan con regularidad en el juego. |
ProgressionStatConfig.csv
|
Obligatorio | Una estadística de progreso representa el avance de un jugador en un juego. |
StatLocalizations.csv
|
Opcional | Proporciona traducciones de los nombres y las descripciones de las estadísticas de juego. |
| Archivos de íconos | Obligatorio | Son íconos en formato PNG, JPEG o JPG de 512 x 512. |
El archivo ZIP debe cumplir con los siguientes requisitos:
- Límite de tamaño del archivo ZIP: El tamaño máximo total sin comprimir es de 10 MB.
- Cantidad máxima de archivos: Un máximo de 53 archivos en total (3 CSV y 50 íconos) dentro del archivo ZIP.
- Límite máximo de estadísticas combinadas: Un máximo de 50 estadísticas totales en
ProgressionStatConfig.csvyRepetitiveStatsConfig.csv. - Archivos CSV admitidos:
ProgressionStatConfig.csv,RepetitiveStatsConfig.csvyStatLocalizations.csv(opcional). Si solo quieres subir estadísticas de progresión, no incluyas el archivo CSV de estadísticas repetitivas en el ZIP. De lo contrario, la consola emitirá un error. Lo mismo se aplica si solo quieres subir estadísticas repetitivas. - Archivos de imagen de ícono: PNG (.png) o JPEG (.jpg, .jpeg)
- Todos los íconos a los que se hace referencia en los archivos CSV deben existir en la raíz del archivo ZIP.
- Todos los archivos de imagen presentes en el archivo ZIP deben tener referencia en, al menos, una estadística.
- Estructura del directorio: Todos los archivos deben residir en la raíz del archivo ZIP. No se permiten subdirectorios.
Formato de RepetitiveStatsConfig.csv
El archivo CSV contiene el evento declarado y sus propiedades como valores separados por comas en el siguiente orden:
Stat Id,Event Name,Event Property Name,Aggregation Type,Stat Display Name,Stat Description,Filter Property,Filter Operator,Filter Value,Is Competitive,Min limit,Max limit,Icon File Name,Good value direction,Unit
Estos campos se describen en la siguiente tabla:
| Encabezados de columnas de CSV | Obligatorio u opcional | Accepted values |
|---|---|---|
| ID de la estadística | Obligatorio | De 100 caracteres como máximo Debe contener solo letras, números y guiones bajos. Debe ser único en todas las estadísticas del juego. |
| Nombre del evento | Obligatorio | Máximo de 50 caracteres Debe hacer referencia al nombre del evento definido en el formato PlayerGameEvent.csv. |
| Nombre de la propiedad del evento | Obligatorio | Máximo de 50 caracteres |
| Nombre visible de la estadística | Obligatorio | Máximo de 50 caracteres Nombre visible predeterminado de la estadística (configuración regional predeterminada). Debe ser único en todas las estadísticas. |
| Descripción de la estadística | Obligatorio | Con 500 caracteres como máximo Descripción predeterminada de la estadística. |
| Tipo de agregación | Obligatorio | Máximo de 50 caracteres SUM, MAX, MIN, COUNT. |
| Propiedad del filtro | Opcional | Máximo de 50 caracteres Debe ser un nombre de propiedad definido en PlayerGameEvent.csv. |
| Operador de filtro | Opcional | =, !=, >, <, >=, <=Operadores de comparación de filtros. |
| Valor del filtro | Opcional | En comparación con la propiedad de filtro.
El valor del filtro debe ser INT64, DOUBLE, BOOL, STRING.
|
| Es competitivo | Obligatorio | true, false
|
| Límite mínimo | Obligatorio cuando Is Competitive es verdadero | Es la puntuación mínima permitida para las estadísticas competitivas. |
| Límite máximo | Obligatorio cuando Is Competitive es verdadero | Puntuación máxima permitida para las estadísticas competitivas. |
| Nombre del archivo del ícono | Obligatorio | Es el nombre del archivo de imagen del ícono incluido en la raíz del archivo ZIP. No puede haber conflictos con los nombres de los archivos de íconos que se usan en las estadísticas repetitivas. |
| Dirección del valor de buena calidad | Obligatorio | Especifica si los valores más altos INCREASING o los más bajos DECREASING son mejores.
|
| Unidad | Opcional | Es la unidad de medida para los valores numéricos o de duración sin procesar. Por ejemplo, KILOMETER, SECOND, PERCENTAGE, UNITLESS. |
Si no quieres usar la condición de filtro, deja la celda en blanco.
Tabla de ejemplos
| ID de la estadística | Nombre del evento | Nombre de la propiedad | Agregación | Nombre visible de la estadística | Descripción de la estadística | Propiedad del filtro (opcional) | Operador de filtro (opcional) | Valor del filtro (opcional) | Es competitivo | minLimit | maxLimit | Nombre del archivo del ícono | Dirección del valor de buena calidad | unidad |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | matchCompleted | duración | MAX | Supervivencia de la coincidencia más larga | Indica el tiempo de supervivencia de un jugador en cualquier partida. | isWinner | = | TRUE | TRUE | 0 | 50 | stat1.png | En disminución | segundos |
| 2 | matchCompleted | isWinner | COUNT | Partidos ganados | Indica la cantidad de partidas que ganó un jugador. | isWinner | = | TRUE | TRUE | 0 | 50 | stat3.png | En aumento | |
| 3 | matchCompleted | asesinatos | SUM | Asesinatos en partidas 1 contra 1 | Cantidad de eliminaciones realizadas en partidas 1 contra 1 | matchType | = | "1-on-1" | FALSO | stat4.png | En aumento | |||
| 4 | itemCollected | coinsAmount | SUM | Total de oro recolectado | El jugador recolecta monedas mientras juega un partido | weaponType | = | "sword" | FALSO | stat2.png | En aumento |
Formato de ProgressionStatConfig.csv
El archivo CSV contiene el evento declarado y sus propiedades como valores separados por comas en el siguiente orden:
Stat Id,Event Property Name,Stat Display Name,Stat Description,Icon File Name,Good value direction,Unit
La estadística de progreso se mostrará como la primera estadística para un jugador en su perfil de gamer.
Estos campos se describen en la siguiente tabla:
| Encabezados de columnas de CSV | Obligatorio u opcional | Accepted values |
|---|---|---|
| ID de la estadística | Obligatorio | De 100 caracteres como máximo Debe contener solo letras, números y guiones bajos. Debe ser único en todas las estadísticas del juego. |
| Nombre de la propiedad del evento | Obligatorio | Máximo de 50 caracteres Debe ser un nombre de propiedad definido en PlayerGameEvent.csv. |
| Nombre visible de la estadística | Obligatorio | Debe ser un nombre único. |
| Descripción de la estadística | Obligatorio | Máximo de 50 caracteres Descripción predeterminada de la estadística. |
| Nombre del archivo del ícono | Obligatorio | Es el nombre del archivo de imagen del ícono incluido en la raíz del archivo ZIP. No puede haber conflictos con los nombres de los archivos de íconos que se usan en las estadísticas repetitivas. |
| Dirección del valor de buena calidad | Obligatorio | Especifica si los valores más altos INCREASING o los más bajos DECREASING son mejores.
|
| Unidad | Opcional | Es la unidad de medida para los valores numéricos o de duración sin procesar. Por ejemplo, KILOMETER, SECOND, PERCENTAGE, UNITLESS. |
Tabla de ejemplos
| ID de estadística | Nombre de la propiedad del evento | Nombre visible de la estadística | Descripción de la estadística | Nombre del archivo del ícono | Sentido del valor positivo |
|---|---|---|---|---|---|
| 5 | currentProgress | Nivel | Los jugadores acumulan XP jugando partidos y subiendo de nivel. | Level.png | creciente |
Formato de StatLocalizations.csv
El archivo CSV contiene el evento declarado y sus propiedades como valores separados por comas en el siguiente orden:
Stat Id,Stat Display Name,Locale,Localized Stat Display Name,Localized Stat Description
Estos campos se describen en la siguiente tabla:
| Encabezados de columnas de CSV | Obligatorio u opcional | Accepted values |
|---|---|---|
| ID de la estadística | Obligatorio | De 100 caracteres como máximo Debe contener solo letras, números y guiones bajos. Debe ser único en todas las estadísticas del juego. |
| Nombre visible de la estadística | Obligatorio | Debe ser un nombre único. |
| Configuración regional | Obligatorio | Es el código de idioma, como es-419. Agrega traducciones para tu juego antes de especificar un idioma. Ten en cuenta que no puedes especificar el idioma predeterminado. Puedes encontrar los códigos de idioma admitidos en la lista de idiomas admitidos. |
| Nombre visible localizado de la estadística | Opcional | Se admiten hasta 50 caracteres. Es el nombre visible de la estadística traducido para la configuración regional determinada. |
| Descripción localizada de la estadística | Opcional | Se admiten hasta 500 caracteres. Es la descripción traducida de la estadística para la configuración regional determinada. |
Tabla de ejemplos
| ID de la estadística | Nombre visible de la estadística | Código de idioma | Nombre localizado de la estadística (UTF-8) | Descripción localizada de la estadística (UTF-8) |
|---|---|---|---|---|
| 1 | Supervivencia de la coincidencia más larga | es | Supervivencia más larga en partidos | Esto indica el tiempo de supervivencia de una jugadora en cualquier partida. |
| 1 | Supervivencia de la coincidencia más larga | fr | Survie du match le plus long | Cela indique la durée de survie d'un joueur dans n'importe quel match. |
| 4 | Total de oro recolectado | es | Oro total recolectado | La jugadora recoge monedas mientras juega en un partido |
| 4 | Total de oro recolectado | fr | Or total collecté | Le joueur collecte des pièces en jouant un match |
Archivos de íconos
Los íconos a los que haces referencia en el archivo CSV deben existir en el archivo ZIP actual que importas.
Las reglas de validación de íconos son las siguientes:
| Propiedad de validación | Restricción o regla aplicada |
|---|---|
| Tamaño máximo de los archivos | 1 MB (1,048,576 bytes) como máximo por archivo de ícono |
| Dimensiones | Exactamente 512 × 512 píxeles (ancho = 512, alto = 512) |
| Relación de aspecto | Estrictamente 1:1 (relación de aspecto cuadrada) |
| Formatos permitidos | PNG (.png) y JPEG (.jpg, .jpeg) |
| Posición en el archivo ZIP | Debe estar ubicado en el directorio raíz del archivo ZIP. |
| Verificación de referencia | Todos los nombres de archivo de íconos especificados en las columnas Icon File Name deben existir en el archivo ZIP. |
| Verificación de huérfanos | Todos los archivos de imagen dentro del archivo ZIP deben tener la referencia de, al menos, una estadística. |
| Verificación de conflictos | Los nombres de archivo de los íconos en ProgressionStatConfig.csv no pueden entrar en conflicto con RepetitiveStatsConfig.csv.
|
| Duplicados visuales | Se marcan los íconos duplicados. |
Lineamientos de los íconos
Los íconos deben crearse como archivos PNG, JPEG o JPG de 512 x 512 con fondos transparentes.
Se usa el mismo ícono en todos los parámetros de configuración regional, por lo que te recomendamos que no incluyas texto ni contenido localizado en un ícono.
Especificación de la unidad
Las columnas Unit controlan cómo se les da formato a los valores de estadísticas sin procesar y cómo se localizan para los jugadores.
Propiedades de las estadísticas numéricas (INT64, DOUBLE)
| Valor de unidad permitido | Valor sin procesar de ejemplo |
| (Vacío) / SIN UNIDAD / NINGUNO | 1234567 |
| % / PERCENTAGE / PERCENT | 0.857 |
| Distancia/longitud: CENTIMETER, METER, KILOMETER, FOOT, INCH, MILE, YARD, MILLIMETER, NANOMETER | 15 (KILOMETER) |
| Velocidad: KILOMETER_PER_HOUR, METER_PER_SECOND, MILE_PER_HOUR | 60 (MILE_PER_HOUR) |
Propiedades de estadísticas de duración (DURATION)
| Valor de la categoría de formato | Valores de unidad permitidos | Valor sin procesar de ejemplo | Ejemplo de resultado con formato |
| UNIT_BASED / DURATION | Obligatorio: SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, YEAR | 5,400 segundos (HORA) | 1.5 horas |
| COMPONENT_NUMERIC / HH:MM:SS / CLOCK | Nivel de detalle (opcional, el valor predeterminado es WHOLE_SECONDS): WHOLE_MINUTES, WHOLE_SECONDS, MILLISECONDS_ONE_DIGIT, MILLISECONDS_TWO_DIGITS, MILLISECONDS_THREE_DIGITS | 3,661 segundos | 01:01:01 |
| COMPONENT_TEXT / TEXT | Unidad más pequeña (opcional, SECONDS de forma predeterminada): SECONDS, MINUTES, HOURS, DAYS, MONTHS, YEARS | 90,000 segundos | 1 d 1 h |
Propiedades de estadísticas no numéricas (STRING, BOOL)
Las columnas de unidad deben dejarse vacías.