通道事件

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

通道事件 讓您通過體驗的關鍵階段追蹤用戶的進度。這包括:

  • 入門 - 用戶在開始使用您的體驗時會到哪裡掉落?
  • 進度 - 使用者在你的體驗中停止前進的地方?
  • 商店 - 用戶在哪裡放棄購買?

一旦您的體驗開始記錄通道事件,您就會解鎖創作者中心的分析面板通道頁面。您可以為最多十個管道新增標籤到面板。

跟蹤漏斗事件

要跟蹤通道事件,請先識別您體驗中最重要的通道,並將它們分為步驟。新手流程是一個很好的啟動地點,因為這是你可能會失去大部分用戶的地方。

跟蹤一次性管道

一次性熱銷管監視只發生一次每使用者的轉換事件。

一個常見的例子是一個 培訓漏斗 ,對於理解如何提高您體驗的新用戶保留率和會話時間至關重要。以下示例是用於 植物 的入門漏斗,新用戶進入農場、種植種子、灌溉植物等在順序中:

在工廠追蹤入門步驟

local AnalyticsService = game:GetService("AnalyticsService")
-- 記錄FTUE的第一步
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- 步驟編號
"In Farm" -- 步驟名稱
)
-- 記錄第二步
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
2, -- 步驟編號
"Plant Seed" -- 步驟名稱
)

追蹤重複管道

一個重複的漏斗會監控每個使用者發生多次的轉換事件。

一個常見的例子是一個 商店漏斗 ,對於了解如何提高體驗付款轉換、ARPPU 和收入至關重要。以下示例是一個商店漏斗,在那裡使用者可以開啟商商店 商家、查看物道具、將物品添加到購物車等等。

使用 funnelSessionId 來區分同一使用者在重複漏斗中的不同會話,例如在單個會作業中多次開啟商店。

追蹤商店步驟

local AnalyticsService = game:GetService("AnalyticsService")
local HttpService = game:GetService("HttpService")
funnelSessionId = HttpService:GenerateGUID()
-- 當使用者開啟商商店 商家時記錄
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- 用於將步驟組合在一起的通道名稱
funnelSessionId, -- 此獨特的付款會話的通道會作業ID
1, -- 步驟編號
"Opened Store" -- 步驟名稱
)
-- 當使用者查看項道具時記錄
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- 用於將步驟組合在一起的通道名稱
funnelSessionId, -- 此獨特的付款會話的通道會作業ID
2, -- 步驟編號
"Viewed Item" -- 步驟名稱
)
-- 當使用者查看添加到購物車時記錄
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- 用於將步驟組合在一起的通道名稱
funnelSessionId, -- 此獨特的付款會話的通道會作業ID
3, -- 步驟編號
"Added to Cart" -- 步驟名稱
)

實裝funnelSessionId

當執行漏斗時,funnelSessionId 可以幫助您跟蹤事件,但可能不需要在每個個體、實例況下都使用。使用以下指南:

  • 一次性漏斗 - 你不需要使用 funnelSessionId 一次性漏斗,因為它們只發生一次每個使用者。
  • 商店漏斗 - 使用 funnelSessionId 來區分不同會話的同一用戶在重複漏斗中,例如在 以前的例子中開啟商店多次在單個會話中 。在這種情況下,玩家可能在一個會作業中多次打開商店,因此建議使用GUID作為funnelSessionId
  • 物品升級 - 使用 funnelSessionId 來區分不同的物品升級路徑,通常超過單次遊戲會作業的更長時間期間。而不是使用商店漏斗案件中的GUID,您可以經常根據正在升級的項目建立獨特的鑰匙,例如:<playerId>-<itemId>

初始步驟

漏斗會在第一步記錄時開始。如果您想立即在玩家加入時啟動漏斗,您需要在 PlayerAdded 事件上記錄第一步。

記錄玩家新增事件的第一步

local AnalyticsService = game:GetService("AnalyticsService")
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- 步驟編號
"Player Joined" -- 步驟名稱
)
end)

重複步驟

如果使用者重複漏斗中的步驟,漏斗只會考慮步驟的第一個實例。例如,如果使用者兩次記錄通道的步驟 2,通道只會計數第一個步驟 2 的實例。

已跳過步驟

如果因為某種原因你跳過了漏斗中的一個步驟,之前的步驟將自動完成。

例如,如果您有步驟 1、2 和 3 的管道。如果您沒有記錄步驟 1 或 2 而記錄步驟 3,管道將視步驟 1 和 2 為已完成。

使用管道過濾器

Roblox 提供過濾器來幫助您分析通道數據。這包括玩家資料、裝置資料,您也可以傳送自訂資料。在某些情況下,玩家的狀態可能會在漏斗期間發生變化,例如當玩家從手機切換到桌面時。

為了避免計數重複的漏斗,過濾器總是 只適用於漏斗的第一步 。這意味著,如果玩家在漏斗期間切換裝置,漏斗將只會在他們進入漏斗時將裝置歸屬給他們。

相同地,漏斗會依照群組顯示,如果玩家於 6/19 進入漏斗,即使他們於 6/20 完成漏斗,漏斗也會被認為屬於 6/19 群組。

修改管道

在你更新你的管道步驟之後,設定正確的日期範圍來查看最新的管道是很重要的。如果當前日期是 6/21 且你於 6/14 更新了導入漏斗的步驟 2,你應該將日期範圍設為 6/14 – 6/21 來查看最新的漏斗。

如果您選擇包含漏斗步更新的日期範圍,相關步驟上會顯示警告:

A warning displays on the funnel dashboard indicating a name change within the selected date range.

保護您的通道免受濫用者攻擊

為了保持數據清潔,在服務器代碼中添加一定程度的數據驗證很重要,以防止惡意程式發送無效數據到您的分析服務。

例如,如果您有 3 步的入門漏斗,您可以使用 RemoteEvent 通知服務器當玩家完成每一步後,並將服務器檢查添加到確保步驟數字有效之前記錄事件的事件:

客戶端事件代碼

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local onboardingEvent = ReplicatedStorage:WaitForChild("OnboardingEvent")
local function fireOnboardingEvent(step: number)
onboardingEvent:FireServer({ step = step })
end
fireOnboardingEvent(1)
fireOnboardingEvent(2)
fireOnboardingEvent(10) -- invalid step
服務器側事件代碼

local AnalyticsService = game:GetService("AnalyticsService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local onboardingEvent = ReplicatedStorage:WaitForChild("OnboardingEvent")
local maxStep = 3
local function onPlayerEventFired(player: Player, args: { step: number })
local step = args.step
if(step > maxStep) then
warn(`Invalid tutorial step {step} received from client.`)
return
end
print(`{player.Name} completed step: {step}`)
AnalyticsService:LogOnboardingFunnelStepEvent(player, step)
end
onboardingEvent.OnServerEvent:Connect(onPlayerEventFired)

使用自訂欄位

管道事件也允許分解到自訂欄位來支持更容易的間比較之間的區域。例如,您可以追蹤哪輛新手車能給玩家最好的進度,或附加不同的地圖來看看哪張地圖的遊戲循環比其他地圖更好。

A dropdown indicating the three custom fields you can compare across, along with standard breakdowns like age, gender, operating system and more.

了解更多信息,請參閱自訂欄位

使用管道來擴展您的體驗

要追蹤的最重要通道之一是培訓,因為許多經驗會困難於新使用者保留和互動與。

在下方的 植物 入門管道中,最大的掉落是步驟 2(「植物種子」)。

Funnels chart for Plant experience showing a 70% drop-off between In Farm, step 1, and Plant Seed, step 2.

根據這些資料,您可以:

  • 添加上下文指標來更好地指導用戶在開始時種植種子。
  • 設計一個新的使用者體驗,需要使用者種植種子並栽培成功的植物,才能探索體驗的其他部分。您可以通過創建 正面反饋元素 或其他遊戲設計技巧來改善此事件。
In-experience view of Plant experience showing prompts to plant seeds above the flowerpots.