Paiements basés sur l'engagement

Automatique paiements basés sur l'engagement vous permettent de gagner des Robux en fonction de la part de temps que Premium les membres s'engagent dans une expérience, indépendamment de la taille de l'expérience. Ces paiements s'ajoutent aux gains provenant d'autres méthodes de monétisation telles que Passes.

Pour encourager l'augmentation du nombre d'abonnés Premium et augmenter vos chances de recevoir des paiements basés sur l'engagement, vous pouvez ajouter le Modal d'achat Premium directement dans une expérience.

Accéder aux données de paiement

Les données de paiement peuvent vous donner des informations essentielles et vous aider à comprendre les facteurs qui incitent les abonnés Premium à accéder à vos expériences.

  1. Accédez à l'Interface de création.

  2. Passez la souris sur l'expérience souhaitée, cliquez sur icône et sélectionnez Développeur Statistiques.

    Option Statistiques du développeur dans le menu d'options d'une expérience sur le tableau de bord du créateur
  3. Dans la navigation en haut, cliquez sur l'onglet PAIEMENTS BASÉS SUR L'ENGAGEMENT.

    Onglet paiements basés sur l'engagement sur la page Statistiques du développeur du tableau de bord du créateur

Paiement Premium

Le graphique des Paiements basés sur l'engagement (EBP) suit les données de paiement basées sur les mesures suivantes :

Le Score du temps de jeu Premium est le temps que les abonnés Premium passent dans l'expérience par jour. Cet indicateur peut vous fournir un retour immédiat sur l'impact des nouvelles fonctionnalités que vous publiez.

**Robux gagnés pendant le temps de jeu Premium : correspond au montant que vous pouvez espérer gagner avec l'engagement des abonnés Premium. Cette mesure n'est pas basée sur le temps quotidien que les abonnés Premium consacrent à l'expérience, mais sur le comportement de chaque utilisateur au cours des 28 derniers jours. Ainsi, même s'ils ont des tendances similaires, cet indicateur n'a aucune relation mathématique directe avec le score de temps de jeu Premium.

Exemple de graphique de suivi des données de paiement basées sur l'engagement

Visites Premium

Le graphique Visites Premium suit le nombre de visites effectuées par les membres Premium. À l'aide du menu déroulant, vous pouvez choisir soit le pourcentage de visites Premium, les visites Premium ou le nombre total de visites.

Exemple de graphique suivant le nombre de visites des membres Premium

Formule d'achat Premium

Une stratégie pour augmenter les paiements basés sur l'engagement est d'encourager Premium mise à niveau à travers l'achat modal. Les joueurs peuvent effectuer l'achat entièrement dans l'expérience et recevoir immédiatement le statut Premium et leur allocation initiale de Robux.

Modal d'achat premium dans une expérience
Modal d'achat Premium dans une expérience

N'oubliez pas que l'adhésion Premium ne devrait pas être une "exigence" pour profiter d'une expérience. Lorsque vous mettez en place des mesures d'incitation pour les membres Premium, il est fortement recommandé de suivre ces bonnes pratiques :

  • Décrivez honnêtement et avec précision les avantages de la mise à niveau dans le cadre de la description de l'expérience.
  • Ne promettez pas de Robux ou d'autres récompenses hors expérience que vous ne contrôlez pas.
  • Ne pas afficher la fenêtre modale comme un "paywall" lorsque des personnes qui ne sont pas des membres Premium entrent dans l'expérience.
  • Envisagez d’offrir des produits exclusifs aux membres Premium, mais ne leur donnez pas un avantage de gameplay tactique sur les autres, comme une gamme d’armes ultra-puissantes contre lesquelles les non-membres Premium ne peuvent pas rivaliser.

Vérification de l'adhésion

Avant de créer un script lié à une logique liée à l’abonnement Premium ou à déclenchant le modal, vérifiez le Class.Player.MembershipType d’un utilisateur|Propriété MembershipType pour déterminer s’ils sont déjà abonnés.


joueurs locaux = game:GetService("Players")
joueur local = Players.LocalPlayer
if player.MembershipType == Enum.MembershipType.Premium then
-- Prendre des mesures spécifiques pour la fin de membres Premium

Déclencher le modal

Vous pouvez déclencher la formule d'achat Premium avec laPromptPremiumPurchase() méthode. Par exemple, le code suivant invite les utilisateurs à acheter un Premium lorsque leur personnage touche la partie à laquelle son Script est attaché, un téléporteur, par exemple, qui permet d'accéder à une zone exclusive.


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)
-- Teleport character to exclusive area
local function teleportPlayer(player)
-- Request streaming around target location
player:RequestStreamAroundAsync(TELEPORT_POSITION)
-- Teleport character
local character = player.Character
if character and character.Parent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(TELEPORT_POSITION))
end
end
-- Detect character parts touching teleporter
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
-- User has Premium; teleport character to exclusive area within experience
teleportPlayer(player)
else
-- Show purchase modal, using debounce to show once every few seconds at most
if not showModal then return end
showModal = false
task.delay(5, function()
showModal = true
end)
MarketplaceService:PromptPremiumPurchase(player)
end
end)
-- Detect character parts exiting teleporter
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)
-- Handle membership changed event
Players.PlayerMembershipChanged:Connect(function(player)
warn("User membership changed; new membership is " .. tostring(joueur. embershipType))
-- Téléporte le personnage si le type d'abonnement est Premium et que le personnage est sur téléporter
si le player.MembershipType == Enum.MembershipType.Premium and player:GetAttribute("CharacterPartsTouching") > 0 then
teleportPlayer(player)
fin
fin)