WARDOGS 逆向工程快速閱讀精華
- 🔥 UE 5.7.4 引擎:掌握 GWorld、GNames、GObjects 等關鍵記憶體位址,是開發 CE 修改器的第一步
- 🎯 核心偏移量公開:完整收錄 ProcessEvent、StaticFindObject、DrawTransition 等函式索引,適用於 Internal 開發
- 🔐 AES 金鑰解密:提供遊戲封包解密所需的 256-bit 金鑰,方便整理資源檔案
- 🦴 完整骨骼對照:從 Root 到 center_of_mass 共 177 個骨骼索引,適合做 ESP 或自動瞄準參考
- ⚠️ Elytra 反作弊:線上模式有防護機制,建議離線環境進行研究
前言與風險提醒
WARDOGS(戰犬)是一款採用 Unreal Engine 5.7.4 打造的戰術射擊遊戲,憑藉著擬真的槍械手感與小隊合作機制,吸引了不少 FPS 愛好者。對於想要深入研究遊戲運作原理、開發輔助工具或學習逆向工程的玩家來說,掌握遊戲的核心偏移量(Offsets)與結構體(Structs)是必備的基礎。
⚠️ 重要提醒:
- 本文提供的偏移量與金鑰僅供離線學習與逆向技術研究使用,線上模式使用可能觸發 Elytra 反作弊系統
- 任何修改遊戲記憶體的行為都有導致帳號永久停權的風險,請務必在離線環境測試
- 建議使用虛擬機器或獨立硬體環境進行研究,避免影響主系統安全
👉 GM後台版 遊戲 推薦 ⬇️⬇️⬇️ 快速玩各種二次元動漫手遊app
引擎與遊戲資訊
在開始分析偏移量之前,先確認遊戲的基礎環境資訊:
| 項目 | 內容 | | 遊戲名稱 | WARDOGS(戰犬) | | 遊戲引擎 | Unreal Engine 5.7.4.0 | | Steam 商店 | WARDOGS Steam 頁面 | | 反作弊系統 | Elytra Anti-Cheat | | 主要執行檔 | WardogsClient-Win64-Shipping.exe |
遊戲採用 UE5 的最新分支版本 5.7.4,這意味著傳統的 UE4 偏移量查找方法可能需要調整,特別是在 GWorld、GNames 等核心全域物件的定位上。
核心偏移量總表
以下是我們從 WardogsClient-Win64-Shipping.exe 中提取的關鍵記憶體位址與函式偏移量,適用於 Cheat Engine 腳本開發或 Internal 注入開發:
| 符號名稱 | 偏移量(Offset) | 用途說明 | | GObjects | 0x0D2C62B0 | UE 全域物件陣列,用於遍歷遊戲中所有 UObject | | AppendString | 0x015737A0 | FString 追加函式,常用於字串處理攔截 | | GNames | 0x0D1A9B68 | 全域名稱表,整理 FName 索引對應的字串 | | GWorld | 0x0CFB1B00 | 世界上下文,取得當前遊戲世界與 Level 資訊 | | ProcessEvent | 0x01794390 | UFunction 呼叫入口,Hook 此函式可攔截遊戲事件 | | StaticFindObject | 0x017C0DA0 | 靜態物件查找,用於取得 Class 或 Blueprint 實例 | | ProcessEventIdx | 0x0000004C | ProcessEvent 在虛擬函式表的索引 | | DrawTransitionIdx | 0x00000070 | DrawTransition 渲染過渡索引,用於 ImGui 或自繪 |
💡 使用建議:
- 使用 Cheat Engine(CE修改器) 搭配 Pointer Scan 驗證 GWorld 與 GNames 的靜態位址
- 開發 Internal DLL 時,建議透過 GG修改器框架 進行記憶體注入測試
- ProcessEvent Hook 時注意 Elytra 的反作弊掃描,建議使用 VMT Hook 搭配 Shadow Table 技術
AES 金鑰與解密
遊戲資源檔案(.pak)採用 AES-256 加密,以下是解密所需的密鑰:
0x536FA53A67E9AFDA13D11EEA4831E512E9A0D6B51327B3A1EB4E5A5F43971384
使用方式:
- 下載 u4pak 或 UModel 工具
- 在命令列指定 AES 金鑰進行解密:
u4pak extract -k 0x536FA53A67E9AFDA13D11EEA4831E512E9A0D6B51327B3A1EB4E5A5F43971384 pakchunk0-Windows.pak - 提取後可取得遊戲的 Blueprint、材質、模型等資源,方便分析遊戲邏輯
類別結構與繼承
WARDOGS 的角色系統繼承關係如下:
| 層級 | 類別名稱 | 功能說明 | | 1 | APawn | UE 基礎棋子類,提供移動與碰撞基礎 | | 2 | ABHMoverPawn | 專案自定義移動基礎類,加入物理特性 | | 3 | AWDMoverCharacter | WARDOGS 角色基礎類,處理裝備與狀態 | | 4 | AWDMoverPlayerCharacter | 玩家操控角色,包含輸入處理與相機控制 |
在 ABHMoverPawn 類別中,角色網格(Mesh)元件位於:
UBHSkeletalMeshComponentBudgeted* CharacterMeshComponent
這是取得角色骨骼資訊的關鍵元件,透過它可以取得世界座標、旋轉角度,以及下方列出的完整骨骼索引。
骨骼系統整理
WARDOGS 使用完整的雙足骨骼系統,共 177 個骨骼節點。以下為主要骨骼索引對照(適用於 ESP 方框與自動瞄準):
【軀幹與頭部】
| 索引 | 骨骼名稱 | 功能定位 | | 0 | Root | 根節點,世界座標基準 | | 1 | Pelvis | 骨盆,重心位置,適合繪製方框底部 | | 2-6 | spine_01 至 spine_05 | 脊椎節點,可計算軀幹旋轉 | | 7-8 | neck_01 / neck_02 | 頸部連接 | | 9 | Head | 頭部頂端,自動瞄準首選目標(爆頭點) |
【手臂骨骼(左/右對稱)】
| 身體側 | 鎖骨 | 上臂 | 前臂 | 手掌 | | 左手 | clavicle_l (10) | upperarm_l (11) | lowerarm_l (12) | hand_l (22) | | 右手 | clavicle_r (64) | upperarm_r (65) | lowerarm_r (66) | hand_r (76) |
【腿部骨骼(左/右對稱)】
| 身體側 | 大腿 | 小腿 | 腳掌 | 腳尖 | | 左腿 | tdigh_l (145) | calf_l (146) | foot_l (147) | ball_l (148) | | 右腿 | tdigh_r (122) | calf_r (123) | foot_r (124) | ball_r (125) |
【特殊骨骼】
- weapon_l (50) / weapon_r (104):武器掛載點,可取得槍口位置計算彈道
- ik_foot_l (169) / ik_foot_r (170):反向動力學腳部定位,適合計算地面接觸點
- center_of_mass (176):質心位置,用於物理計算與命中判定
檔案下載與資源
底下提供本次分析的執行檔與相關資源,適合搭配 Cheat Engine 7.5 進行記憶體分析:
所有站內附件皆會附上安全掃描報告 請會員查看純淨度百分比後判斷使用
相關檔案須知: 取得檔案前,請先詳細閱讀文章內容 避免不必要錯誤與誤會發生。 也可多參考文章討論樓層內容 了解附件檔案相關討論資訊。
常見問題Q&A
Q:為什麼 GWorld 位址在每次遊戲更新後都會改變?
A:GWorld 是 UE5 的動態全域指標,遊戲編譯時會因 ASLR(位址空間配置隨機載入)與程式碼變動導致基準位址偏移。建議使用「位址掃描」而非硬編碼,或透過特徵碼(Pattern Scan)在執行期動態定位。
Q:Elytra 反作弊會偵測 Cheat Engine 嗎?
A:會。Elytra 會掃描常見修改器行程與記憶體異常。建議在離線模式或虛擬機器環境操作,並使用驅動層級的記憶體讀取(如 DMA 或自製驅動)繞過用戶層偵測。
Q:如何使用提供的 AES 金鑰?
A:將 0x536FA53A67E9AFDA13D11EEA4831E512E9A0D6B51327B3A1EB4E5A5F43971384 輸入至 UModel 或自製解包工具的 AES 欄位,即可解密 .pak 檔案提取遊戲資源。注意金鑰可能隨遊戲更新失效。
Q:骨骼索引中的 Index 9 (Head) 與 Index 176 (center_of_mass) 有什麼差異?
A:Head (9) 是視覺上的頭部頂點,適合做可視化標記或爆頭線判定;center_of_mass (176) 是物理質心,用於彈道計算與命中判定(如穿牆射擊的命中驗證)。開發 ESP 時建議同時參考兩者以提高準確度。
Q:為什麼下載的執行檔無法直接執行?
A:WardogsClient-Win64-Shipping.exe 需要 Steam 運行環境與遊戲授權驗證。單獨執行會因缺少 Steam 客戶端或授權憑證而失敗。建議搭配 Steam 啟動參數或取得完整遊戲檔案後進行記憶體分析。
|