第15回 「専用改造ツールの概要」
専用改造ツールとは、汎用改造ツールとは異なり、ある特定のゲームのみ改造する事のできるツールです。
第6回では、汎用改造ツールについてお話しましたが、その最後で、少し触れていましたよね?
ということは勿論、そのゲーム毎に作成しなければならないツールとなります。
従って、作成する手間は汎用ゲーム改造ツールよりも多くなりますが、
使い勝手の面からいえば、断然有利になると思われます。
こういった専用改造ツールは、様々なものが提供されていますが、
今回は、オンラインソフトの「ORE BUSTER DX」を改造するツールを作成しましたので、
こちらを紹介しながら話を進めていきましょう。
「ORE BUSTER DX」は、オーソドックスなRPG(フリーソフトウェア)でして、
非常にとっつきやすいゲームですので、是非一度プレイしてみる事をお勧めします。
こちらを参考にして、入手しておきましょう。
今回作成した ORE BUSTER DX 改造ツールには、ファイルの書き換えをする「KAIZOU_OreBuster.exe」と、
メモリの書き換えをする「KAIZOU_OreBusterM.exe」とがあります。
まずは、ファイル書き換えについて説明していきましょう。
その前に、ゲームをスタートさせて、改造しやすい環境にしておきます。
ゲームを初めて、最初にたどり着く町の中に入ります。
2分程でたどり着くと思いますので、頑張って下さい。
この時、ダンジョンでは、落ちてくる岩?に当たらない様に気をつけます。
その後、「こんぼう」を買って装備し、セーブしてからゲームを終了します。
それでは、セーブデータを変更してゲームを改造してみましょう。
セーブデータ(savedata.dat)は、ゲームプログラム(OREBUST.EXE)があるフォルダの
「GAME」というフォルダの中にあります。
セーブデータ改造ツール「KAIZOU_OreBuster.exe」を起動すると、以下のような画面になります。
キャラクターの名前 |
|
HP |
|
GOLD |
|
MaxHP |
|
1つ目 |
|
STR |
|
2つ目 |
|
DEF |
|
3つ目 |
|
LUCK |
|
4つ目 |
|
SPEED |
|
5つ目 |
|
データの読み込み |
データの書き込み |
終了 |
この後、「データの読み込み」ボタンを押して、セーブデータ(savedata.dat)を指定すると、
GOLD、HP等の値が表示されるようになります。(下図参照)
各数値の取得には、第14回で解説した、ファイル読み込み関数を利用しています。
キャラクターの名前 |
ショウ |
HP |
10 |
GOLD |
150 |
MaxHP |
10 |
1つ目 |
1 |
STR |
0 |
2つ目 |
|
DEF |
0 |
3つ目 |
|
LUCK |
0 |
4つ目 |
|
SPEED |
0 |
5つ目 |
|
データの読み込み |
データの書き込み |
終了 |
あとは、これらの数値を書き換えた後、「データの書き込み」ボタンを押すだけです。
今回は、以下のように書き換える事にします。
GOLD=500、 HP=20、 MaxHP=30
STR=5、 DEF=10、 LUCK=15、 SPEED=20
わざわざ値をバラつかせているのは、本当にその値がセットされているかを判断しやすくするためです。
例えば、全部「99」にしてしまうと、どこか1ヶ所だけ変更されなかった場合、
何処が間違っていたのかが分かり難いですよね?
さて、書き換え完了のメッセージが出ましたら、「終了」ボタンを押してゲーム改造を終了します。
あとは、再びゲームを始めて、書き換えが成功しているかを確かめておきましょう。
すると確かに、各ステータスやお金が増えていましたね。
ただ、「STR」は、「5」をセットしたはずなのに、「6」となっています。
これは、「こんぼう」を装備している分、数値が増えているのだと考えられます。
念のため、装備を変更して数値を確認しておきましょう。
では次に、メモリ改造ツールについても試してみたいと思います。
といっても、使い方はほとんど変わっていませんので安心して下さい。
先程の改造済みデータを使ってゲームを始めます。
そして、ゲームを起動した後で、メモリ改造ツール「KAIZOU_OreBusterM.exe」を起動します。
すると、先程のセーブデータ改造の時とほぼ同じ画面が出てきます。
あとは、「データの読み込み」ボタンを押すだけで、現在のパラメータ等が読み込まれます。
ここでの数値の取得には、第14回で解説した、メモリ読み込み関数を利用しています。
ファイルの場所を指定しなくても良い分、簡単でしたね。
ただし、1つだけ注意点があります。
それは、「KAIZOU_OreBusterM.exe」と同じフォルダに「ore_mem_data.txt」を置いておくという事です。
このファイルは、各パラメータがアドレスのどの部分に格納されているかを記述したもので、
これが無いと、メモリの書き換えができませんので注意してください。
何故、各パラメータのアドレスをプログラム(KAIZOU_OreBusterM.exe)の中に含めてしまわなかっんだ?
と疑問に思われた方もいらっしゃるかもしれませんね。
ですが、これには色々理由があるのです。
第4回で解説したように、メモリ上のアドレスというのは
ゲームのバージョンや、環境によって変動してしまうのです。
ですから、その位置を固定してしまうと、バージョンが変わると対応できないっ!
なんて事になってしまうのです。
そこで、変動する可能性のある箇所をプログラムから分離させ、別ファイルに記述しておくことで、
たとえアドレスが変わっても、プログラムを作り直すことなく、
そのファイルだけを書き直せば良いようにしたわけです。
このように、データとプログラムを分離することには相応のメリットがあるのですが、
細かい話は省略しておきます。
自分でプログラムを作る場合は、頭の片隅にでも留めておくと良いかもしれません。
さて、今回はとりあえず、専用改造ツールの概要・利用方法について確認してみました。
次回は、専用改造ツールの作成方法について解説していきます!
前に戻る 次に進む
講座の初めに戻る