store-24APIs de compra/productos

Los jugadores pueden comprar productos (game passes + consumibles) por Sparks en tu juego. Cuando ocurre una compra, All Out llama a tu manejador de compras para que puedas otorgar el objeto o la función.

circle-info

Para crear productos y ver analíticas, consulta Productos dentro del juego.

Tipos de productos (resumen rápido)

  • Game passes: desbloqueos persistentes de una sola vez (pase de administrador, habilidad permanente, propiedad de una casa)

  • Consumibles: se pueden comprar varias veces (poción, mejora temporal, paquete de monedas de un solo uso)

Los tipos de productos se configuran en el portal del creador. Consulta Productos dentro del juego.

Referencia de la API de compras

Product :: struct {
    id: string;
    name: string;
    description: string;
    price: s64;
    consumable: bool;
    icon: Texture_Asset;
}

Purchasing :: struct {
    prompt_purchase :: proc(player: Player, id: string);
    owns_product    :: proc(player: Player, id: string) -> bool;
    get_product     :: proc(id: string) -> Product;
}

Cómo solicitar una compra

Para iniciar el flujo de compra, llama a Purchasing.prompt_purchase con un ID de producto.

circle-info

El ID del producto se muestra en la página de monetización/productos del portal del creador (puedes hacer clic para copiarlo). Consulta Productos dentro del juego.

Comprobar si un jugador posee un producto (game passes)

Para los game passes, puedes restringir funciones del juego comprobando la propiedad.

circle-info

Los consumibles se pueden comprar varias veces; no se debe usar owns_product para otorgarlos. Normalmente, los consumibles se conceden en tu manejador de compras (monedas, objetos, mejoras, etc.).

Leer información del producto (nombre/precio/icono)

Si quieres mostrar una interfaz de “Comprar” o registrar información del producto, obtén la definición del producto por ID:

El manejador de compras (otorgamiento)

Cuando un jugador compra un producto en tu juego, All Out llama a:

Debes:

  • Hacer un switch sobre el ID del producto

  • Otorgar el objeto/la función

  • Devolver true si la concesión tuvo éxito

  • Devolver false si la concesión falló (inventario lleno, prerequisito faltante, etc.)

Fallos de concesión y reintentos

Si tu manejador de compras devuelve false, la compra se marca como un fallo de concesión.

  • Los fallos de concesión se muestran en el portal del creador

  • Se reintentan automáticamente cuando el jugador se conecta hasta que tengan éxito

  • Puedes volver a ejecutar manualmente un manejador de compras marcando una compra como “no concedida” en la interfaz de datos del jugador

Ver:

Entre juegos (hub + minijuegos)

Si usas parenting de juegos, las compras se pueden compartir entre tus juegos. Consulta Productos/datos entre juegos.

Última actualización