「これはヤバかったな」という遅刻エピソード

ゲームの内部コードはセーブデータをバイナリ帳で開いて見れますか?

例えば、所持金のアドレスが8008FFB2だったとして、これをバイナリエディタで開いて見つけることができるのですか?

8008FFB2にFF入れれば所持金がMAXになるよ、と言った情報はあるのですが、逆に、8008FFB2を探してそこにどんなデータが入っているのかを確かめたいのですが、逆の方法が分かりません。

最初の8は無視でいい? エディタで開いても、コードの下一桁は全て0でB2なんかありませんし...

A 回答 (2件)

バイナリエディタで開いたとき、



左にある8桁の16進数は、アドレスです。
2番目以降の2桁の16進数それぞれが、1バイトのデータです。

8008FFB0 12 34 56 78 9A BC DE F0 FF EE DD CC BB AA 99 88

例えばこのようにあったとき、この1行はアドレス8008FFB0 ~ 8008FFBF の16バイトを示しているわけです。

アドレス 8008FFB2 とは、3番目の「56」の位置です。(最初が0なので注意)
そこを書き換えることとなるでしょう。

----

ただし、セーブデータというのは、そのような単純な書き換えが行われないように、暗号化されている場合もあります。

その場合、
・暗号化の解除
・データの書き換え
・再暗号化
のようにしなければならないかもしれません。
    • good
    • 0
この回答へのお礼

ありがとうございます。エディタの見方が分かっていませんでした^^;

でも、目的のアドレスは探せなかったので、もうちょっと勉強してみます。

お礼日時:2012/04/07 21:51

ドラクエのセーブデータならそんな感じでしたね。

その手の解析をされた方々のサイトを参考にされたら良いかと。

データ列の範囲が限定されているなら、とりあえずオリジナルのバックアップを取ってから00~FF の値を適当に入れて実際に動作テストするしかないですね。

最初の8を無視する?二文字で一つ、0~256の範囲の値ですよ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報