自动 基于交互的付款 让您根据参与体验的时间来赚取Robux,无论体验的大小。这些付款是通过“通行证”等其他“货币化”方法的收益的额外。
要鼓励高级订阅用户增长并提高您的潜在来自交互式付费的收入,您可以直接将高级订阅模态添加到体验。请注意,某些国家的用户可能无法访问高级订阅。
访问结果数据
布局数据可以提供重要的反馈,帮助您了解哪些因素会驱使高级订阅者到您的体验。
要访问支付数据:
导航到您的创作页面在 创建者仪表板 上,然后选择您的体验。
导航到 货币化 选项卡,然后选择 交互式支付 。
交互式支付
基于交互的赢取 曲线图跟踪付款数据,基于以下指标:
高级游戏时间Robux已赢得: 您可以期待从高级订阅者的交互中获得的金钱。这不是基于每日时间高级订阅者与体验互动;相反,这个指标是根据每个用户在过去 28 天内的行为聚合的。因此,即使它们有类似的趋势,这个指标也不是直接的数学关系。
高级游戏时间奖励: 高级订阅者与体验互动的时间。此指标可以提供即时反馈,并且可以帮助您发布新功能的影响。
高级访问: 高级会员来自哪里的访问。
高级购买模态
一种增加基于参与的付款的策略是鼓励 高级 通过 购买模态 的升级。玩家可以在体验完整内容并立即获得 Robux 初始奖励和其他 Robux 状态。
请记住,高级会员不应该是“需求”来享受体验。当实施奖励会员时,建议您遵循以下最佳实践:
- 诚实地描述体验的描述中的升级优势。
- 不要保证 Robux 或其他超出体验奖励,您不能控制。
- 不要将弹出窗口显示为“支付墙”,当非Premium 会员进入体验。
- 考虑为 Premium 会员提供独家 商品,但不要将它们作为其他会员的战术游戏优势,例如能够无法与非 Premium 会员竞争的超强武器阵营。
检查会员资格
在触发 Premium 会员或 触发模态 相关的任何逻辑之前,检查用户的 MembershipType 属性,以确定他们是否已经订阅。
local Players = game:GetService("Players")local player = Players.LocalPlayerif player.MembershipType == Enum.MembershipType.Premium then-- 为高级会员提供一些特定的行动end
触发模态
您可以使用 PromptPremiumPurchase() 方法触发购买模态。例如,以下代码提示用户购买 Premium 当其角色触摸到含有 Script 的部分时,例如一个允许访问独家区域的传送器。
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)
-- 将角色传送到独家区域
local function teleportPlayer(player)
-- 请求在目标位置进行流媒
player:RequestStreamAroundAsync(TELEPORT_POSITION)
-- 传送角色
local character = player.Character
if character and character.Parent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(TELEPORT_POSITION))
end
end
-- 检测触摸传送器的角色部分
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
-- 用户拥有 Premium 特权;将角色传送到体验中的独家区域
teleportPlayer(player)
else
-- 使用弹跳显示每几秒钟最多一次购买模态
if not showModal then return end
showModal = false
task.delay(5, function()
showModal = true
end)
MarketplaceService:PromptPremiumPurchase(player)
end
end)
-- 检测传送器中退出的角色部分
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)
-- 处理更改会员的事件
Players.PlayerMembershipChanged:Connect(function(player)
warn("User membership changed; new membership is " .. tostring(player.MembershipType))
-- 如果会员类型是 Premium 和角色在传送器上,请传送角色
if player.MembershipType == Enum.MembershipType.Premium and player:GetAttribute("CharacterPartsTouching") > 0 then
teleportPlayer(player)
end
end)