分析服務 是一個集合方法,讓開發人員可以跟蹤用戶如何與他們的體驗互動,特別是玩家進度、體驗經濟、管道和自訂事件。
概要
方法
記錄用於在體驗中跟蹤使用者自訂指標的事件。
- LogEconomyEvent(player : Player,flowType : Enum.AnalyticsEconomyFlowType,currencyType : string,amount : number,endingBalance : number,transactionType : string,itemSku : string,customFields : Dictionary):()
記錄用於跟蹤經驗相關的玩家行動的事件。
- LogFunnelStepEvent(player : Player,funnelName : string,funnelSessionId : string,step : number,stepName : string,customFields : Dictionary):()
記錄用於跟蹤用戶行動步驟通過預先計劃的漏斗的事件。
- LogOnboardingFunnelStepEvent(player : Player,step : number,stepName : string,customFields : Dictionary):()
記錄用於跟蹤用戶在培訓通道中步行的行動的事件。
- LogProgressionCompleteEvent(player : Player,progressionPathName : string,level : number,levelName : string,customFields : Dictionary):()
記錄使用者完成等級嘗試時的事件。
- LogProgressionEvent(player : Player,progressionPathName : string,status : Enum.AnalyticsProgressionType,level : number,levelName : string,customFields : Dictionary):()
記錄使用者開始、完成或失敗等級嘗試時的事件。
- LogProgressionFailEvent(player : Player,progressionPathName : string,level : number,levelName : string,customFields : Dictionary):()
記錄使用者在等級嘗試失敗時發生的事件。
- LogProgressionStartEvent(player : Player,progressionPathName : string,level : number,levelName : string,customFields : Dictionary):()
記錄使用者開始等級嘗試時的事件。
屬性
方法
LogCustomEvent
記錄用於在體驗中跟蹤使用者自訂指標的事件。如需進一步資訊,請參閱自訂事件。
參數
引發事件的使用者。
自訂事件的名稱。
將在聚合中使用的事件值。
可選擇的自訂欄位辭典,可在 Roblox 提供的圖表中提供拆解。只有特定的鑰匙,由 Enum.AnalyticsCustomFieldKeys 提供,才會用於這些拆解。每個體驗的三個自訂欄位的值組合上限為 8,000 種獨特組合。
返回
範例程式碼
This example uses AnalyticsService:LogCustomEvent() to log two custom events: MissionStarted and MissionCompletedDuration.
local AnalyticsService = game:GetService("AnalyticsService")
-- Log when the mission starts
AnalyticsService:LogCustomEvent(
player,
"MissionStarted" -- Custom event name
)
-- Log when the mission is completed with the time it took
AnalyticsService:LogCustomEvent(
player,
"MissionCompletedDuration", -- Custom event name
120 -- Event value used in aggregation
)
LogEconomyEvent
記錄用於跟蹤經驗相關的玩家行動的事件。
參數
引發事件的使用者。
應指定使用 Enum.AnalyticsEconomyFlowType 流動的貨幣方向。
正在添加或移除貨幣的名稱,例如 "gold" , "gems" 或 "energy" 。每個體驗限於 5 種獨特的貨幣類型。
添加或移除的貨幣數量。此值應始終為正值。
貨幣添加或移除後,使用者的餘額應大於或等於 0。這個值應該永遠大於或等於 0。
發生的交易類型。雖然您可以使用任何交易類型,但建議使用從 Enum.AnalyticsEconomyTransactionType 提供的類型,例如 "IAP" 或 "ContextualPurchase" 來啟用 Roblox 工具和圖表的未來見解。
因為此字段類型是字串,你需要傳送枚舉的 Name 值。例如 Enum.AnalyticsEconomyTransactionType.IAP.Name 。
每個體驗限於 20 種獨特類型。
可選擇的項目或包裹購買的 SKU。這是購買物品的唯一標識。每個體驗限於 100 個獨特的 SKU。
可選擇的自訂欄位辭典,可在 Roblox 提供的圖表中提供拆解。只有特定的鑰匙,由 Enum.AnalyticsCustomFieldKeys 提供,才會用於這些拆解。每個體驗的三個自訂欄位的值組合上限為 8,000 種獨特組合。
返回
範例程式碼
以下示例記錄了 Robux 購買 1000 枚金幣包的交易,使用 IAP (應用內購買) 交易類型。注意提供的項目名稱作為可選參數與以前的樣本進行比較時。
local AnalyticsService = game:GetService("AnalyticsService")
AnalyticsService:LogEconomyEvent(
player,
Enum.AnalyticsEconomyFlowType.Source,
"Coins",
1000, -- 包裝中的金幣數量
1020, -- 交易後的餘額
Enum.AnalyticsEconomyTransactionType.IAP.Name,
"1000CoinBundle" -- 硬幣包的唯一標識符
)
LogFunnelStepEvent
記錄用於跟蹤用戶行動步驟通過預先計劃的漏斗的事件。漏斗分析只會考慮漏斗會話的第一步中使用者和事件值。
參數
引發事件的使用者。
漏斗的名稱。這應該與漏斗中的所有步驟相同。每個體驗限於 10 個獨特漏斗。
可選擇的獨特標識符對隧道會話。這應該與隧道中的所有步驟相同。
請注意,此欄位只適用於 重複 的通道,例如購買流程通道或物品升級通道。如果您沒有自然通道會話標識符,建議使用 HttpService:GenerateGUID() 。
漏斗中的步驟編號。這應該是每個步驟在漏斗中唯一的。所有漏斗都從步驟 1 開始。限於步驟 1-100。
在同一個漏斗會話中由同一使用者重複步驟,或當 funnelSessionId 被忽略時,nil 將被忽略。
請注意,如果任何步驟被跳過,中間步驟將被視為完成。
在漏斗中的步驟可選名稱。此欄只用於在 Roblox 提供的圖表中顯示目的。
可選擇的自訂欄位辭典,可在 Roblox 提供的圖表中提供拆解。只有特定的鑰匙,由 Enum.AnalyticsCustomFieldKeys 提供,才會用於這些拆解。每個體驗的三個自訂欄位的值組合上限為 8,000 種獨特組合。
返回
範例程式碼
以下示例跟蹤一些基本事件,每位用戶開始從「軍械庫」商店購買物品的過程。注意使用 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" -- 步驟名稱
)
LogOnboardingFunnelStepEvent
記錄用於跟蹤用戶在培訓通道中步行的行動的事件。漏斗分析只會考慮漏斗會話的第一步中使用者和事件值。
參數
引發事件的使用者。
漏斗中的步驟編號。這應該是每個步驟在漏斗中唯一的。所有漏斗都從步驟 1 開始。限於步驟 1-100。
請注意,如果任何步驟被跳過,中間步驟將被視為完成。
在漏斗中的步驟可選名稱。此欄只用於在 Roblox 提供的圖表中顯示目的。
可選擇的自訂欄位辭典,可在 Roblox 提供的圖表中提供拆解。只有特定的鑰匙,由 Enum.AnalyticsCustomFieldKeys 提供,才會用於這些拆解。每個體驗的三個自訂欄位的值組合上限為 8,000 種獨特組合。
返回
範例程式碼
以下示例展示如何記錄培訓管道的兩個步驟。新手通道通常會將玩家介紹到遊戲的核心循環。
local AnalyticsService = game:GetService("AnalyticsService")
-- 記錄FTUE的第一步
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- 步驟編號
"Joined Game" -- 步驟名稱
)
-- 記錄FTUE的第二步
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
2, -- 步驟編號
"Choose Class" -- 步驟名稱
)
LogProgressionCompleteEvent
記錄用戶完成等級嘗試時的事件。此事件目前在任何 Roblox 提供的圖表中都不會顯示。
參數
引發事件的玩家。
返回
LogProgressionEvent
記錄使用者開始、完成或失敗等級嘗試時的事件。此事件目前在任何 Roblox 提供的圖表中不會顯示。
參數
引發事件的玩家。
返回
LogProgressionFailEvent
記錄用戶在等級嘗試失敗時發生的事件。此事件目前在任何 Roblox 提供的圖表中都不會顯示。
參數
引發事件的使用者。
返回
LogProgressionStartEvent
記錄用戶開始等級嘗試時的事件。此事件目前在任何 Roblox 提供的圖表中都不會顯示。
參數
引發事件的玩家。