WebGP

WEB SAVE EDITOR
WEBセーブエディター

セーブデータの解析方法 セーブデータ解析ツール

目次
初級編 検索 一致箇所 (アドレス検索)
中級編 比較 変化箇所変動数値
上級編 比較 相違箇所 (パラメーターフラグ)
解析したアドレスにある数値を改造する方法
パッチコードを作成する方法
専門用語

前書き セーブデータ解析

セーブデータを解析する基本は、目的のパラメーターやフラグ、アイテムIDなどがあるアドレスを特定する事です。 特定したアドレスにある数値を任意の数値へ書き換えて改造します。
セーブデータを解析する方法は、変化箇所の比較を推奨しています。 一致箇所の検索や相違箇所の比較だと検出数が多くアドレスを特定するのが難しくなる場合でも、変化箇所の比較だと高い精度でアドレスを特定できます。
セーブデータを解析するのが初めての方は、入門編として所持金の解析・改造を推奨しています。所持金のアドレスを特定して、所持金のアドレスにある数値を増やすという改造に挑戦してみて下さい。
セーブデータの解析については最低限の専門知識が必要で上級者向けの解説になりますので、初心者の方はパッチコードでの改造を推奨しています。

① 初級編 検索 一致箇所 (アドレス検索)

ゲーム内のパラメーター(10進数)を16進数に変換した数値でセーブデータを検索して、一致した数値があるアドレスを特定する方法です。
※ アドレス検索は一番容易な解析方法だが、2byte以下の数値だとアドレスを特定するのが難しくなる

WEBセーブエディター(PS3)でアドレスを検索する方法
  1. WEBセーブエディターで、セーブファイル3つ(セーブデータとPARAM.PFDとPARAM.SFO)を読み込む
    PS3セーブエディター ファイル読込

  2. 「アドレス検索」を開く
    PS3セーブエディター アドレス検索
    パラメーター(16進数または10進数)を入力する

  3. 検索ボタンを押す

  4. 結果が表示される

バイナリエディター(Stirling)でアドレスを検索する方法
※ 事前にセーブデータを復号化しておく
  1. Stirlingを起動して、「ファイル > 開く」で検索するセーブデータを開く (又はドラッグ&ドロップで開く)
    Stirling 検索

  2. 「検索・移動 > 検索」を選択して「検索データ」の部分に16進数を入力する (データ種類は16進データを選択)
    Stirling 検索

  3. 次検索(または前検索)をクリックする
    Stirling 検索

  4. 一致した数値があれば白黒反転して表示される
    Stirling 検索
一致した数値が複数ある場合は、総当たりで調べてパラメーターのアドレスを特定します。
セーブデータによってはリトルエンディアン方式で検索しなければならない場合もあります。
セーブデータのアドレスが変動するタイプの場合は、比較よりも検索の方が有効な解析方法となります。

② 中級編 比較 変化箇所変動数値

ゲーム内のパラメーターが変化する前後のセーブデータ2つを比較して、変化する前後の数値のある箇所 または指定する変動数値からアドレスを特定する方法です。
※ 変化箇所の比較は、2byte以下の数値でも高い精度でアドレスを特定できる

WEBセーブエディター(PS3)で比較して変化箇所を検出する方法
  1. WEBセーブエディターで、比較する(変化する前の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  2. 「復号データ出力」から復号化したセーブデータをダウンロードしておく
    PS3セーブエディター 出力 (後で比較対象として追加する時に使う)

  3. WEBセーブエディターで、改造する(変化した後の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  4. 「その他」を開く
    PS3セーブエディター その他
    「比較・セーブデータ解析」を開く
    PS3セーブエディター 比較

  5. 「追加」の入力フォームから比較対象となるセーブデータ(復号化済み)を選択する
    PS3セーブエディター 比較

  6. 「変化箇所」を開く
    PS3セーブエディター 変化箇所
    改造するセーブデータのパラメーター(変化した後の数値)を16進数で入力する
    比較するセーブデータのパラメーター(変化する前の数値)を16進数で入力する

  7. 実行ボタンを押す

  8. 結果が表示される

  9. 特定したアドレスにある数値を改造する

WEBセーブエディター(PS3)で比較して変動数値を検出する方法
  1. WEBセーブエディターで、比較する(変化する前の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  2. 「復号データ出力」から復号化したセーブデータをダウンロードしておく
    PS3セーブエディター 出力 (後で比較対象として追加する時に使う)

  3. WEBセーブエディターで、改造する(変化した後の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  4. 「その他」を開く
    PS3セーブエディター その他
    「比較・セーブデータ解析」を開く
    PS3セーブエディター 比較

  5. 「追加」の入力フォームから比較対象となるセーブデータ(復号化済み)を選択する
    PS3セーブエディター 比較

  6. 「変動数値」を開く
    PS3セーブエディター 変動数値
    変動数値(変化する前の数値と変化した後の数値の差)を16進数で入力する

  7. 実行ボタンを押す

  8. 結果が表示される

  9. 特定したアドレスにある数値を改造する

③ 上級編 比較 相違箇所 (パラメーター/フラグ)

ゲーム内のパラメーターが変化する前後のセーブデータ2つを比較、または ゲーム内のフラグが立つ前後(イベント発生前後)のセーブデータ2つを比較して、相違箇所からパラメーターやフラグのアドレスを特定する方法です。
※ 相違箇所の比較は、セーブデータの中身が大きく書き換わっている場合だとアドレスを特定するのが難しくなる

WEBセーブエディター(PS3)で比較してパラメーター/フラグの相違箇所を検出する方法
  1. WEBセーブエディターで、比較する(変化する前の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  2. 「復号データ出力」から復号化したセーブデータをダウンロードしておく
    PS3セーブエディター 出力 (後で比較対象として追加する時に使う)

  3. WEBセーブエディターで、改造する(変化した後の)セーブデータを読み込む (PARAM.PFDとPARAM.SFOを含む)
    PS3セーブエディター ファイル読込

  4. 「その他」を開く
    PS3セーブエディター その他
    「比較・セーブデータ解析」を開く
    PS3セーブエディター 比較

  5. 「追加」の入力フォームから比較対象となるセーブデータ(復号化済み)を選択する
    PS3セーブエディター 比較

  6. 「相違箇所」を開く
    PS3セーブエディター 相違箇所
    実行ボタンを押す

  7. 結果が表示される

バイナリエディター(Stirling)で比較してパラメーター/フラグの相違箇所を検出する方法
※ 事前にセーブデータを復号化しておく
  1. Stirlingを起動して、「ファイル > 開く」で比較する2つのセーブデータを開く (又はドラッグ&ドロップで開く)
    Stirling 比較

  2. 「検索・移動 > 比較」を選択して、「比較対象指定」で比較するセーブデータを選択して「OK」をクリックする
    Stirling 比較 Stirling 比較

  3. 比較箇所一覧が表示される ※「違いはありません」と表示された場合は、セーブデータの中身は全く同じです
    Stirling 比較

  4. 相違箇所でアドレスを特定する (相違箇所~相違終了箇所がアドレスです)

  5. 比較箇所一覧で相違箇所を選択して「ジャンプ」をクリックすると、相違箇所の数値が白黒反転して表示される
    Stirling 比較
相違箇所が一箇所の場合は、相違箇所のアドレスがパラメーター/フラグのアドレスと特定できます。
相違箇所が二箇所以上ある場合は、相違箇所のアドレスの中からパラメーター/フラグのアドレスを総当たりで調べて特定します。
相違箇所が一箇所の場合はチェックサムがない可能性が高く、相違箇所が二箇所以上ある場合はチェックサムがある可能性が高いです。
パラメーター/フラグと同様にアイテムIDを解析する事も出来ます。 例えばアイテムを入手する又は捨てる前後のセーブデータを比較すれば、アイテムが記録してあるアドレスとアイテムID(数値)を特定できます。

解析したアドレスにある数値を改造する方法

  1. 「パラメーター書換」を開く
    パラメーター書換

  2. 「アドレス」を入力する

  3. 「パラメーター」に改造したい任意の数値を16進数で入力する

  4. 実行ボタンを押す
検索・比較した時に入力した数値のバイト長とは異なるバイト長の数値に書き換えると正常に改造できません。
検索・比較した時に入力した数値のバイト長とは異なるバイト長の数値に改造する場合は、アドレスを変更する必要があります。 「00~FF」(1byteの数値)で検索・比較して「010000~FFFFFF」(3byteの数値)に改造する場合は、アドレスが仮に「1234」だとしたら 2byte分を差し引いて「1232」に変更しなければならない。

PS3のセーブデータは基本的にビッグエンディアンで記録されるが、 一部のリトルエンディアンで記録されているセーブデータの場合は、アドレスを変更しなくても大丈夫な可能性がある。

パッチコードを作成する方法 セーブデータ改造コード

セーブデータを解析してアドレスを特定したら、数値を書き込むパッチコードを作成できます。
1バイト書き込み
「0xxxxxxx 000000yy」
xxxxxxx : アドレス
yy : 1バイトの数値

2バイト書き込み
「1xxxxxxx 0000yyyy」
xxxxxxx : アドレス
yyyy : 2バイトの数値

4バイト書き込み
「2xxxxxxx yyyyyyyy」
xxxxxxx : アドレス
yyyyyyyy : 4バイトの数値

※ 上記以外にもシリアルコードなどのパッチコードを作成する方法があります。
パッチコードの数値は必ず16進数で入力して下さい。
パッチコードの左側部分が8文字になる様にアドレスを入力して下さい。同じくパッチコードの右側部分が8文字になる様に数値を入力して下さい。 パッチコードは一行が半角8文字+半角スペース+半角8文字で構成されなければ正常に実行できません。 例えば数値を「1」と入力する場合は「0」を付け加えて「00000001」となります。
アドレスが随時(セーブする度に)変動するタイプのセーブデータだとパッチコードの作成は難しくなります。

専門用語

バイナリエディター
Stirling
16進法(16進数)
アドレス(オフセット)
パラメーター
フラグ
リトルエンディアン
ビッグエンディアン
チェックサム

バイナリエディター
バイナリエディターとは、セーブデータなどのバイナリデータ(2進数)を16進数で表示・編集するツールです。

Stirling
Stirlingとは、Windows用のバイナリエディターです。
Windows以外の場合は、Android用やMac用のバイナリエディターを使用して下さい。
ダウンロード > Stirling (Vector)

16進法(16進数)
16進法とは、0~9の10個の数字にA~Fの6個の英字を加えて16個の文字で表現した数値です。
>> 16進数変換システム
Wikipedia > 16進法

アドレス(オフセット)
アドレスとは、セーブデータに記録されている位置を16進法で表した数値です。

パラメーター
パラメーターとは、ゲーム内で扱う10進法の数値、またはバイナリデータで扱う16進法の数値です。

フラグ
フラグとは、主にゲーム内の進行状況を記録した情報です。

ビッグエンディアン
ビッグエンディアンとは、2バイト以上のデータを上位→下位の順序で1バイトづつ記録する方式です。 データの並び順はリトルエンディアンの逆になる。 PS3は基本的にビッグエンディアンで記録されている場合が多い。

リトルエンディアン
リトルエンディアンとは、2バイト以上のデータを下位→上位の順序で1バイトづつ記録する方式です。 データの並び順はビッグエンディアンの逆になる。 数値(16進法)をリトルエンディアンに変換(並び替え)してから、セーブデータを検索したり書き換える必要がある。

チェックサム
チェックサムとは、データが破損しているかを調べる誤り検知機能です。 セーブデータにチェックサムがある場合は、改造した後にチェックサムを修正しなければ、破損したセーブデータとなる。 セーブデータ改造ツールが自動修正に対応していれば問題なく改造できるが、自動修正に対応していない場合は手動で修正する必要がある。

総当たり
総当たりとは、全ての組み合わせを実際に試す方法です。

後書き セーブデータ解析

二重セーブデータ
レトロゲーム(主に1990年代~2000年代のカートリッジ式のゲーム)に多いのですが、セーブデータを二重に保存する場合があります。 セーブデータを一つしか保存できないと批判された「DS ドラゴンクエストIX」も二重セーブデータです。 二重セーブデータは片方のセーブデータが破損しても、片方のセーブデータが破損してなければ 正常にセーブデータを読み込めるという特性があるので、セーブデータの安全性が高くなります。 同じセーブデータを同時に二つ保存する方式と セーブデータを交互に別々の箇所に一つずつ保存する方式があります。 二重セーブデータを解析する場合は、目的のアドレスが二重に検出されますので、基本的に小さい方のアドレスを改造します。

PS3セーブ関連システム

PS3セーブ関連ページ


スクロール Page Scroll to Top
[X]
FCエミュレータ ウェブFCエミュレーター
ブラウザーでプレイできるファミコン
SFCエミュレータ Flashマルチエミュレーター
FC SFC GB GBC GBA SEGA エミュ
Emulator(エミュレータ) Information Center © WebGamePlatform.com


QR