通行證 讓您向用戶收取一次性 Robux 費用,以便在您的體驗中獲得特殊特權,例如進入禁區,使用體驗中的虛擬人偶道具目或永久強化。
創建通行證
要創建通行特權證:
- 前往 創作 並選擇體驗。
- 前往 金錢化 通行證 。
- 點擊 建立通行證 。
- 上傳一張圖像以顯示為通行證圖示。請確保圖像不超過 512x512 像素,不包含重要細節在其圓形邊界之外,並且位於 .jpg、.png 或 .bmp 格式。
- 輸入通行特權證的名稱和說明。
- 點擊 創建通行證 。
獲取通行證 ID
要使用指令碼,您需要一個通行證 ID。要取得通行證 ID:
前往 金錢化 通行證 。
將鼠標擺放在通行證上,然後按一下 ⋯ 選單。
按一下 複製資產 ID 以複製資產到您的剪輯板。
出售通行證
您可以在體驗內或外賣出通行證。
體驗外
要在體驗的 商店 頁面出售通行證:
- 前往 金錢化 通行證 。
- 將鼠標擺放在通行證上,然後按一下 ⋯ 選單。
- 選擇你想要出售的通行證。
- 選擇 銷售 。
- 啟用 出售物品 切換。
- 在 價格 欄中,輸入您想要向用戶收特權證的 Robux 數量。 價格由您輸入的影響您所賺取的 Robux 數量。 價格由您輸入的影響您所賺取的 Robux 數量。 最低價格為 1 Robux,最高價格為 10 億 Robux。
- 點擊 儲存變更 。通行證會在體驗的 商店 頁面上傳。
體驗內
要在體驗中實現和出售通行證,請呼叫 MarketplaceService 函數。
使用 GetProductInfo() 來取回通行特權證的信息,例如名稱和價格,然後將該通行證顯示給用戶。您可以在體驗的市場中出售通行證,例如。對於通行證,第二個參數必須為 Enum.InfoType.GamePass。
local MarketplaceService = game:GetService("MarketplaceService")
-- 將標識符號碼替換為您的通行證 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
-- 顯示產品資訊
-- 將列印說明變更為 UI 代碼以顯示通行特權證
print("Pass Name: " .. productInfo.Name)
print("Price in Robux: " .. productInfo.PriceInRobux)
print("Description: " .. productInfo.Description)
else
print("This product isn't for sale")
end
end
使用 PromptPurchase() 提示購買,如果使用者尚未擁有通行證。你可以在使用者執行此類操作,例如按一下按鈕或與供應商 NPC 聊天時,呼叫此函數。
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- 將標識符號碼替換為您的通行證 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("Error while checking if player has pass: " .. tostring(message))
return
end
if hasPass then
-- 顯示提示,告訴使用者他們已經擁有通行特權證
else
-- 提示購買通行證
MarketplaceService:PromptGamePassPurchase(player, passID)
end
end
使用 PromptGamePassPurchaseFinished() 來處理已完成的通行證提示和購買並分配給用戶的通行特權證特權。
將 Class.ServerScriptService 的指令碼放置在 Class.ServerScriptService 內,以便服務器可以處理使用者的通行證特權。
local MarketplaceService = game:GetService("MarketplaceService")
-- 將標識符號碼替換為您的通行證 ID
local passID = 0000000 -- 變更此項目為您的通行證 ID
-- 處理已完成的提示和購買
local function onPromptPurchaseFinished(player, purchasedPassID, purchaseSuccess)
if purchaseSuccess and purchasedPassID == passID then
print(player.Name .. " purchased the Pass with ID " .. passID)
-- 為使用者分配通行證相關的能力或獎特權證
end
end
-- 連接已完成的事件到 function
MarketplaceService.PromptGamePassPurchaseFinished:Connect(onPromptPurchaseFinished)
分配通行證特權
您必須手動為購買您通行證的用戶分配通行證特權。若要這麼做,您必須使用 PlayerAdded 當一位用戶加入您的體驗來確認他們是否擁有通行證,並且分配通行證特權。
將 Class.ServerScriptService 的指令碼放置在 Class.ServerScriptService 內,以便服務器可以處理使用者的通行證特權。
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
-- 將標識符號碼替換為您的通行證 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("Error while checking if player has pass: " .. tostring(message))
return
end
if hasPass then
-- 為使用者分配通行證相關的能力或獎特權證
print(player.Name .. " owns the Pass with ID " .. passID)
end
end
-- 連接玩家增加的事件到函數
Players.PlayerAdded:Connect(onPlayerAdded)
通行證分析
使用通行證分析來分析個人通行證的成功,識別趨勢,並預測未來的潛在收益。
有了分析,您可以:
- 檢視您在指定時間範圍內的頂級通行證。
- 在時間序列圖表上展示最多八個銷量最高的項目,分析總銷售和純收入。
- 監視您的目錄並按銷售和純收入排序項目。
要取得通行證分析:
- 前往 創作 並選擇體驗。
- 前往 金錢化 通行證 。
- 選擇 分析 標籤。