Roblox Plus 为您提供了额外的方式,通过奖励 Plus 订阅者的参与和购买来从您的游戏中获利。
订阅 Plus 的用户可以享受一系列福利,以增强他们的购买力、访问权限和整体游戏平台的游戏体验:
- 折扣购买: 订阅者在合格的购买中获得 10% 的折扣,包括游戏内物品、头像物品等。从第三个月开始,折扣提高到 20%。Roblox 为您承担该折扣。
- 免费付费私人服务器: 订阅者可以免费访问付费私人服务器。当他们在您的付费私人服务器中花费时间时,您仍会获得赔偿。
- 免费 Robux 转账: 订阅者可以在无需付费的情况下向其他用户转账 Robux。转账受年龄限制和父母同意的影响。通过转账收到的 Robux 不符合 DevEx 计划的资格。
- 市场访问权限: 订阅者可以交易和转售限量物品,发布和出售头像物品。高级订阅者享有相同的市场访问权限。
有关 Roblox Plus 对最终用户的好处的更多信息,请参见 帮助中心。
作为创建者,您可以通过以下方式从 Roblox Plus 订阅者中获利:
- 游戏内 Robux 购买: 订阅者在购买中获得 10-20% 的折扣,这由 Roblox 帮您承担,因此您每次购买的收益不会减少。较低的价格可以鼓励更频繁的购买,从而帮助增加您的整体收入。
- 吸引 Plus 注册: 鼓励活跃用户通过您的游戏直接订阅 Roblox Plus,使用 PromptRobloxSubscriptionPurchase。每位您引入的新订阅者可以赚取最多 750 Robux,收益自订阅开始付费后开始(免费试用期不包括在内)。
- 在付费私人服务器中花费的时间: 当订阅者每月在您的付费私人服务器中至少花费 60 分钟时,您可以赚取每个订阅者最多 100 Robux。
- 游戏内 Robux 转账: 每当 Plus 订阅者使用 PromptRobuxTransferAsync 向您的游戏中的其他用户发送 Robux 时,您将获得 10%。该金额符合 DevEx 计划的资格。
从游戏内购买中获利
使用 Roblox Plus,用户在合格的 Robux 购买中获得 10-20% 的折扣。由于 Roblox 补贴了这些折扣,您每次购买的收益与非订阅者无异。同时,Plus 订阅者的较低价格可以鼓励更频繁的购买并增加您的整体收入。
订阅者在他们的前两个月收到 10% 的折扣,从第三个月开始提高到 20%。如果用户取消了 Plus 订阅,然后再重新订阅,他们的折扣会重置为 10%,并在两个月后再次提高。
合格的 Robux 购买包括:
- 开发者产品
- 游戏通行证
- 开发者订阅
- 付费访问游戏
- 头像物品
折扣不适用于:
- 价格超过 1,000,000 Robux 的物品
- 市场发布费用
- 广告信用
- 团体费用
下表显示了 Roblox Plus 折扣如何由 Roblox 补贴。
| 用户类型 | 物品价格(Robux) | 用户支出 | Roblox 补贴 | 创作者收益 | 有效收入分成 |
|---|---|---|---|---|---|
| 非订阅者 | 100 | 100 | — | 70 | 70% |
| Plus 订阅者(10% 折扣) | 100 | 90 | 10 | 70 | 78% |
| Plus 订阅者(20% 折扣) | 100 | 80 | 20 | 70 | 88% |
从游戏内 Plus 订阅中获利
您可以使用 PromptRobloxSubscriptionPurchase 鼓励用户直接从您的游戏中订阅 Roblox Plus。每位通过您的游戏成为订阅者的用户,您将在他们的前三个月内每月赚取 250 Robux,每个新获得的订阅者最多可赚取 750 Robux。
任何收益都受到 60 天保留期的限制。

要在您的游戏中提供 Plus 订阅并给予用户奖励:
- 检测用户在您的游戏中到达要提供 Plus 订阅的点。
- 使用 HasRobloxSubscription 检查用户是否已经拥有活跃的 Plus 订阅。
- 如果用户已经是订阅者:
- 立即授予他们奖励。
- 如果用户不是订阅者:
- 使用 PromptRobloxSubscriptionPurchase 提示他们购买 Roblox Plus。
- 监听 PromptRobloxSubscriptionPurchaseFinished 以检测购买提示 UI 何时关闭。
- 使用 HasRobloxSubscription 通过 GetPropertyChangedSignal 确认服务器上的 Plus 订阅,在授予任何奖励之前。此事件验证用户的 Plus 订阅状态是否确实已更改。
示例
以下示例展示了如何在您的游戏中处理 Roblox Plus,包括检索折扣信息、检查订阅状态、提示用户订阅以及处理购买流程。
示例 1
打印游戏通行证的 Roblox Plus 折扣信息。
local MarketplaceService = game:GetService("MarketplaceService")local PASS_ID = 12345678local DiscountTypeDisplay = {RobloxPlusSubscription = "Roblox Plus 折扣",}local productInfo = MarketplaceService:GetProductInfoAsync(PASS_ID, Enum.InfoType.GamePass)print(string.format("原始价格: %d", productInfo.UserBasePriceInRobux))for _, discount in ipairs(productInfo.PriceDiscountDetails) dolocal displayName = DiscountTypeDisplay[discount.Type] or "其他折扣"print(string.format("%s (%d%%): -%d", displayName, discount.Percent, discount.AmountInRobux))endprint(string.format("您支付: %d", productInfo.PriceInRobux))
示例 2
检查用户是否拥有活跃的 Roblox Plus 订阅,并根据他们的订阅状态执行操作。
local MarketplaceService = game:GetService("MarketplaceService")
local player = game.Players.LocalPlayer
local success, details = pcall(function()
return MarketplaceService:GetRobloxSubscriptionDetailsAsync(player)
end)
if success and details.IsSubscribed then
-- 检查用户的 Plus 订阅时长
local threeMonths = 90 * 24 * 60 * 60
if details.StartTime and (os.time() - details.StartTime.UnixTimestamp) > threeMonths then
print("奖励 '3 个月订阅老手' 皮肤!")
end
-- 检查用户是否通过游戏订阅
if details.IsOriginExperience then
print("归属确认:用户通过此游戏订阅。")
else
print("用户在其他地方订阅:网站或其他游戏。")
end
end
示例 3
提示用户订阅 Plus,并在您的游戏中处理购买流程。
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local teleporter = script.Parent
local showModal = true
local EXCLUSIVE_AREA_POSITION = Vector3.new(1200, 200, 60)
-- 授予奖励并将订阅用户传送到独占区域
local function grantRewardAndTeleport(player)
player:RequestStreamAroundAsync(EXCLUSIVE_AREA_POSITION)
local character = player.Character
if character and character.Parent then
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(EXCLUSIVE_AREA_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.HasRobloxSubscription then
-- 用户已经拥有 Roblox Plus;立即授予奖励
grantRewardAndTeleport(player)
else
-- 提示 Roblox Plus 订阅
if not showModal then
return
end
showModal = false
task.delay(5, function()
showModal = true
end)
MarketplaceService:PromptRobloxSubscriptionPurchase(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)
-- 当服务器确认会员状态更改时授予奖励
-- 为每个玩家连接 HasRobloxSubscription 变化
Players.PlayerAdded:Connect(function(player)
player:GetPropertyChangedSignal("HasRobloxSubscription"):Connect(function()
if player.HasRobloxSubscription
and player:GetAttribute("CharacterPartsTouching")
and player:GetAttribute("CharacterPartsTouching") > 0
then
grantRewardAndTeleport(player)
end
end)
end)
示例 4
检测用户何时关闭购买提示 UI。
local MarketplaceService = game:GetService("MarketplaceService")
local function onPromptRobloxSubscriptionPurchaseFinished(player, didTryPurchasing)
if didTryPurchasing then
-- 用户尝试订阅;等待 HasRobloxSubscription 状态变化以确认
print(player.Name, "尝试订阅 Roblox Plus")
else
print(player.Name, "关闭了 Roblox Plus 订阅提示而没有购买")
end
end
MarketplaceService.PromptRobloxSubscriptionPurchaseFinished:Connect(onPromptRobloxSubscriptionPurchaseFinished)
从付费私人服务器时间中获利
Roblox Plus 订阅者可以免费创建付费私人服务器。为确保您仍能从这些服务器中获利,Roblox 根据 Plus 订阅者在您游戏中创建的付费私人服务器中花费的时间来赔偿您。
支付基于 Plus 订阅者在他们自己创建的付费私人服务器中花费的时间。 这意味着如果一个 Plus 订阅者邀请另一个 Plus 订阅者进入付费私人服务器,您将不会从被邀请的玩家身上获利。
在 Plus 订阅续订日,Roblox 会评估该订阅者过去 30 天的付费私人服务器使用情况。即使订阅者选择取消 Plus 而不是续订,此评估仍会进行。然后,Roblox 确定订阅者在您游戏中创建的排名前五的付费私人服务器,依据他们在此期间每个服务器中花费的时间,最低要求为 60 分钟累计时间。
如果一个 Plus 订阅者(包括在免费 Plus 试用中的订阅者)在过去 30 天内在其创建的付费私人服务器中花费至少 60 分钟的累计时间,则您可以根据服务器价格赚取每用户每服务器最多100 Robux。
在以下示例中,服务器 A、B 和 C 由于 Plus 订阅者在过去 30 天中每个服务器中花费了至少 60 分钟而符合资格。服务器 D 和 E 不符合资格,因为它们未达到 60 分钟的阈值。如果所有五个服务器(A-E)属于同一个游戏,并且代表了订阅者花费时间最多的前五个服务器,则创作者在符合资格的服务器上总共获得 205 Robux。
| 游戏的付费私人服务器 | 服务器价格 | 累计时间(续订前 30 天) | 创作者收益 |
|---|---|---|---|
| 服务器 A | 100 Robux | 120 分钟 | 70 Robux(在 100 Robux 服务器价格上的 70% 收入分成) |
| 服务器 B | 200 Robux | 80 分钟 | 100 Robux(在 200 Robux 服务器价格上的 70% 收入分成,上限为 100 Robux) |
| 服务器 C | 50 Robux | 70 分钟 | 35 Robux(在 50 Robux 服务器价格上的 70% 收入分成) |
| 服务器 D | 60 Robux | 15 分钟 | 不符合资格(少于 60 分钟) |
| 服务器 E | 70 Robux | 10 分钟 | 不符合资格(少于 60 分钟) |
从 Robux 转账中获利
Robux 转账允许 Plus 订阅者直接向其他用户发送 Robux。您可以实现转账 API 来在您的游戏中提示这些转账,并从每次转账中获得一部分收益。
当 Plus 订阅者在您的游戏中由 PromptRobuxTransferAsync 提起转账时,您将收到转账金额的 10%。例如,如果订阅者向其他用户转账 100 Robux,接收者将收到 90 Robux(90%),而您的游戏将获得 10 Robux(10%)。
您从转账中获得的 Robux是符合 DevEx 计划的资格。Roblox 不会从这些转账中收取费用。

有关在您的游戏中实施 Robux 转账的更多信息,请参见 Robux 转账。
跟踪您的 Plus 收益
您可以跟踪通过游戏内提示、使用转账 API 的 Robux 转账以及 Plus 订阅者在您付费私人服务器中花费时间的收益,无论他们是从您的游戏中还是外部加入的。
要查看 Plus 订阅激励的详细分类:
- 在创作者中心,转到 创作 并选择一个游戏。
- 转到 变现 ⟩ Roblox Plus。
