搜尋

漫威爭鋒

返回清單
切換到指定樓層
通知這文章過時或找檔案 發表主題

[電玩遊戲] 《Marvel Rivals 漫威爭鋒》S6.0 (5.3.2855162) 最新Offsets與原始碼參數攻略 最新數據偏移量、C++原始碼與全造型ID列表

[複製連結]
1
o122334234 ( Lv.70 熾天使 ) 發表於 7 小時前 | 只看該作者 |只看大圖 回覆獎勵 |降序瀏覽 |閱讀模式

《Marvel Rivals 漫威爭鋒》S6.0 核心數據 快速閱讀精華



🚀 重點更新資訊:
  • 適用版本: S6.0 (Build 5.3.2855162)
  • 關鍵記憶體位置 (Offsets):
    • GWorld: 0xE5BEE40
    • GNames: 0xE35E1C0
    • GObjects: 0xE415FE0
  • 主要變更點: 針對 S6.0 版本,修正了 Actor Mesh、Reactive Property 及血量組件 (Health Component) 的偏移量。
  • 完整資源: 內含 C++ 原始碼定義檔與全英雄造型 ID 對照表。




前言:應對 S6.0 版本更新


大家是不是發現《Marvel Rivals 漫威爭鋒》更新到 S6.0 (5.3.2855162) 版本後,手邊原本順手的輔助工具或自製腳本突然全部失效了?這是因為遊戲更新後,核心的記憶體位址(Offsets)發生了變動,導致舊的數據無法正確讀取遊戲狀態。

別擔心,為了解決各位開發者和進階玩家卡關的問題,本篇攻略特別整理了經測試驗證後的最新 Offsets 數據,並附上完整的 C++ 結構定義原始碼。無論你是要修復自己的工具,還是想研究遊戲架構,這份懶人包都能幫你快速從錯誤中恢復,省下大把重新掃描內存的時間。

⚠️ 重要提醒
本篇教學涉及遊戲記憶體讀寫與原始碼修改,屬於高階操作。
1. 封號風險:修改遊戲數據或注入 DLL 存在被反作弊系統 (Anti-Cheat) 偵測的風險,請務必使用小號進行測試。
2. 技術門檻:本文內容主要面向具備 C++ 基礎或懂得使用 Cheat Engine 的進階玩家。
3. 僅供學習:所有資訊僅供技術研究與學術交流使用。


S6.0 最新 Offsets 數據解析


在這次 S6.0 的更新中,我們比對了新舊版本的數據,發現幾個關鍵的組件位置發生了位移。如果你的腳本讀不到血量或模型,通常就是這裡出了問題。

以下是本次更新中變動最關鍵的三個部分,請務必優先修正:
  • Actor Mesh (模型組件): 從 `0x1B28` 變更為 0x1BA8
  • Reactive Property Component: 從 `0x18F0` 變更為 0x1970
  • Health Component (血量組件): 從 `0x1718` 變更為 0x1880


C++ 完整原始碼定義


為了讓大家能更方便地直接更新專案,我們整理了完整的 `DWORD` 定義代碼。這段代碼包含了從世界座標 (World) 到玩家骨架 (Bone Arrays) 的所有必要偏移量。

你可以直接複製下方代碼替換掉舊的標頭檔內容:

// 核心全域偏移量 (Core Globals)
DWORD offset_u_world = 0xE5BEE40; // 48 89 05 ?? ?? ?? ?? 49 8B 77
DWORD offset_g_names = 0xE35E1C0; // 4C 8D 2D ?? ?? ?? ?? EB ?? 48 8D 0D

// 攝像機與關卡相關 (Camera & Level)
DWORD offset_camera_manager = 0x7b0; // APlayerController->layerCameraManager
DWORD offset_camera_cache = 0x1CB0; //APlayerCameraManager->CameraCachePrivate
DWORD offset_persistent_level = 0x38; //UWorld->ersistentLevel
DWORD offset_game_instance = 0x280; //UWorld->OwningGameInstance

// 玩家與陣列相關 (Player & Arrays)
DWORD offset_local_players_array = 0x40; //UGameInstance->LocalPlayers
DWORD offset_player_controller = 0x38; //UPlayer->layerController
DWORD offset_apawn = 0x798; //APlayerController->AcknowledgedPawn
DWORD offset_root_component = 0x500; //AActor->RootComponent
DWORD offset_actor_array = 0xC8; //ULevel->Actors (TArray data pointer)
// 注意: actor_count 位於 (offset_actor_array + 0x8) 的 TArray 結構中
DWORD offset_actor_id = 0x18;
DWORD offset_player_state = 0x6F8; // APawn->layerState
DWORD offset_actor_mesh = 0x1BA8; //AMarvelBaseCharacter->DefaultMeshComponent [更新點]
DWORD offset_bone_array = 0x2D0; //Legacy

// 子組件與骨骼 (Components & Skeleton)
DWORD offset_child_actor_component = 0x770; // ACharacter->ChildActorComponent
DWORD offset_child_actor = 0x340; // UChildActorComponent->ChildActor  
DWORD offset_child_actor_mesh = 0x6D8; // ChildActor->Mesh
DWORD offset_skeletal_bone_array = 0x0E00; // USkeletalMeshComponent->CachedBoneSpaceTransforms (TArray<FTransform>)
DWORD offset_skeletal_component_transforms = 0x0E10; // USkeletalMeshComponent->CachedComponentSpaceTransforms (TArray<FTransform>)
DWORD offset_skeletal_component_to_world = 0x1B0; // USceneComponent->ComponentToWorld (FTransform)

// 屬性與狀態 (Properties & State)
DWORD offset_component_to_world = 0x1B0; //USceneComponent->ComponentToWorld (FTransform)
DWORD offset_relative_location = 0x218; //USceneComponent->RelativeLocation
DWORD offset_last_submit_time = 0x35C;
DWORD offset_last_render_time = 0x358;
DWORD offset_reactive_property_component = 0x1970; // AMarvelBaseCharacter -> ReactivePropertyComponent [更新點]
DWORD health_component_offset = 0x1880; // UReactivePropertyComponent -> CachedAttributeSet [更新點]
DWORD offset_health = 0x40 + 0xC;  // Health
DWORD offset_max_health = 0x50 + 0xC; // MaxHealth
DWORD offset_player_name = 0x788; // APlayerState -> PlayerNamePrivate
DWORD offset_team = 0x808;  // AMarvelPlayerState -> OriginalTeamID

// 網格與插槽 (Mesh & Sockets)
DWORD offset_skeletal_mesh = 0x880; // USkinnedMeshComponent->SkeletalMesh (USkeletalMesh*)
DWORD offset_skelmesh_sockets = 0x4B8; // USkeletalMesh->Sockets (TArray<USkeletalMeshSocket*>)
DWORD offset_socket_name = 0x30; // USkeletalMeshSocket->SocketName (FName)
DWORD offset_socket_bone_name = 0x3C; // USkeletalMeshSocket->BoneName (FName)
DWORD offset_skelsocket = 0x310; // Legacy offset (deprecated)


gPyI2Je.jpg


👉 GM後台版 遊戲 推薦 ⬇️⬇️⬇️ 快速玩各種二次元動漫手遊app



全英雄造型 ID 對照表


對於想要修改造型(Skin Changer)或進行相關開發的玩家,我們也提取了 S6.0 版本的完整造型 ID 列表。這個列表包含了所有英雄(如鋼鐵人、蜘蛛人、浩克等)對應的造型 ID 與內部名稱。

由於篇幅較長,我們將其整理在下方的代碼區塊中,方便大家搜尋使用:

static std::unordered_map<HeroId, std::unordered_map<int32_t, std::string>> HardcodedSkinNames = {
    // 浩克 (Hulk)
    {HeroId::Hulk, {{1, xorstr_("Standard")}, {100, xorstr_("Mighty G-Bomb")},
        {300, xorstr_("Maestro")}, {500, xorstr_("unk Rage")}, {501, xorstr_("Green Scar")}, {502, xorstr_("Joe Fixit")}}},
    // 制裁者 (Punisher)
    {
        HeroId:unisher,
        {
            {1, xorstr_("Standard")}, {100, xorstr_("Camo")}, {300, xorstr_("Dangan Ronin")},
            {500, xorstr_("Thunderbolts")}, {501, xorstr_("unisher 2099")}, {502, xorstr_("Aqua Arsenal")},
            {503, xorstr_("Franken Castle")}, {504, xorstr_("Emerald Executioner")}, {505, xorstr_("Amber Annihilator")}, {800, xorstr_("Daredevil: Born Again")}
        }
    },
    // 暴風女 (Storm)
    {HeroId::Storm, {
        {1, xorstr_("Standard")}, {100, xorstr_("Ivory Breeze")}, {300, xorstr_("Judicator Xiezhi")},
        {500, xorstr_("Mohawk Rock")}, {501, xorstr_("Ultimate Wind-Rider")}, {502, xorstr_("Goddess of Thunder")},
        {503, xorstr_("Symbiote Storm")}}},

    // 洛基 (Loki)
    {HeroId:oki, {{1, xorstr_("Standard")}, {100, xorstr_("Frost Giant")}, {101, xorstr_("Ignite Loki 2025")},
         {300, xorstr_("Shin Sagi-Shi")}, {301, xorstr_("Robe of Relaxation")}, {302, xorstr_("Immortal Firebird")},
         {303, xorstr_("Tidal Trickery")}, {500, xorstr_("residential Attire")}, {501, xorstr_("All-Butcher")},
         {502, xorstr_("Lady Loki")}, {800, xorstr_("Loki: Season 2")}}},
   
    // 奇異博士 (Doctor Strange)
    {
        HeroId:octorStrange,
        {
            {1, xorstr_("Standard")}, {100, xorstr_("Master Of Black Magic")}, {101, xorstr_("Astral Wanderer")},
            {300, xorstr_("Sorcerer Immortal")}, {301, xorstr_("Old Man Strange")}, {302, xorstr_("Bleeker Street Strut")},
            {500, xorstr_("God Of Magic")}, {501, xorstr_("Sorcerer Supreme of The Galaxy")}, {800, xorstr_("Multiverse of Madness")}
        }
    },
    // ... (更多英雄 ID 請參考原始碼或下載完整包)
    // 蜘蛛人 (Spider-Man)
    {
        HeroId::SpiderMan,
        {
            {1, xorstr_("Standard")}, {100, xorstr_("Scarlet Spider")}, {101, xorstr_("Chasm")},
            {102, xorstr_("Black Gold")}, {300, xorstr_("Spider-Oni")}, {500, xorstr_("Spider-Punk 2099")},
            {501, xorstr_("Bag-Man Beyond")}, {502, xorstr_("Black Suit")}, {503, xorstr_("Marvel's Spider-Man 2")},
            {504, xorstr_("Future Foundation")}, {505, xorstr_("Man Spider")}, {508, xorstr_("Iron Spider")}, {800, xorstr_("No-Way Home")}
        }
    },
    // 鋼鐵人 (Iron Man)
    {
        HeroId::IronMan,{
            {1, xorstr_("Standard")}, {100, xorstr_("Armor Model 42")}, {300, xorstr_("Blood Edge Armor")},
            {500, xorstr_("Steam Power")}, {501, xorstr_("Superior Iron Man")}, {502, xorstr_("Extrembiote Armor")},
            {503, xorstr_("Big Shot")}, {504, xorstr_("Mark I")}, {800, xorstr_("Avengers: End Game")}}
    },
    // 金鋼狼 (Wolverine)
    {
        HeroId::Wolverine,
        {{1, xorstr_("Standard")}, {100, xorstr_("LoneWolf")}, {300, xorstr_("Blood Berserker")},
            {301, xorstr_("Dog Brother X")}, {500, xorstr_("atch (Costume)")}, {501, xorstr_("Weapon X")}, {502, xorstr_("Weapon PhoeniX")},
            {800, xorstr_("Deadpool and Wolverine")}}
    },
};


檔案下載與工具推薦 🔽


為了方便大家研究,我們提供了包含上述所有代碼及更多 SDK 資訊的壓縮包。



所有站內附件皆會附上安全掃描報告
請會員查看純淨度百分比後判斷使用



相關檔案須知:
取得檔案前,請先詳細閱讀文章內容
避免不必要錯誤與誤會發生。
也可多參考文章討論樓層內容
了解附件檔案相關討論資訊。





🛠️ 推薦搭配工具


在進行記憶體除錯或 Offset 驗證時,強烈建議搭配以下工具使用,能事半功倍:


以下廣告滑動後還有帖子內容




《Marvel Rivals》S6.0 修改常見問題Q&A



Q:為什麼更新到 S6.0 後,我的自瞄或透視功能都不準了?
A:這是因為遊戲更新改變了 `GWorld`、`GObjects` 以及 `Bone Arrays`(骨骼陣列)的記憶體位址。舊的偏移量指向錯誤的位置,導致讀取到的座標是錯誤的。請依照本文提供的最新 Offsets 更新你的原始碼。

Q:這些代碼可以直接貼到 Cheat Engine 裡用嗎?
A:不行。本文提供的是 C++ 原始碼,主要用於編寫 DLL 注入式輔助或外部程式。如果你是使用 Cheat Engine,你需要利用這些地址來計算出新的指針路徑 (Pointer Paths),或者使用支援 C++ 腳本解析的進階功能。

Q:我該如何找到人物的骨骼資料?
A:在 S6.0 版本中,骨骼資料的獲取方式有變。你可以通過 `offset_skeletal_mesh (0x880)` 找到模型,再透過 `offset_skelmesh_sockets (0x4B8)` 來獲取各個關節的 Socket,這樣就能計算出頭部、四肢的螢幕座標。

Q:使用這些數據會被封鎖嗎?
A:會的。任何對遊戲記憶體的讀寫操作都有風險。《Marvel Rivals》有反作弊機制,建議僅在單機環境或使用防封號的驅動程式進行測試,切勿在主帳號上使用。

Q:這裡的造型 ID 是做什麼用的?
A:這些 ID 對應遊戲內的 Skin Changer 功能。透過修改記憶體中本地玩家的造型 ID 值,可以實現「本地換膚」的效果,讓你在自己畫面中看到付費造型(僅限自己可見)。

參考資料
5.3.2855162+++depot_marvel+S6.0_release-Marvel.zip







大家正在看啥


收藏收藏 分享文章到FB上分享
回覆 使用道具 檢舉
複製專屬你的推廣連結:發至FB與各論壇宣傳:累積點數換GP商品 & 藍鑽
每五點閱率就可以兌換藍鑽積分或遊戲點卡 夢遊推廣文章換GP商品

你需要登入後才可以回覆 登入 | 加入會員

本版積分規則

Copyright (C) 2010-2020 夢遊電玩論壇

廣告合作:請直接聯繫我們,並附上您預刊登位置的預算。  

快速回覆 返回頂端 返回清單