Paiements basés sur l'engagement

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Les paiements automatiques engagement basés sur l'engagement du temps vous permettent de gagner des Robux en fonction du temps que les membres Premium engagent dans une expérience, quelle que soit la taille de l'expérience. Ces paiements sont en plus des gains des autres méthodes de monétisation passes telles que 2>Pas2>.

Pour encourager la croissance des abonnés Premium et augmenter votre potentiel de gagner des paiements basés sur l'engagement, vous pouvez ajouter le Modal d'achat Premium directement dans une expérience. Gardez à l'esprit, les utilisateurs dans certains pays peuvent ne pas avoir accès aux abonnements Premium.

Accès aux données de paiement

Les données de paiement peuvent fournir des commentaires vitaux pour vous aider à comprendre quels facteurs poussent les abonnés Premium à vos expériences.

Pour accéder aux données de paiement :

  1. Accédez à votre page Créations sur Tableau de bord du créateur et sélectionnez votre expérience.

  2. Accédez à l'onglets monétisation et sélectionnez Engagement Payouts.

Paiements d'engagement

Les Engagement-Based Payouts chiffres suivent les données de paiement en fonction des métriques suivantes :

  • Robux de jeu premium gagnés : Le montant que vous pouvez attendre à gagner pour l'participationdes abonnés Premium. Ce n'est pas basé sur le temps quotidien que les abonnés Premium dépensent à interagir avec l'expérience ; au lieu de cela, cette métrique agrège le comportement de chaque utilisateur au cours des 28 jours passés. Ainsi, même si ils ont des tendances similaires, cette métrique n'a pas de relation mathématique directe avec le

  • Score de temps de jeu premium : Le temps que les abonnés Premium engagent avec l'expérience par jour. Ce métrique peut fournir des commentaires instantanés sur l'impact des nouvelles fonctionnalités que vous publiez.

  • Visites premiums: Combien de visites sont de membres Premium.


Modale d'achat premium

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

Premium purchase modal within an experience
Achat premium dans une expérience

N'oubliez pas que la membreship Premium ne devrait pas être un « exigence » pour profiter d'une expérience. Lors de l' implementation d'incitations pour les membres Premium, il est hautement recommandé de suivre ces meilleures pratiques :

  • Décrivez honnêtement et précisément les avantages de l'amélioration dans la description de l'expérience.
  • Ne promettez pas de récompenses Robux ou d'autres récompenses d'expérience que vous ne contrôlez pas.
  • Ne montrez pas la modalité comme un "paywall" lorsque les membres non Premium entrent dans l'expérience.
  • Envisagez d'offrir des articles de marchandise exclusifs aux membres Premium, mais ne les donnez pas d'avantages de jeu tactiques aux autres, tels qu'une gamme d'armes ultra puissantes que les non-Premium ne peuvent pas concurrencer.

Vérification de la membreship

Avant de scripting any logic related to Premium membership or déclenche le modal , check a user's MembershipType property to determine if they're already subscribed.


local Players = game:GetService("Players")
local player = Players.LocalPlayer
if player.MembershipType == Enum.MembershipType.Premium then
-- Prenez des actions spécifiques pour les membres Premium
end

Activer la modalité

Vous pouvez déclencher la modalité d'achat avec la méthode PromptPremiumPurchase(). Par exemple, le code suivant demande aux utilisateurs d'acheter Premium lorsque leur personnage touche la partie qu'elle contient Script , telle qu'un téléporteur qui permet l'accès à 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)
-- Téléportez le personnage dans la zone exclusive
local function teleportPlayer(player)
-- Demander un flux de travail autour de l'emplacement de la cible
player:RequestStreamAroundAsync(TELEPORT_POSITION)
-- Téléportez le personnage
local character = player.Character
if character and character.Parent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(TELEPORT_POSITION))
end
end
-- Détecter les parties du personnage qui touchent le téléporteur
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
-- L'utilisateur a Premium ; téléportez le personnage dans la zone exclusive dans l'expérience
teleportPlayer(player)
else
-- Afficher la modalité d'achat, en utilisant le rebond pour montrer une fois tous les quelques secondes au maximum
if not showModal then return end
showModal = false
task.delay(5, function()
showModal = true
end)
MarketplaceService:PromptPremiumPurchase(player)
end
end)
-- Détecter les parties du personnage qui sortent du téléporteur
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)
-- Gérer l'événement de changement d'adhésion
Players.PlayerMembershipChanged:Connect(function(player)
warn("User membership changed; new membership is " .. tostring(player.MembershipType))
-- Téléporter le personnage si le type d'adhésion est Premium et que le personnage est sur le téléporteur
if player.MembershipType == Enum.MembershipType.Premium and player:GetAttribute("CharacterPartsTouching") > 0 then
teleportPlayer(player)
end
end)