パスを使用すると、ユーザーにゲーム内の特権にアクセスするための一度限りのRobux料金を請求できます。特権には、制限されたエリアへの入場、ゲーム内アバターアイテム、または永続的なパワーアップが含まれます。
パスを作成する
パスを作成するには:
- Creationsに移動し、ゲームを選択します。
- マネタイズ ⟩ パスに移動します。
- パスを作成をクリックします。
- パスアイコンとして表示する画像をアップロードします。画像は512x512ピクセルを超えず、円形の境界の外に重要な詳細が含まれていないこと、そして.jpg、.png、または.bmp形式であることを確認してください。
- パスの名前と説明を入力します。
- パスのカテゴリを選択します。カテゴリは、ゲーム内ショップでアイテムを整理するために使用されます。
- パスを作成をクリックします。


パスIDを取得する
スクリプトを使用するには、パスIDが必要です。パスIDを取得するには:
マネタイズ ⟩ パスに移動します。
パスのサムネイルにカーソルを合わせ、⋯ボタンをクリックし、コンテキストメニューからアセットIDをコピーを選択します。

パスを販売する
パスを販売する方法は2つあります:
ゲーム内で
ゲーム内でパスを実装して販売するには、MarketplaceService関数を呼び出します。
GetProductInfo()を使用して、パスの情報(名前や価格など)を取得し、そのパスをユーザーに表示します。たとえば、ゲームのマーケットプレイス内でパスを販売できます。パスの場合、2番目のパラメータはEnum.InfoType.GamePassでなければなりません。
local MarketplaceService = game:GetService("MarketplaceService")
-- プレースホルダーIDをパスIDに置き換えます
local productId = 000000
local success, productInfo = pcall(function()
return MarketplaceService:GetProductInfo(productId, Enum.InfoType.GamePass)
end)
if success and productInfo then
-- 商品が販売中かどうかを確認
if productInfo.IsForSale then
-- 商品情報を表示
-- print文をUIコードに置き換えてパスを表示します
print("パス名: " .. productInfo.Name)
print("Robuxでの価格: " .. productInfo.PriceInRobux)
print("説明: " .. productInfo.Description)
else
print("この商品は販売されていません")
end
endユーザーがすでにパスを所有していない場合、PromptGamePassPurchase()を使用してパス購入を促します。この関数は、ユーザーがボタンを押したり、ベンダーNPCに話しかけたりするなどのアクションを実行したときに呼び出すことができます。
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- プレースホルダーIDをパスIDに置き換えます
local passID = 0000000
-- パス購入を促す
local function promptPurchase()
local player = Players.LocalPlayer
local hasPass = false
local success, message = pcall(function()
hasPass = MarketplaceService:UserOwnsGamePassAsync(player.UserId, passID)
end)
if not success then
warn("プレイヤーがパスを持っているか確認中にエラーが発生しました: " .. tostring(message))
return
end
if hasPass then
-- ユーザーにすでにパスを所有していることを伝えるメッセージを表示
else
-- パス購入を促す
MarketplaceService:PromptGamePassPurchase(player, passID)
end
endPromptGamePassPurchaseFinishedを使用して、完了したパスのプロンプトと購入を処理し、ユーザーにパスに関連する特権を付与します。
スクリプトをServerScriptService内に配置して、サーバーがユーザーのパス特権を処理できるようにします。
local MarketplaceService = game:GetService("MarketplaceService")
-- プレースホルダーIDをパスIDに置き換えます
local passID = 0000000 -- これをパスIDに変更します
-- 完了したプロンプトと購入を処理
local function onPromptPurchaseFinished(player, purchasedPassID, purchaseSuccess)
if purchaseSuccess and purchasedPassID == passID then
print(player.Name .. "がID " .. passID .. " のパスを購入しました")
-- ユーザーにパスに関連する能力やボーナスを付与します
end
end
-- PromptGamePassPurchaseFinishedイベントを関数に接続
MarketplaceService.PromptGamePassPurchaseFinished:Connect(onPromptPurchaseFinished)ゲーム外で
Robloxは、あなたのリストされたパスをゲーム外で表示します。これには、Robloxのホームページ、検索結果、プレイヤーがRobuxを購入した後の購入ページが含まれます。プレイヤーはパスを購入し、その後、すでに付与された状態でゲームに参加できます。
パスを外部販売の対象にするには:
- クリエイターハブに移動し、マネタイズ ⟩ ショップに行きます。
- パスをリストされたとしてマークします。
パスはProcessReceiptの修正を必要としませんが、ゲーム外に表示されるためにはリストされた必要があります。プレイヤーが外部で認識できるように、各パスにカスタムアイコンを追加することをお勧めします。アイコンを追加しない場合、Robloxはデフォルトのアイコンを表示します。
パス特権を割り当てる
パスを購入したユーザーに手動でパス特権を割り当てる必要があります。これを行うには、ユーザーがゲームに参加したときにPlayerAddedを使用して、すでにパスを所有しているかどうかを確認し、パス特権を割り当てます。
スクリプトをServerScriptService内に配置して、サーバーがユーザーのパス特権を処理できるようにします。
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- プレースホルダーIDをパスIDに置き換えます
local passID = 0000000
local function onPlayerAdded(player)
local hasPass = false
-- ユーザーがすでにパスを所有しているか確認
local success, message = pcall(function()
hasPass = MarketplaceService:UserOwnsGamePassAsync(player.UserId, passID)
end)
if not success then
-- 警告を発行し、関数を終了
warn("プレイヤーがパスを持っているか確認中にエラーが発生しました: " .. tostring(message))
return
end
if hasPass then
-- ユーザーにパスに関連する能力やボーナスを付与
print(player.Name .. "がID " .. passID .. " のパスを所有しています")
end
end
-- PlayerAddedイベントを関数に接続
Players.PlayerAdded:Connect(onPlayerAdded)ゲーム内ストアをパーソナライズする
製品インテリジェンスAPIを使用して、ユーザーにパスをソートおよび推奨することができます。ゲーム内ストアをパーソナライズすることで、各ユーザーに最も関連性の高いアイテムを表示し、エンゲージメントと収益を向上させることができます。ユーザーの好みに合わせてパスを調整することで、発見を改善し、コンバージョン率を向上させ、新しいマネタイズの機会を開くことができます。
販売用パスをランク付けする
RankProductsAsyncは、製品IDのリストを受け取り、それらの製品のパーソナライズされた順序付きリストを返します。このメソッドを使用して、ゲーム内ストアでユーザーにパーソナライズされたアイテムの推奨を提供できます。

local MarketplaceService = game:GetService("MarketplaceService")
-- ランク付けしたい製品の配列を作成
local productIdentifiers = {
{InfoType = Enum.InfoType.GamePass, Id = 123},
{InfoType = Enum.InfoType.Product, Id = 456},
{InfoType = Enum.InfoType.Product, Id = 789}
}
-- オプション:リクエストが遅い場合にUI / ゲームがフリーズしないように、非同期タスクで呼び出しをラップします
task.spawn(function()
-- エラーを優雅に処理するためにpcallを使用
local success, result = pcall(function()
return MarketplaceService:RankProductsAsync(productIdentifiers)
end)
if not success then
-- 失敗した場合、'result'はエラーメッセージです。
warn("製品のランク付けに失敗しました:", result)
end
-- 戻り値のアイテムをストアに読み込みます。
for i, rankedItem in ipairs(rankedProducts) do
local productIdentifier = rankedItem.ProductIdentifier
local productInfo = rankedItem.ProductInfo
-- ...
-- productInfoをストアに追加するロジック
end
end)トップパスを表示する
RecommendTopProductsAsyncは、InfoType値の配列を受け取り、ユーザーが最も関与し購入する可能性の高い最大50アイテムを返します。このメソッドを使用して、ゲーム内ストアに「トップピック」セクションを作成できます。
推奨が決定できない場合、RecommendTopProductsAsyncは0アイテムを返します。ユーザーがすでに所有しているパスも返されません。
稀に、ランキングモデルへの呼び出しが遅くなることがあります。ユーザーに遅延を防ぐために、task.spawnを使用してRecommendTopProductsへの呼び出しを非ブロッキングにすることをお勧めします。

local MarketplaceService = game:GetService("MarketplaceService")
-- 含める製品タイプの配列を作成します。この場合、ゲームパスとデベロッパー製品の両方
local productTypes = {Enum.InfoType.GamePass, Enum.InfoType.Product}
-- オプション:リクエストが遅い場合にUI / ゲームがフリーズしないように、非同期タスクで呼び出しをラップします
task.spawn(function()
-- エラーを優雅に処理するためにpcallを使用
local success, result = pcall(function()
return MarketplaceService:RecommendTopProductsAsync(productTypes)
end)
if not success then
-- 失敗した場合、'result'はエラーメッセージです。
warn("製品のランク付けに失敗しました:", result)
end
-- 戻り値のアイテムをストアに読み込みます。トップランクアイテムから
-- 購入できなくなったデベロッパー製品などの不適格アイテムをフィルタリングすることを確認してください
for i, rankedItem in ipairs(rankedProducts) do
local productIdentifier = rankedItem.ProductIdentifier
local productInfo = rankedItem.ProductInfo
-- ...
-- productInfoをストアに追加するロジック
end
end)パスを宣伝する
より多くのユーザーにゲームを発見してもらうために、RobloxのRobux購入ページでパスを特集するオプトインを行うことができます。パスを宣伝するオプトインを行うことで、ユーザーがゲーム内で過ごす時間とRobuxを増やすことができます。宣伝できるパスの数に制限はありません。
ユーザーには、プレイ履歴やプラットフォームでのエンゲージメントに関連するパスが表示されます。すでに所有しているパスは表示されません。

ユーザーが対象のRobuxパッケージを購入すると、宣伝されたパスを受け取り、ゲームに参加することでパスを請求するように促されます。

パスを宣伝するオプトインを行うには:
- マネタイズ ⟩ パスに移動します。
- 宣伝したいパスを選択します。
- プロモーションを選択します。
- このアイテムをボーナスプールに含めるを有効にします。
- 変更を保存をクリックします。パスはRobux購入ページの関連ユーザーに表示されます。
宣伝されたパスは:
- 販売中であっても販売中でなくてもかまいません。販売中の場合、Robuxの価値は49 Robuxより大きく、801 Robuxより小さくなければなりません。
- サムネイルを含む必要があります。
- 有料ランダムアイテムを付与することはできません。
- コミュニティ基準に準拠する必要があります。
パス分析
パス分析を使用して、個々のパスの成功を分析し、トレンドを特定し、将来の収益を予測します。
分析を使用すると:
- 選択した期間にわたるトップパスを表示できます。
- 時系列グラフで最大8つのトップセールアイテムを表示して、全体の販売と純収益を分析できます。
- カタログを監視し、販売と純収益でアイテムをソートできます。
- Robux購入ページでパスを取得したユーザー数を表示できます。
- Robux購入ページを通じてパスを取得した後にゲームに参加したユーザー数を表示できます。
パス分析にアクセスするには:
- Creationsに移動し、ゲームを選択します。
- マネタイズ ⟩ パスに移動します。
- 分析タブを選択します。
