本文へスキップ

セーブデータ(パイロットデータ)の解析

■鉄騎大戦のセーブデータの解析をしたので公開します
前提:
・XboxのHDDを読む書き出来る状態にある
・バイナリエディタの使い方/読み方を知っている

1.セーブデータの場所
セーブデータは以下の場所にあります。
E:/TDATA/43430009/[username]/[savedata]

[username]
・Xbox LIVEのセーブデータの場合
 a) キャンペーンの場合、Gamer Tag名+CAMPです(例:nanaC009CAMP)
 b) フリーモードの場合、Gamer Tag名+FREEです(例:nanaC009FREE)
・SYSTEM LINKのセーブデータの場合、SYSTEMLINKです

[savedata]
・Xbox LIVEのセーブデータの場合
 a) キャンペーンモードの場合、CAMPUSER
 b) フリーモードの場合、LIVEUSER
・SYSTEM LINKのセーブデータの場合、LINKUSERです

これらのセーブデータは、恐らく、全て同じ構造をしています
キャンペーンのセーブデータ、CAMPUSERをLINKUSERにリネームし、SYSTEMLINKフォルダに上書きすればキャンペーンのパイロットデータでSYSTEMLINKモードを遊ぶことができます

■セーブデータの構造
@改ざん防止符号
セーブデータは改ざん防止のための160bitのハッシュ値のようなものがあります。
以下の図の0x000004〜0x000017までがそれです。後述しますがこれは解析されてツール化されています。

Aパイロットデータ(クリックすると画像が開きます)
読み方はバイナリエディタと同じです。
注意点としてはリトルエンディアン表記です。


■0x12A5D〜0x12CC03:プロフィールデータ
・このエリアはプロフィールデータです
・勲章のエリアが8個(0x12C98〜0c12C9F)
 それぞれが異なる勲章で、数値は勲章の数を示します
・称号はこのような対応表です
・階級は以下の対応表の通りです


■0x12ED8〜0x12F8B:撃墜数
・このエリアは撃墜数を示すデータです

■0x486C〜:VT武装セッティング
・このエリアはVTの武装セッティングです
・色分けの通り、VTごとにA,B,C,Customの4つの武装セッティングが保存されています
・VTの並びはゲーム中と同様です
・メインウェポン、サブウェポンは「対象のVTが装備できる武装のn番目という意味」
 例えば、ビッツのメインウェポンの0x00は270-ri,0x01は77-recですが、ボルテクスは別の武器になります
 したがって、ビッツに355-sbを装備、のようなことはできません
・オプションパーツは対応表の通り
 システムリンクモードでも武装セッティングに反映されますが出撃時に消失するので効果はありません
 (解析の副産物としてオプションパーツを全て知ることができました、全部既知でしたが)

■セーブデータの書き換え
・上記の情報から、セーブデータを書き換えてシステムリンクのパイロットデータに反映することができます
・@の改ざん防止を突破する必要がありますが、これはツールがあります
 https://github.com/feudalnate/Original-Xbox-Gamesave-Resigners
 詳しくは上記githubから入手してください
 使い方がわからない場合はDiscordで聞いてください

■未知の情報
まだ以下の情報が未解析です
・戦闘履歴
 称号は直近30戦の情報で付与されるので戦闘履歴も保存されていると推測しますが、未解析
・称号の色ヘッダー
 称号に付与される色情報が不明
 上記戦闘履歴から判断されていると思われます
・キャンペーン時の情報、以下の情報があるはずですが未解析
 最初に所属した陣営、最初に参加したMAP、移籍情報、愛機等
 


バナースペース