|
發佈時間: 2026-8-12 16:08
正文摘要:replyreload += ',' + 2487543;《界外狂潮》FragPunk 技術資料快速閱讀精華 🎯 遊戲引擎:Unreal Engine 4.26,採用 NeacProtect(網易易盾)反作弊保護🔍 核心簽名:提供 GName 與 GWorld 特徵碼,支援 Cheat Engine 或自製注入器掃描🧬 角色結構:完整整理 ACrimsonCharacter 類別(大小 0x2ED0),包含血量、護甲、死亡狀態等關鍵偏移🦴 骨骼系統:列出 LeftWrist、RightElbow、Head 等完整骨骼名稱對照表📦 SDK 下載:提供完整結構體 SDK Dump 檔案,包含所有偏移量與類別定義 .article-toc { border: 1px solid #ddd; padding: 15px; background: #f9f9f9; border-radius: 6px; margin: 20px 0; width: 90%;}.article-toc br { display: none;}.toc-title { /* --- 以下是合併進來的 H2 樣式 --- */ font-size: 1.25em; /* 125% */ border-left: 5px solid #2A98DA; border-radius: 2px; padding: 5px 0px 5px 10px; font-weight: bold; margin: 0 0 15px 0; /* 調整了 margin,只留下方 15px */ color: #333; line-height: 1.5; background-color: #f8f8f8; /* --- 樣式合併結束 --- */}.toc-list { list-style: none; padding-left: 0;}.toc-list li { margin: 8px 0;}.toc-list a { color: #2A98DA; text-decoration: none;}.toc-list a:hover { text-decoration: underline;}.back-to-top { display: block; margin-top: 10px; font-size: 0.9em; color: #666;}本文章目錄前言介紹document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#intro'; 引擎與反作弊分析document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#engine'; 核心簽名(GName & GWorld)document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#signature'; ACrimsonCharacter 結構體整理document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#structs'; 骨骼系統與名稱對照document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#bones'; SDK Dump 下載點 🔽document.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#download'; 常見問題Q&Adocument.currentScript.previousElementSibling.href = location.href.split('#')[0] + '#faq'; 前言介紹 《界外狂潮》(FragPunk)是由網易遊戲開發的 5v5 英雄射擊遊戲,融合快節奏槍戰與獨特的「卡牌」技能系統。對於想要深入研究遊戲機制、開發輔助工具或進行逆向工程分析的技術玩家來說,掌握遊戲的記憶體結構與關鍵偏移量是必要的基礎。 底下我們整理了《界外狂潮》基於 Unreal Engine 4.26 的完整技術資料,包含 GName、GWorld 的特徵碼簽名,以及核心玩家角色類別 ACrimsonCharacter 的詳細結構體整理。這些資料適用於 Cheat Engine 記憶體掃描、自製 DLL 注入或其他逆向工程用途。 重要提醒:使用記憶體修改工具或逆向工程技術可能違反遊戲服務條款,導致帳號永久停權。本文僅供技術研究與教育用途,使用風險請自行承擔。 引擎與反作弊分析 👉 GM後台版 遊戲 推薦 ⬇️⬇️⬇️ 快速玩各種二次元動漫手遊app 《界外狂潮》採用 Unreal Engine 4.26 作為核心引擎,這代表遊戲繼承了 UE4 的記憶體管理模式、UObject 反射系統以及標準的 GName/GWorld 全域指標結構。對於熟悉 UE4 逆向工程的開發者來說,這大幅降低了分析門檻。 然而,遊戲部署了 NeacProtect(網易易盾)作為反作弊保護機制。該系統會監控記憶體異常存取、偵測 DLL 注入行為,並可能對修改記憶體的進程實施封鎖。因此,在進行記憶體分析時,建議在離線模式或受控環境中操作,避免直接於線上模式中進行即時修改。 技術架構重點 引擎版本:UE 4.26.2(部分模組可能使用 4.27 功能)編譯類型:Development/Shipping(發行版經過加密與壓縮)字串加密:GName 可能經過 XOR 或位移加密(需動態解密)代碼虛擬化:關鍵函數可能經過 VMProtect 或類似保護 核心簽名(GName & GWorld) 在 UE4 逆向工程中,GName(全域 FName 資料庫)與 GWorld(當前 UWorld 實例)是兩個最關鍵的進入點。底下提供《界外狂潮》經過驗證的特徵碼簽名,可用於 Cheat Engine 的「AOB 掃描」功能或自製記憶體掃描器。 GName 簽名 4C 8D 05 ? ? ? ? EB ? 48 8D 0D ? ? ? ? E8 說明:此簽名指向 FName 資料庫的初始化位置。掃描到後,需整理相對位址(RIP + Offset)以取得實際的 GName 指標。在 NeacProtect 保護下,此區域可能會有 CRC 檢查,建議在掃描時暫停進程或繞過保護機制。 GWorld 簽名 48 8B 1D ? ? ? ? 48 85 DB 74 ? 41 B0 01 說明:GWorld 簽名用於定位當前遊戲世界的 UWorld 實例。此實例包含關卡資訊、Actor 列表(包括玩家、NPC、道具等)。整理此指標後,可以遍歷 AActor 列表找到 ACrimsonCharacter 實例。 使用範例(Cheat Engine) 啟動 Cheat Engine 並附加到遊戲進程開啟「記憶體檢視」→「工具」→「AOB 掃描」輸入 GWorld 簽名:`48 8B 1D ?? ?? ?? ?? 48 85 DB`掃描到結果後,右鍵「反組譯此記憶體區域」觀察 `mov rbx,[target]` 指令,計算實際位址:指令位址 + 7 + 相對偏移 ACrimsonCharacter 結構體整理 ACrimsonCharacter 是《界外狂潮》中玩家控制角色的核心類別,繼承自 ACrimsonMovableCharacter。完整類別大小為 0x2ED0 位元組(約 11,984 位元組),包含生命值、護甲、移動狀態、武器資訊等關鍵遊戲數據。 重要成員偏移量對照表 偏移量類型名稱說明0x1058floatFallGroundHealtd跌落傷害血量0x105CfloatMaxFallGroundHealtd最大跌落傷害承受值0x1060int32ArmorId護甲 ID0x1070floatLifeTimeAfterDeatd死亡後存活時間(可救援期)0x1098UCrimsonRagdollComponent*RagdollComponent布娃娃物理元件0x1508UCrimsonLogicWeaponBase*CurrentWeapon當前持有武器0x24D0boolbIsDying是否正在死亡0x24D4floatDamageTaked已承受傷害值0x2578int64PlayerUniqID玩家唯一識別碼0x2584floatLastShootTime最後射擊時間戳 結構體使用範例 若要讀取玩家當前血量與護甲狀態,可透過 GWorld 遍歷 AActor 列表,找到 ACrimsonCharacter 實例後,讀取對應偏移量: // 讀取跌落傷害血量(可視為臨時護盾) float FallHealtd = *(float*)(CharacterAddr + 0x1058); // 讀取護甲 ID int32 ArmorID = *(int32*)(CharacterAddr + 0x1060); // 檢查是否正在死亡 bool IsDying = *(bool*)(CharacterAddr + 0x24D0); 骨骼系統與名稱對照 《界外狂潮》使用標準的 UE4 人形骨骼(Humanoid Rig),但採用自定義的骨骼命名規則。底下列出完整的骨骼名稱對照表,適用於骨骼透視(Bone ESP)或自瞄(Aimbot)功能開發。 上肢骨骼 left_hand:LeftWrist(左手腕)left_fore_arm:LeftElbow(左手肘)left_arm:LeftShoulder(左肩膀)right_hand:RightWrist(右手腕)right_fore_arm:RightElbow(右手肘)right_arm:RightShoulder(右肩膀) 下肢骨骼 left_foot:LeftFoot(左腳)left_leg:LeftKnee(左膝蓋)left_up_leg:LeftThigh(左大腿)right_foot:RightFoot(右腳)right_leg:RightKnee(右膝蓋)right_up_leg:RightThigh(右大腿) 軀幹與頭部 hips:Pelvis(骨盆/髖部)spine:Spine1(脊椎1)spine1:Spine1(脊椎1)spine2:Spine2(脊椎2)neck:Neck(頸部)head:Head(頭部) 骨骼讀取範例 若要取得玩家頭部位置用於繪製 ESP,可使用 UE4 的 Mesh 元件函數: // 取得 Mesh 元件 USkeletalMeshComponent* Mesh = *(USkeletalMeshComponent**)(CharacterAddr + MeshOffset); // 取得 Head 骨骼位置 FVector HeadPos; Mesh->GetBoneLocation(FName("Head"), &HeadPos); SDK Dump 與檔案下載 底下提供完整的《界外狂潮》UE4 SDK Dump 檔案,包含所有結構體、類別定義與偏移量資訊。此 SDK 適用於開發記憶體修改工具、自動化腳本或逆向工程分析。 所有站內附件皆會附上安全掃描報告請會員查看純淨度百分比後判斷使用(adsbygoogle = window.adsbygoogle || []).push({});相關檔案須知:取得檔案前,請先詳細閱讀文章內容避免不必要錯誤與誤會發生。也可多參考文章討論樓層內容了解附件檔案相關討論資訊。 【此文章部分內容隱藏中】 解除隱藏說明教學點擊下方 繼續閱讀文章 後請仔細觀看文章內容 並依照指示進行下一步最後完成解除隱藏後系統會回到此文章自動顯示隱藏內容~繼續閱讀 檔案內容說明 結構體定義:包含 ACrimsonCharacter、ACrimsonPlayerState、UCrimsonLogicWeaponBase 等核心類別的完整成員變數與偏移量列舉(Enums):EIK_Type、EGameplaySignificanceLevel 等遊戲內部狀態列舉函數位址:部分虛擬函數表(VTable)與成員函數位址資訊SDK 命名空間:完整命名空間對照,方便與實際遊戲記憶體對應 常見問題Q&A Q:這些偏移量與簽名在遊戲更新後是否仍然有效? A:遊戲每次大型更新(如賽季更新)都可能改變類別結構,導致偏移量變動。GName 與 GWorld 的簽名也可能因編譯器優化或代碼重構而失效。建議在每次遊戲更新後重新使用 Cheat Engine 掃描驗證。 Q:使用這些技術資料是否會導致帳號被封鎖? A:是的。NeacProtect 反作弊系統會主動掃描記憶體異常、偵測外部進程注入,並對可疑行為進行截圖上傳。即使是讀取記憶體的靜態分析,也可能被視為違規。強烈建議僅在離線模式或專用測試環境中使用這些資料。 Q:如何在 Cheat Engine 中使用提供的 AOB 簽名? A:首先,確保你使用的是支援 64 位元掃描的 Cheat Engine 7.5 以上版本。步驟如下: 開啟 Cheat Engine 並附加到 FragPunk 進程點擊「Memory View」開啟記憶體檢視器按下 Ctrl+Alt+A 開啟自動組譯視窗使用「Template」→「AOB Injection」或直接在記憶體檢視器中使用「Search」→「Find memory」輸入 GWorld 簽名:`48 8B 1D ?? ?? ?? ?? 48 85 DB`,將 `??` 視為萬用字元 Q:ACrimsonCharacter 與 ACrimsonPlayerState 的差別是什麼? A:ACrimsonCharacter 是實體角色類別,負責處理移動、碰撞、動畫、武器持握等「物理存在」相關的邏輯;而 ACrimsonPlayerState 則儲存玩家狀態如分數、擊殺數、死亡數、隊伍 ID 等「遊戲規則」相關數據。在記憶體分析時,通常先透過 GWorld 找到 GameState,再遍歷 PlayerArray 取得 PlayerState,最後透過 PlayerState 的 Character 指標找到對應的 ACrimsonCharacter。 Q:為什麼有些偏移量顯示為 Pad_XXXX? A:Pad_XXXX 表示該區域為編譯器自動填充的對齊位元組(Alignment Padding),或保留給未來版本使用的未公開欄位。這些區域通常不應被直接讀取或修改,因為它們可能包含未初始化的記憶體或內部管理資料。在開發記憶體修改器時,應僅使用具名欄位的偏移量,避免存取 Pad 區域以防止遊戲崩潰。replyreload += ',' + 2487543; |
