PS3はコピー禁止でない限りセーブデータをUSBにコピーできる。しかし場合によってはこのセーブデータが使えないので気をつけようという話。
PS3ゲームのセーブデータの構造
詳しくはここで解説されている。
以下の写真はLRFF13のセーブデータをエクスポートしたもの
ICON0.PNG、PARAM.PFD、PARAM.SFO
この3つのファイルにセーブデータ本体以外の重要な情報が書き込まれている。
ICON0.PNGは見ての通りサムネイル。PARAM.PFDはセーブデータやPARAM.SFOの暗号化に使われるファイルらしい。
問題はPARAM.SFO。このファイルには具体的にユーザーIDなどの情報が書き込まれている。
Wikiにこのような表記があった。
PS3のシステムには “XRegistry.sys” というWindowsで言うレジストリ、GNOMEで言うdconf的なのが存在する。そしてその中にPSNのアカウントIDを記録する項目がある模様。
恐らくここに記録されているアカウントIDとPARAM.SFOに記録されているアカウントIDが合致しない場合セーブデータがインポートできない事態や読み込み専用のセーブデータ扱いされるという何かしらの制約が発生するのだろう。
事実PlayStationの公式サイトにも以下のような記述がある。
ただこれは同じPSNアカウントでサインインすれば良い話でセーブデータを配布するなど悪用しない限り特に問題ないと言える。
ただもう少し調べてみるとコンソールIDというものが存在することが判明。
どうやらPARAM.SFOにはPSID(コンソール固有のID)というものがアカウントIDに加え記録されてるらしい。
ただこれがセーブデータの所有者を確認する方法として使われてるかと言えば個人的には怪しいところ。もし本当ならPS3を移行したらセーブデータが使えなくなったという報告で溢れているはず。しかし現実は移行後でも前と同じPSNアカウントでログインすれば使えたという事例も多数ある。
確かめてみた
実際にどうなっているか確かめないと気になって夜も眠れないのでsfo_editorを使って実際に自分のセーブデータを覗いてみた。
アカウントIDは重要な個人情報であるためスクリーンショットの投稿は控える。
上記の表も参考に調べた結果 “PARAMS” という項目(長さ1024)の中に32文字のコンソール固有のIDが含まれている事が無事判明。
ただやはりセーブデータの所有者確認には使われてい可能性が高い。私の場合コンソールIDが異なっても普通にデータを使えた。
実はPARAM.SFOをもっと簡単に書き換えるツールも存在するので試してみたい人はどうぞ。
まとめ
- PS3のセーブデータにはPSNアカウントのIDと紐付けられていて合致しない場合セーブデータが使えない、読み込み専用になるといった何かしら制約が発生する(ただし発生しないゲームもある模様
- コンソール固有のIDも記録されているがこれが所有者判別に使われている訳ではない。
- PARAM.SFOを書き換えるツールが存在するので事情によりPSNアカウントにログインできない人は使うと良いと思われる。