バイナリ・エディッタの妖しい使い方講座
必要知識
|
10進数と16進数の変換
10進数の場合・・・1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18.... ...249,250,251,252,253,254,255,256,257... 16進数の場合・・・1,2,3,4,5,6,7,8,9, A, B, C, D, E, F,10,11,12.... ... F9, FA, FB, FC, FD, FE, FF,100,101... 16進数の場合9の次にAとなり順にB,C,D,E,Fと増えていき、F(10進数では15)に1を足すと ようやく1桁繰り上がり10(10進数に換算すると16)となる。 10進数<−>16進数の変換が出来る関数電卓などがあれば十分だと思います。 ここでは10進数の場合数字の右下に小さく10、16進数の場合小さく16と書かせていただきます。
|
はじめに
|
バイナリ・エデイッタを使用すると自キャラのHPはおろか経験値、持ち金、持ち物
、
その他のステータス、ちょっと高度になりますが敵キャラ(最後のボスも含む)のHPなども変更することが出来ます。(^^; 簡単に強くなれる上不要な経験値上げもなくなる反面、ゲームをつまらなくしてしまうという欠点も持ち合わせています。 また、関係のないところを間違って書き換えるとゲーム自体壊れてしまいます。 あくまでも個人の責任において書き換えて下さい。 |
準備
する物 |
・書き換えるゲーム
・エデイッタソフト ・気合い&根性 (^^; これらがあれば十分です。また私の環境を書きますと、
|
さて、題材としてアリスソフトの「王道勇者」を取り上げてみます。
このゲームは経験値上げが面倒なため久々にエディッタを使用したゲームです。(^^;
GOLD 39689 2,取りあえず一番上にセーブする。
3,1でメモった数値を16進数に変換
EXP 35A216 −> A2 35
例) 1234516 のばあいは、 45 23 01 となる。
4,ゲームを最小化するか終了する。 5,エディッタを起動。(ここでは狐's バイナリエディタを使用) 6,エクスプローラーでアリスソフト−王道勇者のフォルダ(ディレクトリ)を開いて
8,すると、気の遠くなるような数字の羅列が出ます(下図)。(^^;
10,検索結果が出る。(下図) 11,アドレス(データの住所みたいなもの)の29F0行の+6列(=29F6)にA2, 29F0行の+7列(=29F7)に35がありました。 12,経験値の場所が判ったので早速書き換えてみましょう。 ただし、ここで注意しないといけない点は、経験値、持ち金の上限です。 16進数は1バイトで FF16(25510) 2バイトで
FFFF16(6553510)が最大である。
13 ,INSキーを押して上書きにする。下図@
14,上書き保存をして次にお金も増やしましょう。(^^ やり方は同じです。まず、 1,検索で 099Bを探す。 2,お金も2バイト使ってるので、最大は FFFF16(6553510)までOK。 3,099BをFFFFに修正して保存。 15,ゲームを起動もしくは最大化し、セーブデータの一番上(書き換えたデータ)を読み込む。 16,すると、下のようになる。 |
さて、1つだけしかないアイテムや0個のアイテムを 0116や0016で探すのはちょっと無理なのであきらめて下さい。00で検索すると検索結果が軽く100以上をはじき出すのでちょっと無理。
とは言うものの、どうしても増やしたい最強のアイテム。(^^; そういう場合は、 1,2カ所にセーブをする。先に出た「王道勇者」の場合、1番上&上から2番目に 全く同じ物をセーブする。 2,その後、片方だけそのアイテムを捨てるなりしてターゲットの数字のみを変えてセーブする。 間違っても使用して他の能力を上げないようにね。 3,捨てる前のデータ&捨てた後のデータを比較する。エディッタソフトには比較もしくは相違点など でデータの違うところをはじき出すという機能がついているのでここを利用して下さい。 4,すると、違うところがはじき出されるのでそこを書き換える。お好みにより0からFF16(25510)
|
もう一つ忘れてならないのが、セーブデータの暗号化もしくはチェックサム付きの物があります。 簡単に言いますと、 暗号化・・・・・セーブデータ全体もしくは一部をある法則に従ってデータを別の文字に 変えるという物。 チェックサム・・・セーブデータの最後もしくは途中にデータが改変されてないかをチェックする物。
|
こんな感じで講座を進めましたが、私自身はあまりこう言うことを本格的にしないため
|