パス

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

パスを使用すると、ユーザーにゲーム内の特権、例えば制限区域への入場、ゲーム内アバターアイテム、または永続的な強化を得るための一度限りのRobux料金を請求できます。

パスを作成する

パスを作成するには:

  1. Creationsにアクセスし、ゲームを選択します。
  2. マネタイズパスに移動します。
  3. パスを作成をクリックします。
  4. パスのアイコンとして表示する画像をアップロードします。画像は512x512ピクセルを超えず、円形の境界の外に重要な詳細を含まず、.jpg.png、または.bmp形式である必要があります。
  5. パスの名前と説明を入力します。
  6. パスのカテゴリを選択します。カテゴリはゲーム内ショップでのアイテムの整理に使用されます。
  7. パスを作成をクリックします。
良い円形トリミング
悪い円形トリミング

パスIDを取得する

スクリプトを使用するには、パスIDが必要です。パスIDを取得するには:

  1. マネタイズパスに移動します。

  2. パスのサムネイルにカーソルを合わせ、ボタンをクリックし、コンテキストメニューからアセット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
end

購買プロンプトとその購入が完了したことを処理し、ユーザーにそのパスに関連する特権を付与するにはPromptGamePassPurchaseFinishedを使用します。

スクリプトをServerScriptService内に置いて、サーバーがユーザーのパス特権を処理できるようにします。


local MarketplaceService = game:GetService("MarketplaceService")
-- プレースホルダーIDをパスIDに置き換えます
local passID = 0000000 -- このIDをあなたのパス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)

ゲーム外で

ゲームの詳細ページのストアタブでパスを販売するには:

  1. マネタイズパスに移動します。
  2. パスにカーソルを合わせ、**⋯**メニューをクリックします。
  3. 販売したいパスを選択します。
  4. 販売を選択します。
  5. 販売中のアイテムトグルを有効にします。
  6. Robuxでの価格フィールドに、パスに対して請求したいRobuxの金額を入力します。入力する価格は、販売ごとのRobuxの収益に影響します。最低価格は1Robux、最高価格は10億Robuxです。
  7. 変更を保存をクリックします。パスはゲームの詳細ページのストアタブに表示されます。

パスの特権を割り当てる

購入したパスを持つユーザーに手動で特権を割り当てる必要があります。これを行うには、ユーザーがゲームに参加したときに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のリストを受け取り、それらの製品のパーソナライズされた順序付けされたリストを返します。この方法を使用して、ユーザーにゲーム内ストアでパーソナライズされたアイテムの推奨を提供できます。

例: ユーザー向けにランク付けされた3つの「パワー」アイテム
ユーザー向けにランク付けされた3つのアイテム。

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パッケージを購入すると、プロモーションされたパスを受け取り、ゲームに参加することでパスを受け取るよう促されます。

プロモートして欲しいパスにオプトインするには:

  1. マネタイズパスに移動します。
  2. プロモートするパスを選択します。
  3. プロモーションを選択します。
  4. このアイテムをボーナスプールに含めるを有効にします。
  5. 変更を保存をクリックします。パスはRobux購入ページの関連ユーザーに表示されます。

プロモーションされたパスは:

  • 販売中であってもなくてもかまいません。販売中の場合、Robuxの価値は49Robuxより大きく、801Robuxより小さくなければなりません。
  • サムネイルを含む必要があります。
  • 有料ランダムアイテムを付与してはいけません。
  • コミュニティ基準に準拠する必要があります。

パスアナリティクス

パスアナリティクスを使用して、各パスの成功を分析し、トレンドを特定し、将来の収益を予測します。

アナリティクスを使用すると:

  • 選択した期間内のトップパスを表示できます。
  • 全体の販売および純収益を分析するために、最大8つのトップセールアイテムを時系列グラフで表示できます。
  • カタログを監視し、アイテムを販売および純収益でソートできます。
  • Robux購入ページでのプロモーションを通じてユーザーが獲得したパスの数を表示できます。
  • ユーザーがRobux購入ページを通じてパスを獲得した後にゲームに参加した数を表示できます。

パスアナリティクスにアクセスするには:

  1. Creationsにアクセスし、ゲームを選択します。
  2. マネタイズパスに移動します。
  3. アナリティクスタブを選択します。
©2026 Roblox Corporation。Roblox(ロブロックス)、RobloxロゴおよびPowering Imaginationは、米国並びにその他の国における登録商標および非登録商標です。