Pagamenti basati sul coinvolgimento

I pagamenti automatici basati su impegni ti permettono di guadagnare Robux in base alla quota di tempo che i membri Premium si impegnano in un'esperienza, indipendentemente dalla dimensione dell'esperienza. Questi pagamenti sono in aggiunta ai guadagni da altri monetizzazione metodi come Passi.

Per incoraggiare la crescita degli abbonati Premium e aumentare il tuo potenziale per guadagnare pagamenti basati sull'impegno, puoi aggiungere Modale di Acquisto Premium direttamente in un'esperienza.

Accesso ai dati di pagamento

I dati di pagamento possono fornire un feedback vitale per aiutarti a capire quali fattori spingono gli abbonati Premium alle tue esperienze.

  1. vai al Pannello di creazione; verranno visualizzate tutte le tue esperienze;

  2. Passa il mouse sull'esperienza desiderata, fai clic sul icona e seleziona Sviluppatore Statistiche.

    Opzione Statistiche dello Sviluppatore nel menu delle opzioni di un'esperienza sulla Dashboard del Creatore
  3. Nella navigazione in alto, fai clic sul PAGAMENTI BASATI SULL'IMPEGNO scheda.

    Scheda dei pagamenti basati sull'impegno nella pagina delle statistiche dello sviluppatore della dashboard del creatore

Pagamento premium

Il Pagamenti basati sull'impegno Il grafico tiene traccia dei dati di pagamento in base alle seguenti metriche:

Punteggio Playtime Premium è la quantità di tempo che gli abbonati Premium si impegnano con l'esperienza al giorno. Questo parametro può offrire un immediato riscontro sull'impatto delle nuove funzionalità da te offerte.

Premium Playtime Robux Guadagnati è l'importo che ci si può aspettare di guadagnare per l'impegno degli abbonati Premium. Questo non si basa sul tempo giornaliero Gli abbonati Premium spendono impegnandosi con l'esperienza; invece, questa metrica aggrega il comportamento di ogni utente negli ultimi 28 giorni. Per questo motivo, anche se gli utenti hanno tendenze simili, questo parametro non ha una relazione matematica diretta con il punteggio Playtime Premium**.

Grafico di esempio che traccia i dati di pagamento basati sull'impegno

Visite Premium

Il Visite Premium il grafico tiene traccia di quante visite provengono da membri Premium. Utilizzando il menu a tendina, puoi scegliere tra Percentuale visite Premium, Visite Premium o Visite totali.

Grafico di esempio che tiene traccia di quante visite provengono da membri Premium

Modalità di acquisto Premium

Una strategia per aumentare i pagamenti basati sull'impegno è incoraggiare Premio aggiornare attraverso il acquisto modal. I giocatori possono completare l'acquisto interamente all'interno dell'esperienza e immediatamente ricevere sia lo status Premium e il loro stipendio iniziale di Robux.

Modale di acquisto premium all'interno di un'esperienza
Modale di acquisto premium all'interno di un'esperienza

Ricorda che l'iscrizione Premium non dovrebbe essere un "requisito" per godere di un'esperienza. Durante l'implementazione di incentivi per i membri Premium, si consiglia vivamente di seguire queste best practice:

  • Descrivi onestamente e con precisione i vantaggi dell'aggiornamento all'interno dell'esperienza descrizione.
  • Non promettere Robux o altre ricompense fuori dall'esperienza che non controlli.
  • Non mostrare il modal come "paywall" quando i membri non Premium entrano nell'esperienza.
  • Considera di offrire ai membri Premium esclusivi merch ma non dare loro un vantaggio tattico rispetto agli altri, come una serie di armi ultra potenti che i membri non Premium non possono competere.

Controllo Dell'Abbonamento

Prima di scriptare qualsiasi logica relativa all'iscrizione Premium o innescare il modal, controlla il profilo di un utente Classe.Giocatore.Tipo Membership|Tipo Membership proprietà per determinare se sono già abbonati.


local Players = game:GetService("Players")
local player = Players.LocalPlayer
if player.MembershipType == Enum.MembershipType.Premium then
-- Take some action specifically for Premium members
end

Attivare il Modale

Puoi attivare la Modalità di acquisto Premium con il PromptPremiumPurchase()metodo. Ad esempio, il seguente codice invita gli utenti ad acquistare Premium quando il loro avatar tocca la parte cui è collegato il loro Scriptcontenuto, ad esempio un teletrasporto che consente di ottenere accesso a un'area esclusiva per Premium.


local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local teleporter = script.Parent
local showModal = true
local TELEPORT_POSITION = Vector3. ew(1200, 200, 60)
-- Teletrasporta il personaggio all'area esclusiva
funzione locale teletrasportoGiocatore(giocatore)
-- Richiedi lo streaming intorno alla posizione di destinazione
giocatore:RequestStreamAroundAsync(TELEPORT_POSITION)
-- Personaggio di teletrasporto
carattere locale = giocatore. haracter
se carattere e carattere. arent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame. ew(TELEPORT_POSITION))
end
end
-- Rileva le parti del carattere che toccano il teletrasportatore
. ouched:Connect(function(otherPart)
local player = Players:GetPlayerFromCharacter(otherPart. arent)
se non il giocatore restituisce la fine
se non il giocatore:GetAttribute("CharacterPartsTouching") poi
giocatore:SetAttribute("CharacterPartsTouching", 0)
end
player:SetAttribute("CharacterPartsTouching", player:GetAttribute("CharacterPartsTouching") + 1)
se giocatore. embershipType == Enum.MembershipType. remium then
-- L'utente ha Premium; teletrasporta il personaggio in area esclusiva all'interno dell'esperienza
teletrasportatore(giocatore)
else
-- Mostra la modalità di acquisto, usando debounce per mostrare una volta ogni pochi secondi al massimo
se non mostraModal poi torna alla fine
showModal = false attività
. elay(5, function()
showModal = true
end)
MarketplaceService:PromptPremiumPurchase(player)
end
end)
-- Rileva le parti del carattere in uscita dal teletrasportatore
teletrasportatore. ouchEnded:Connect(function(otherPart)
local player = Players:GetPlayerFromCharacter(otherPart. arent)
se giocatore e giocatore:GetAttribute("CharacterPartsTouching") poi
giocatore:SetAttribute("CharacterPartsTouching", giocatore:GetAttribute("CharacterPartsTouching") - 1)
end
end)
-- Handle membership changed event
Players. layerMembershipModificato:Connect(function(player)
warn("User membership changed; new membership is " .. tostring(giocatore. embershipType))
-- Il carattere teletrasporto se il tipo di appartenenza è Premium e il carattere è sul teletrasporto
se il giocatore. embershipType == Enum. embershipType. remium and player:GetAttribute("CharacterPartsTouching") > 0 then
teleportPlayer(player)
end
end)