- Dar un regalo especial de Año Nuevo a todos los jugadores que iniciaron sesión durante las últimas 2 semanas.
- Recompensar a los jugadores que gastaron dinero en la última semana (según niveles de gasto), donde cuanto más dinero gastaron, más valioso es el regalo.
- Corregir el estado de jugador dañado para todos los jugadores afectados por un error reciente del juego.
Requisitos previos
Deberá instalar la aplicación de ejemplo Unicorn Battle para realizar este tutorial. Puede obtener más información al respecto en nuestro blog o ir directamente al repositorio de GitHub y seguir las instrucciones que allí se indican. Le conviene jugar varias batallas para subir de nivel a su personaje hasta al menos el nivel 2, que se alcanza con 2725 puntos de XP.Paso 1: crear el segmento
El primer paso es crear el segmento que define el grupo de jugadores que se verán afectados por esta acción. En este caso, necesitamos crear el segmento de XP alta, definido como todos los jugadores que tienen más de 2725 XP:- Seleccione PlayStream en el menú de la izquierda.
- Elija la pestaña Segments.
- A continuación, seleccione el botón New Segment.
- Establezca el Segment Name en: High XP Players.
- Defínalo como Player, donde el Statistic Value llamado Total_XP Gained es mayor que 2725.
NOTA: El sistema actual de tareas programadas puede procesar de 10 a 15 tareas por segundo por segmento. Al diseñar sus segmentos, planifique con antelación su tamaño y cuánto tiempo durará la ejecución de la tarea. No hay límite para la duración de una tarea, pero si la tarea debe ejecutarse en un período de tiempo específico, el segmento debe tener el tamaño adecuado.
Paso 2: crear una tarea para este segmento
- Seleccione la pestaña Segments.
- A continuación, seleccione RUN TASK …
Paso 3: agregar acciones a la tarea
A continuación, puede terminar de configurar la tarea.- Cambie el nombre a Reward High XP Players
- Agregue esta descripción: Give a gift to Players who are level 2 or higher.
- Seleccione ADD ACTION
- Escriba Grant virtual currency en el campo proporcionado.
- Código de Virtual Currency: GM (abreviatura de Gems).
- Cantidad: 20
- Deje la programación establecida en Manually por ahora.
- Seleccione el botón SAVE AND RUN para ejecutar la tarea.
Paso 4: supervisar su tarea
La vista Tasks le mostrará su tarea en ejecución. Inicialmente, el estado de la tarea será InProgress, pero cambiará rápidamente a Succeeded, ya que el segmento es pequeño. Ahora, veamos el detalle de la ejecución de la tarea. Seleccione la tarea completada en la lista de Tasks ejecutadas anteriormente. Verá información importante, como:- Cuántos jugadores se procesaron.
- Cuándo comenzó la tarea.
- Cuánto tardó en completarse.
- Los parámetros que tenía cuando se inició.
- Quién la ejecutó.
- Si se programó manualmente, etc.
- Vaya a la pestaña Players.
- Seleccione su jugador.
- A continuación, elija la pestaña Event History.
- El evento más reciente de la lista debería ser un player_virtual_currency_balance_changed, que debería mostrar que las gemas de su jugador aumentan en 20.
Puede expandir este evento para ver los detalles.
Pasos siguientes
Este tutorial le ha presentado los pasos necesarios para realizar una acción para cada jugador de un segmento, pero hay mucho más que puede hacer con las tareas. Estas son algunas ideas de otras cosas que puede probar…Programar sus tareas
No es necesario ejecutar las tareas manualmente: puede programar una tarea para que se ejecute automáticamente de forma periódica. Por ejemplo, podría crear un segmento de todos los jugadores que jugaron al juego en las últimas 24 horas y luego ejecutar una tarea programada cada día para dar a esos jugadores un impulso de XP.Ejecutar CloudScript para cada jugador
El uso más potente de las acciones masivas es ejecutar una función arbitraria de CloudScript para cada jugador. Este CloudScript puede hacer cualquier cosa que pueda hacer la API de servidor de PlayFab: conceder elementos, moneda, inspeccionar y cambiar datos de jugadores, etc. Por ejemplo, imagine que tiene una tabla de clasificación de eventos que se restablece cada semana y quiere recorrer todos los jugadores y dar una recompensa basada en el valor del último evento antes de restablecerse. El ejemplo que se proporciona a continuación usa Unicorn Battle.- Cree una nueva estadística Event_QuestsCompleted, que se restablezca semanalmente y use el método de agregación Last.
-
Cree una nueva acción de PlayStream que incremente esta estadística
Event_QuestsCompletedcada vez que se cambieTotal_QuestsCompleted. - Escriba una función de CloudScript que llamará una tarea de acción masiva, que recorrerá los jugadores y dará recompensas en función del último valor.
-
Establezca la nueva versión de CloudScript en Live y cree una nueva tarea que llame a la función
GiveTieredRewardpara todos los jugadores. No olvide guardar y ejecutar la tarea. - Debería observar que los eventos de esta tarea aparecen en el depurador de eventos de PlayStream.
- Puede seleccionar cualquier evento de CloudScript ejecutado por una acción desencadenada por jugador (seleccionando la marca de tiempo) y ver el resultado detallado de la ejecución de CloudScript para cada jugador. Esto incluye información de diagnóstico útil, como la instantánea del perfil del jugador en el momento de la ejecución de CloudScript.
