Tiendas y ventas (Economy heredado)
Las API de Economy v1 están en modo de mantenimiento y no recibirán nuevas características, solo correcciones de errores. Las API v1 se mantendrán en el futuro previsible. Consulte la información general de Economy v2 para obtener más información sobre la próxima versión de PlayFab Economy.
Requisitos
- Familiaridad con el Game Manager de PlayFab.
- Debe haber definido una o varias monedas virtuales. El último ejemplo de este tutorial usa:
- SP (Silver Pieces)
- GP (Gold Pieces).
- Debe tener un catálogo principal con uno o varios elementos definidos.
- El primer ejemplo usa varios elementos o lotes, similares a los descritos en el tutorial de tablas de botín.
- El segundo ejemplo de este tutorial usa pociones de salud pequeñas, medianas y grandes.
Procedimientos recomendados
Los precios del catálogo deberían ser fijos a largo plazo: definen el precio real de un elemento. Las tiendas deberían ser temporales, agregándose y quitándose según sus estrategias de LiveOps.Espere obtener la mayor parte de sus ingresos rotando tiendas y moviendo elementos dentro y fuera de las tiendas activas.
Información general sobre las tiendas y los precios del catálogo
- Precios: los precios definidos en el catálogo deberían definirse como el precio normal de un elemento. Las tiendas le permiten definir un precio de oferta temporal para un elemento, utilizando la táctica minorista habitual. De forma alternativa, las tiendas pueden proporcionar un precio temporal para un elemento que normalmente no está disponible para la venta.
- Costo cero: si el costo de un elemento en una moneda concreta no está establecido (null) o es cero, no se puede comprar con esa moneda, tanto en catálogos como en tiendas. El costo cero le permite hacer que los elementos estén disponibles exclusivamente para monedas gratuitas, o exclusivamente para monedas premium, dejando en blanco las entradas de las demás monedas o restableciéndolas a cero.
- Dinero real: la moneda RM está disponible en todos los catálogos y tiendas. RM es una clave de moneda restringida que indica solo transacciones con dinero real. Solo debería cobrar RM por elementos de valor significativo, o por lotes/contenedores con moneda premium.
- Los precios son excluyentes: si se definen dos precios en un elemento, el elemento se puede comprar por uno u otro. No es posible exigir dos monedas para un único elemento.
Definición de una tienda con dinero real
En su Game Manager:- Vaya a su título.
- Seleccione Economy en el menú de la izquierda.
- En la pestaña Catalogs, seleccione su catálogo principal y seleccione Stores.
- Seleccione el botón New Store.
Cualquier elemento puede venderse por dinero real, pero un procedimiento recomendado es que solo estén disponibles directamente elementos o lotes valiosos específicos.
Procedimientos recomendados para tiendas con dinero real
La forma de usar el dinero real depende en gran medida del diseño específico de su juego. La compra directa de elementos del juego es válida, pero menos habitual. Lo más habitual es que su juego permita comprar una moneda virtual premium con dinero real. Puede rotar varias tiendas con diferentes proporciones de moneda premium a dinero real.Definición de una tienda con moneda virtual
Entremos en los detalles concretos y el código para comprar elementos del juego con moneda virtual. Los pasos iniciales son casi idénticos a los del ejemplo anterior:- Cree tres elementos nuevos: pociones de salud pequeña, mediana y grande con un precio en moneda gratuita y un precio en moneda premium.
- Cree una tienda nueva con los elementos en venta.
Compra de varios elementos en una sola compra
Para comprar un único elemento con moneda virtual, use el método PurchaseItem, como se describe en nuestro inicio rápido de tiendas. Este tutorial cubre la compra de varios elementos en una sola compra. Su primer paso en este proceso debería ser obtener la tienda y mostrarla al usuario.LogSuccess de este ejemplo recibe un GetStoreItemsResult que contiene una descripción completa de todos los elementos de la tienda, sus precios de tienda y cualquier metadato contenido en la propia tienda.
Procedimientos recomendados para mostrar tiendas
Los juegos con tiendas deberían llamar a su catálogo principal y almacenarlo en caché mediante el método GetCatalogItems. Puede mostrar tanto el precio del catálogo como el precio de la tienda, junto con un 10 % de DESCUENTO o una decoración de bonificación similar junto a los elementos en venta. En este punto, es responsabilidad de su código de interfaz gráfica presentar al usuario la oportunidad de seleccionar qué elementos desea comprar y cuántos.- Entre su juego y PlayFab, los pasos restantes son varias llamadas de API independientes, pero puede hacer que la secuencia de varias llamadas sea invisible para el jugador.
- Recopile toda la información sobre la compra por adelantado y realice la secuencia completa de llamadas después de recopilar todas las entradas del jugador.
El resultado de la API
StartPurchase del ejemplo de código anterior contiene una lista de PaymentOptions. Cada opción de pago contiene la Currency, el Price y el ProviderName que se pueden usar para realizar la compra.Restricciones
Solo se permite una moneda virtual en una sola compra. Todos los elementos seleccionados deben poder comprarse con una única moneda. La moneda debe especificarse en la llamada, lo que es importante cuando hay varias monedas posibles. La secuencia fallará si hay elementos en la solicitud sin los costos correspondientes en la moneda seleccionada. ElProviderName también debe especificarse en la llamada. Para las compras con dinero real, el nombre del proveedor es quien se usa para financiar la compra, como Facebook, PayPal o Steam. Para las compras con moneda virtual, será una cadena basada en el identificador de su título. El ProviderName puede obtenerse del campo PaymentOptions del StartPurchaseResult, tal como se describe en la nota anterior.
Procedimientos recomendados para mostrar los elementos de la tienda
Evite confundir a su jugador asegurándose de que todos los elementos de una tienda tengan opciones coherentes. Los elementos de dinero real deberían estar en una tienda separada de los elementos de moneda virtual premium, y a su vez separados de los elementos de moneda virtual gratuita. Si una única tienda permite varias monedas, entonces todos los elementos de esa tienda deberían usar de forma coherente el mismo conjunto de monedas. Cree tantas tiendas como necesite para ofrecer una experiencia de cliente fluida.Procedimientos recomendados para gestionar los resultados de error de la API
Cualquier llamada de API individual puede fallar por muchas razones. Los dispositivos inalámbricos, como los teléfonos, a menudo pueden tener conectividad intermitente, y cualquier llamada por Internet puede fallar debido a una latencia aleatoria. Cada llamada debería comprobar varias condiciones de error. Debería anular la operación si la respuesta muestra que la solicitud no es válida (por ejemplo, no se pueden comprar varios elementos con una única moneda). Podría haber problemas con el diseño de su tienda. Si la respuesta indica un error de conectividad, puede volver a intentarlo con un retraso de retirada exponencial.Conclusión
Las tiendas son un gran mecanismo para animar a sus jugadores a comprar elementos. Las tiendas funcionan con cualquier tipo de moneda virtual. Las tiendas también pueden funcionar con dinero real a través de un conjunto alternativo de métodos de API.- Puede configurar una compra de un único elemento con moneda virtual mediante PurchaseItem.
- Puede configurar una compra de varios elementos con dinero real o moneda virtual mediante la secuencia:
