Skip to content

Class Pivot zh TW

bbfox0703 edited this page Jul 10, 2026 · 1 revision

🌐 English · 繁體中文 · 日本語

Class Pivot

實驗性分頁(預設關閉)。作用於已擷取的 snapshot(或一個即時 DataTable)。

Class Pivot 分頁是一個對遊戲資料的試算表式樞紐分析(pivot)。它把一個類別的實例依一個 key 分組(一個 key 欄位的值,例如 ItemID,或依物件身分),並逐組投影(project)出各個值欄位——讓你一眼看到每個庫存物品依 ItemID 及其 Count,或每個敵人依隊伍及其數值。

同一組內不同的值會呈現為衝突(collision) ⟨N: v1, v2, +M⟩。由於 snapshot 擷取全部是數值型的,key 是 int/enum ID。


不確定要 pivot 哪個類別?從 Discover 開始

🔍 Suggest targets — find what changed 面板是自動的入口:

  1. 在一個你想孤立的遊戲內動作(花費金錢、受傷、…)前後擷取 2–4 個 snapshot——在挑選器中勾選它們(最舊 → 最新 = Before … After)。
  2. 🔍 Discover 會把移動了(class, property) 目標排名——依每個看起來有多像遊戲狀態評分(具名欄位、明確的變化、低雜訊)。
  3. 挑一列並 Use → (pivot this) 把它載入下方的 pivot。不需要猜類別/key。

Discover 結果欄位:Class · Property · Changed · Δ · Category · Shape · Sample (oldest → newest) · Score

運作方式與限制:

  • 在動作前後擷取 2–4 個 snapshot(Before … After)。
  • 3–4 個來把一次性的變化與持續的每幀雜訊(旋轉、計時器、位置)分開;只用 2 個時,兩者看起來都只是「changed」。
  • 只有移動了的欄位會出現——在你的擷取之間從未改變的值不會顯示。
  • 跨遊戲重啟時,只有以穩定身分重新出現的物件(GameInstance / PlayerState / Pawn / 元件 / GAS)才能可靠地重新接合;隨機生成的 actor 可能無法。
  • 掃描在 snapshot 的數值欄位上以伺服器端執行;在大型擷取上可能需要數秒(可取消)。

Pivot target — Source · Snapshot · Class

⚙ Pivot target 區段(可折疊)選擇要 pivot 什麼。挑一個 Source

Source 它 pivot 什麼 Key
Snapshot 一個已擷取 snapshot 中某個類別的實例。 一個 key 欄位值,或物件身分(見 Group by)。
Snapshot Array 一個已擷取的 struct array(例如 Cargo)依其 inner-key 值。 Key = inner-key 值——對重排與工作階段免疫。
DataTable 一個即時遊戲 DataTable(用 🔄 Find DataTables 列出它們)。 Key = RowName——零設定,無需探索。

對於 Snapshot 來源,挑選 Snapshot 並篩選 Class 清單(輸入以篩選,然後挑選)。然後 Run Pivot。若要抵達底層物件,選取一個群組並用 Open in Live Walker / Copy Address(把該組的代表實例交給 Cheat Engine),或 🌍 / 在 GWorld / GameEngine 中 Locate 它。

Group by(key 模式)

對於單純的 Snapshot 來源,Group by 選擇實例如何被 key(Snapshot ArrayDataTable 來源沒有 Group by——它們分別一律以 inner-key 值/RowName 為 key):

  • Identity (object path)——把生成正規化後的手足(BP_Enemy_C_0 / _1 / …)分在一起。適合「這個類別的所有實例」。
  • Field——依一個 Key field 值分組。對於物件路徑相同的transient 物件(例如 //Engine/Transient/Item),這是正確的選擇——Identity 模式會把它們全部併成一組,但像 ItemID 這樣的 Field key 能讓它們保持分開。

Field picker

勾選哪些欄位重要:

  • Value——逐組投影這個欄位的值(pivot 的輸出欄)。
  • Key——把這個欄位加入群組 key。勾選超過一個會建立一個複合 key(composite key)——例如 (Team · Slot) 依組合分組(僅 Field 模式)。

挑選器也顯示每個欄位的 Type · Distinct · Instances · Key score——Key score 提示哪個欄位是好的 key(高基數、ID 形狀的欄位分數最高)。

Results

每組一列,欄位為 Count · Key · Projected values,以及一個 filter results… 框。若一組的成員在某個投影值上不一致,會顯示衝突形式 ⟨N: v1, v2, +M⟩,這本身就是一個訊號(一個在組內固定、但跨組變化的欄位,很可能就是該組的身分/數值)。

Hidden classes (Pivot only)

你可以 Hide selected class from picker 讓類別清單保持聚焦;被隱藏的類別會在 Hidden classes (Pivot only) 下以可移除的 chip 顯示。這個 denylist 的範圍僅限 Pivot 分頁。


相關頁面

  • Snapshot——擷取 Class Pivot(與 Discover)所作用的 snapshot。
  • SPC Query——同一批 snapshot 的方向鏈視角(逐欄位、跨 N 個 snapshot)。
  • Detect Stats——一個更快、較不精確的「哪個欄位是 HP/MP/Gold」猜測器。
  • Live Walker——Open in Live Walker / 🌍 / 的落腳處。

Clone this wiki locally