用途:为 Roblox 体验实现 Robux 变现,覆盖开发者产品、通行证、订阅、激励视频广告、商业产品与私服等类型,并指导商店个性化与合规。
主要能力:开发者产品通过服务端 MarketplaceService.ProcessReceipt 发放,需幂等:记录已处理的 PurchaseId,仅在发放持久化后返回 PurchaseGranted,否则返回 NotProcessedYet 由 Roblox 重试;玩家未加载或已离开时等待数据或返回 NotProcessedYet。通行证用 UserOwnsGamePassAsync 在加入时校验,并监听 PromptGamePassPurchaseFinished 重新验证。订阅用 GetUserSubscriptionStatusAsync 与 UserSubscriptionStatusChanged,权益须可撤销。激励视频奖励须为开发者产品而非随机。
用法要点:所有发放只在服务端进行,绝不信任客户端事件如 PromptProductPurchaseFinished。客户端仅用 PromptProductPurchase 等发起提示。商店用 RankProductsAsync(加入时调用一次,有严格限流)与 RecommendTopProductsAsync 排序,价格用 GetProductInfoAsync / GetDeveloperProductsAsync 实时获取,不可硬编码 Robux 价格,因区域定价与价格优化会因人而异,实际支付见 receipt.CurrencySpent。
合规:付费随机物品须在购买前披露概率,并用 PolicyService:GetPolicyInfoForPlayerAsync 检查 ArePaidRandomItemsRestricted 与 IsPaidItemTradingAllowed;区域定价套利可用 GetUsersPriceLevelsAsync 限制赠送与交易,加入时获取、不跨会话缓存。
限制:资料未提供具体价格、收费方案或效果数据;部分细节(如 ProfileStore 集成、广告与商业产品)指向外部参考文档。