ゲーム解析・改造
改造のすすめ

ゲームを改造するにはどんな方法が良いのか検証します。

まず、アセンブラを知らなくては話になりません。
一部のディスクテープソフトBASICが使われている事もありますが、
ある程度のプログラムが理解できないと改造は困難です。
RPGのお金、シューティングでの残機といった
変化する数値を増減させているルーチンを見付ける方法。
 
[1]メモリを検索する
手っ取り早く調べるならこの方法が一番だと思います。
残機などの数値が特定できない場合は
数値を変化させて比較するのが効率的。
しかし、番地が特定できても直接アクセスしているとは限りません。
 
[2]初期値、上限などの定数を検索する
単純に値を検索するのではなく、命令も含めた検索が必要になります。
(例)残機設定が「3」なら
【 LD A,3 】【 LD [xxxx],A 】と予想して「3E.03.32」を検索します。
 
[3]特定の命令を検索する
(例)10進表示を簡単にする為にDAA命令を使っている場合、
【 SUB A,1 】【 DAA 】と予想して「D6.01.27」を検索します。
又、「27」だけを検索してもある程度の絞り込みが可能です。
アクションゲームなどで判定を無効、又は死なない様にする方法。
 
[1]残機処理から逆にたどる
初期のゲームでは処理が連続して行われている場合が多く、
少し調べれば簡単に見付けられます。
ただ、開始直後に残機が減るゲームでは、この方法は使えません。
 
[2]サブルーチン総当り
複雑なプログラムほどサブルーチンを多く用意しているもの、
それを逆手に取ります。
まとめてサブルーチンを呼んでいる所を調べ、
ルーチンの幾つかを飛ばして変化を見ます。
時間を掛けて絞り込めば目的は達成されるでしょう。
セーブ・ロードならテープ関係のBIOS
裏技ならキースキャンBIOSを調べるといった風に、
改造するには作る側の立場になって考える事が重要です。
その都度、どの様な構造でプログラムが組まれているかを
知る能力が必要になります。
要するに方法は無限にあり、如何に効率良く見付けるかがポイント
兎に角経験を積むしかありません。
中には無駄な組み方をしていて何ヶ所も潰さなくてはならなかったり、
構造が複雑で泥沼にハマる事もあります。
又、視点を変えて効果音から調べる方法も有効です。
思い付いた方法を色々と試してみましょう。



戻る

ツリー表示
トップページへ