Los pagos basados en la participación automáticos te permiten ganar Robux en función de la proporción de tiempo que los miembros Premium participen en un juego, independientemente del tamaño del juego. Estos pagos se suman a las ganancias de otros métodos de monetización como Pases.
Para fomentar el crecimiento de suscriptores Premium y aumentar tu potencial para ganar pagos basados en la participación, puedes agregar el Modal de Compra Premium directamente en un juego. Ten en cuenta que los usuarios de algunos países pueden no tener acceso a las suscripciones Premium.
Acceder a los datos de pago
Los datos de pago pueden proporcionar comentarios vitales para ayudarte a entender qué factores impulsan a los suscriptores Premium a tus juegos.
Para acceder a los datos de pago:
- Navega a tu página de Creaciones en el Tablero de Creadores y selecciona tu juego.
- Navega a la pestaña Monetización y selecciona Pagos por Participación.
Pagos por participación
Los gráficos de Pagos Basados en la Participación rastrean datos de pago basados en los siguientes métricas:
Robux Ganados por Tiempo de Juego Premium: La cantidad que puedes esperar ganar por la participación de suscriptores Premium. Esto no se basa en el tiempo diario que los suscriptores Premium pasan interactuando con el juego; en su lugar, esta métrica agrega el comportamiento de cada usuario durante los últimos 28 días. Por lo tanto, aunque tienen tendencias similares, esta métrica no tiene una relación matemática directa con el Puntaje de Tiempo de Juego Premium.
Puntaje de Tiempo de Juego Premium: La cantidad de tiempo que los suscriptores Premium participan en el juego por día. Esta métrica puede proporcionar comentarios inmediatos sobre el impacto de nuevas características que lances.
Visitas Premium: Cuántas visitas provienen de miembros Premium.

Modal de compra Premium
Una estrategia para aumentar los pagos basados en la participación es fomentar la actualización a Premium a través del modal de compra. Los jugadores pueden completar la compra completamente dentro del juego y recibir inmediatamente tanto el estado Premium como su estipendio inicial de Robux.

Recuerda que la membresía Premium no debería ser un "requisito" para disfrutar de un juego. Al implementar incentivos para los miembros Premium, se recomienda encarecidamente que sigas estas mejores prácticas:
- Describe de manera honesta y precisa los beneficios de la actualización dentro de la descripción del juego.
- No prometas Robux u otras recompensas fuera del juego que no controlas.
- No muestres el modal como un "muro de pago" cuando los miembros no Premium entren al juego.
- Considera ofrecer mercancía exclusiva a los miembros Premium, pero no les des una ventaja táctica de juego sobre otros, como una variedad de armas ultrapotentes contra las cuales los miembros no Premium no puedan competir.
Verificar membresía
Antes de programar cualquier lógica relacionada con la membresía Premium o activar el modal, verifica la propiedad MembershipType de un usuario para determinar si ya está suscrito.
local Players = game:GetService("Players")local player = Players.LocalPlayerif player.MembershipType == Enum.MembershipType.Premium then-- Toma alguna acción específica para miembros Premiumend
Activar el modal
Puedes activar el modal de compra con el método PromptPremiumPurchase(). Por ejemplo, el siguiente código solicita a los usuarios que compren Premium cuando su personaje toca la parte a la que está adjunto su Script, como un transportador que permite el acceso a un área exclusiva.
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local teleporter = script.Parent
local showModal = true
local TELEPORT_POSITION = Vector3.new(1200, 200, 60)
-- Teletransportar personaje a área exclusiva
local function teleportPlayer(player)
-- Solicitar streaming alrededor de la ubicación objetivo
player:RequestStreamAroundAsync(TELEPORT_POSITION)
-- Teletransportar personaje
local character = player.Character
if character and character.Parent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(TELEPORT_POSITION))
end
end
-- Detectar partes del personaje tocando el teletransportador
teleporter.Touched:Connect(function(otherPart)
local player = Players:GetPlayerFromCharacter(otherPart.Parent)
if not player then return end
if not player:GetAttribute("CharacterPartsTouching") then
player:SetAttribute("CharacterPartsTouching", 0)
end
player:SetAttribute("CharacterPartsTouching", player:GetAttribute("CharacterPartsTouching") + 1)
if player.MembershipType == Enum.MembershipType.Premium then
-- El usuario tiene Premium; teletransportar personaje a área exclusiva dentro del juego
teleportPlayer(player)
else
-- Mostrar modal de compra, usando un debounce para mostrar una vez cada pocos segundos como máximo
if not showModal then return end
showModal = false
task.delay(5, function()
showModal = true
end)
MarketplaceService:PromptPremiumPurchase(player)
end
end)
-- Detectar partes del personaje saliendo del teletransportador
teleporter.TouchEnded:Connect(function(otherPart)
local player = Players:GetPlayerFromCharacter(otherPart.Parent)
if player and player:GetAttribute("CharacterPartsTouching") then
player:SetAttribute("CharacterPartsTouching", player:GetAttribute("CharacterPartsTouching") - 1)
end
end)
-- Manejar el evento de cambio de membresía
Players.PlayerMembershipChanged:Connect(function(player)
warn("La membresía del usuario ha cambiado; la nueva membresía es " .. tostring(player.MembershipType))
-- Teletransportar personaje si el tipo de membresía es Premium y el personaje está en el teletransportador
if player.MembershipType == Enum.MembershipType.Premium and player:GetAttribute("CharacterPartsTouching") > 0 then
teleportPlayer(player)
end
end)