Agregar estadísticas de jugadores a tu juego de Android

La Player Stats API te permite personalizar experiencias del juego para segmentos específicos de jugadores y para diferentes etapas del ciclo de uso del jugador. Puedes compilar experiencias personalizadas para cada segmento de jugadores según su avance, gasto y participación. Por ejemplo, puedes usar esta API para realizar acciones proactivas a fin de incentivar a un jugador menos activo para que vuelva a interesarse por tu juego; por ejemplo, mostrar y promocionar nuevos elementos del juego cuando el jugador inicie sesión.

Nota: La compatibilidad de Android con la Player Stats API se proporciona a través del SDK de servicios de Google Play. Para obtener más información sobre el uso de servicios de Google Play en tus apps, consulta la Información general.

En esta guía se muestra la manera de usar la Player Stats API en una aplicación de Android.

Antes de comenzar

Antes de comenzar a usar la Player Stats API:

Una vez que el jugador inicia sesión y GoogleApiClient está conectado, tu juego puede empezar a usar la Player Stats API.

Aspectos básicos de Player Stats

Puedes usar las Player Stats API para obtener datos sobre la actividad del jugador en el juego. Entre los tipos de datos sobre los jugadores que puedes obtener se incluyen los siguientes:

  • Duración promedio de la sesión: duración promedio de la sesión del jugador en minutos. la extensión de la sesión se determina por el tiempo que el jugador permanece conectado a los servicios de Google Play Games.
  • Probabilidad de migración: predicción de la posible migración de un jugador al día siguiente; se indica con 0 (baja probabilidad de migración) o 1 (alta probabilidad de migración). Por definición, la migración equivale a 7 días de inactividad.
  • Días transcurridos desde el último ingreso al juego: cantidad aproximada de días que pasaron después de que el jugador jugó por última vez.
  • Cantidad de compras: cantidad aproximada de compras directas desde la aplicación para el jugador.
  • Cantidad de sesiones: cantidad aproximada de sesiones del jugador. Las sesiones se determinan por la cantidad de veces que el jugador inicia sesión en los servicios de Google Play Games.
  • Percentil de sesiones: aproximación del percentil de sesiones para el jugador; se expresa como un valor decimal entre 0 y 1 (inclusive). Este valor indica el número de sesiones en las que participó el jugador actual en comparación con el resto de la base de jugadores del juego. Los números más altos indican que ese jugador participó en más sesiones.
  • Percentil de gastos: percentil de gastos aproximado del jugador; se indica como un valor decimal entre 0 y 1 (inclusive). Este valor indica los gastos del jugador actual en comparación con el resto de la base de jugadores del juego. Los números más altos indican que los gastos de este jugador fueron mayores.
  • Probabilidad de consumo: probabilidad aproximada de que el jugador decida realizar gastos en este juego; se indica con 0 (baja probabilidad de gasto) o 1 (alta probabilidad de gasto).
  • Consumo total para los próximos 28 días: gastos totales aproximados previstos en este juego para el jugador en los próximos 28 días.
  • Probabilidad de consumo elevado: probabilidad aproximada de que durante los próximos 28 días un jugador realice gastos por un monto que se encuentre en el percentil 95 o un valor más alto de la base de jugadores de este juego. El valor se indica con 0 (baja probabilidad de consumo elevado) o 1 (alta probabilidad de consumo elevado).

Recuperar datos de Player Stats

Si deseas recuperar datos de Player Stats para el jugador actualmente conectado, sigue estos pasos:

  1. Crea un objeto GoogleApiClient y configúralo para usar la Games API y SCOPE.
  2. Llama al método Games.Stats.loadPlayerStats(). Si la llamada es exitosa, se muestra un objeto Stats.LoadPlayerstatsResult .
  3. Llama al método getPlayerStats() del objeto LoadPlayerstatsResult . Si la llamada es exitosa, se muestra un objeto PlayerStats que te permite acceder a datos sobre la actividad del jugador conectado.

En el siguiente fragmento de código se muestra la forma en que podrías obtener la cantidad de días transcurridos desde la última vez que el jugador usó el juego y la cantidad de sesiones:

public void checkPlayerStats() {
    PendingResult<Stats.LoadPlayerStatsResult> result =
            Games.Stats.loadPlayerStats(
            mGoogleApiClient, false /* forceReload */);
    result.setResultCallback(new
            ResultCallback<Stats.LoadPlayerStatsResult>() {
        public void onResult(Stats.LoadPlayerStatsResult result) {
            Status status = result.getStatus();
            if (status.isSuccess()) {
                PlayerStats stats = result.getPlayerStats();
                if (stats != null) {
                    Log.d(TAG, "Player stats loaded");
                    if (stats.getDaysSinceLastPlayed() > 7) {
                        Log.d(TAG, "It's been longer than a week");
                    }
                    if (stats.getNumberOfSessions() > 1000) {
                        Log.d(TAG, "Veteran player");
                    }
                    if (stats.getChurnProbability() == 1) {
                        Log.d(TAG, "Player is at high risk of churn");
                    }
                }
            } else {
                Log.d(TAG, "Failed to fetch Stats Data status: "
                        + status.getStatusMessage());
            }
        }
    });
}

Sugerencias para usar los datos de Player Stats

La Play Stats API te permite identificar fácilmente varios tipos de jugadores según la interacción y el comportamiento de consumo, y aplicar estrategias correspondientes para mejorar la experiencia de juego.

En la tabla siguiente se muestran algunos ejemplos de segmentos de jugadores y estrategias de interacción recomendadas:

Segmento de jugadores Estrategia de interacción
Jugadores frecuentes con una gran cantidad de sesiones y buen percentil de consumo que, no obstante, no hayan usado el juego durante la última semana o por más tiempo.
  • Envía una notificación sobre un descuento o beneficio especial disponible cuando este vuelva a jugar.
  • Muestra un mensaje de bienvenida en el que se reconozcan logros notables y se otorgue una insignia para alentar el regreso al juego.
Jugadores muy activos en un percentil de consumo bajo.
  • Personaliza beneficios para incentivarlos a fin de que inviten a sus amigos a instalar el juego y comenzar a jugar. Este enfoque se basa en el disfrute del juego demostrado por el jugador con el objetivo de atraer jugadores nuevos.
Jugadores con consumo elevado que muestren signos de haber alcanzado un pico y comiencen a jugar con menos frecuencia.
  • Personaliza beneficios para renovar su interés, por ejemplo, ofreciendo herramientas de gran valor y corta duración, armas o descuentos.
  • La próxima vez que el jugador inicie sesión, muéstrale un video que lo dirija a las funciones de la comunidad, como los ataques de clanes, que atraen interacciones más frecuentes y duraderas.
Jugadores con probabilidad de consumo muy alta o muy baja.
  • Consumo poco probable: permite la visualización de un video promocional. Muestra elementos a bajo precio para la compra.
  • Consumo probable: dirígelos pronto a la tienda dentro del juego y ofréceles promociones especiales para incentivarlos a realizar compras.

Enviar comentarios sobre…

Play Games Services for Android
Play Games Services for Android