secondfiddle@人柱日記

ま、パソコンと車とカメラとそれから・・・・・・

そして神は舞い降りた 

BIOHAZARD4 PC版 改装計画 emleon00.eslの謎

お待たせいたしました。今回はちょっとねちっこくなってますので、そこんとこヨロ。
まず、
savedata.datは一筋縄ではいきません。所持金を変えるであろうアドレスが何となくわかりましたが、書き替えるととたんに「壊れちょる」(意訳)となり、セーブデータそのものを読み込んでくれません。これは困った。そこでセーブデータのこねくり回しは取りあえずおいといて……
神が舞い降りたのは、ZERO氏がさらに重要なファイルの存在を示してくれたからです。(以後「神様」と称します)
その名も「etc.dat」
これをGCAで展開すると新たなる発見がある、と。
その中のemleon00.eslに256もの敵キャラが潜んでいる、と。
アドレスひとつひとつに敵キャラの出現可否、種類、体力など敵キャラに関するすべての要素がおかれている、と。
またemleon00.eslのその中の1E01アドレスに23と言う数字があり、これがカラスを現していると。
神様凄い。
カラスというのは、ゲーム冒頭に出てくる三羽のカラスのことでして、正面右上の木の上にいるカラスと右下と左下の地上にいるカラスです。これを変更する事によって様々な敵キャラを召喚できる、と。
変更するキャラによって地上のカラスが消えてしまうことがありますので、ターゲットは木の上のカラス。こいつだけは消えない、と。
「23」がカラスと言うことを手がかりに、1〜FFまで総当たりで調べてみました。でもまあ、3F止まりで息が切れました。3Fまで走ったわけではありません。40以降は次の機会に。
結果、主だったことを羅列します。
04……Lewis
05……Ashley
21……犬
22……コルミコス
32……U-3
35……村長第二形態
36……リヘナラドール
0F……モーターボート
2A……トラバサミ
2F……デルラゴ
4のLewisは何故か上空をせわしなく走り回っています。飛び降りては来ません。撃ったらどうなるのでしょう。今後の検証課題です。
5のAshleyは木から飛び降り、操作キャラについて回ります。その代わり影絵のように薄暗くなっております。本物のAshleyと合流したらこの影絵Ashleyは一体どうなるのでしょう。その答えは後ほど……。
0Fのモーターボートにいたっては木の上に存在するにもかかわらず、乗り込むことが出来ます。ボートに接近すると「乗る」コマンドが自然に出てきます。
これで建物の中に突入できたらまた別の世界が堪能できるのではないかと思われましたが、やっぱりそうは問屋はおろしません。逸脱した行為は御法度なのでしょう。
2Fのデルラゴは本編ではとてつもなく巨大な怪物として描かれていますが、木の上のデルラゴはちんまりとして上空を泳ぎ回っております。因みにどんな武器で攻撃しても、倒せません。やっぱ、最強武器は銛?
2Aのトラバサミは攻撃すると閉じます。当たり前なのでしょうが、木の上では何となく奇妙。当たり判定はどこでなされているのでしょうか。
随所に村人や邪教徒、戦闘員が登場します。変更すればもっとバラエティに富んだ敵キャラが出てきますが、まだそんな余裕なんてございません。
emleonxxには番号が振ってありましてemleon00.esl〜09まであります。ステージ毎に違うのを読み込むのでしょうか。謎です。
因みに1〜3ではゲームが突然泊まりました。違う止まりました。謎です。
etc.datを解凍するとemlist01.esl……等も見え隠れします。list、とつくからには何らかのリストが書かれているのでしょう。その中に武器データも? 謎です。
emgirl……もあります。なんでしょう。そそります。
神様は森羅万象すべてのキャラを把握しているのではないか、と。
神様が本気になったらそれそれは凄いことになるのでしょう。BIOHAZARD4_ZERO_world、お楽しみに。なんちて。
神様のようにスマートに出来ればよいのでしょうが、当方そんな理力は持ち合わせておりませんので、総当たりでちまちまとやるしかないです。まるで馬鹿です。
で、見つけた敵キャラの数値をすべてアシュリーの数値にしたら? 
欲望が渦巻きます。でも書き換えでへましたら? 取りあえず15を18に。

これは武器屋の親父の番号です。村中央広場に行きますとこうなりますた。

まるっきり動きません。攻撃もしてこないしそばを通っても知らん顔。
しかしその後イベントムービーが始まるとフリーズしました。
次に18を05に。

七人のアシュリーに囲まれたアシュリーです。襲われているわけではありません。本編のアシュリーを追っかけるのみです。
因みに武器を構えると一斉にしゃがみます。本編についてくるアシュリーそのものの振る舞いです。
その他の村人はそのままですので、襲ってきました。
塔の上に逃げ込んでみました。一緒に昇ってきます。
火炎瓶を放り込まれました。爆発するとついてきたアシュリーは一斉に被害に遭い、ゲームオーバーとなりました。
以上二つのことでいえること。
敵キャラといえども役割分担があるようで、書き換えを行ってもゲーム側の実行ファイル(Game.exe)でその役割にあったキャラで動かされるといえそうです。攻撃型と非攻撃型、つまり後者として武器屋の店主には襲われることはない、アシュリーはついてくるだけ。ボートにだって襲われることはない。
でも非攻撃型以外は攻撃してくる、と言うわけですが集団行動をとる村人や邪教徒などは近くまで寄らないと襲ってこない設定(一部例外あり)になっているようですが、中ボスなど単独型、つまり35(村長第二形態)や2C(ヴェルデューゴ)、2Dは遠くにいても襲ってきました。村中央広場では、村人には気がつかれなくても村長はすぐにやってきました。いや〜小屋以外でお会いするのは初めてでしたので、とっても怖ッ。
そのように実行側で制御されていると思われます。
これらでおわかりの通り、無茶苦茶な設定をしても実行側でそれに見合った動きに制御されるのでございましょう。読み込まれたデータを元に実行ファイルが判断して、理に合わないと感じたら再度置き換え処理をしている……と言うことは、ここでいくら敵キャラをアシュリーにしたところで、襲ってくることはなさげです。
かつて凶狐さんが試そうとして出来なかった(であろう)アシュリーに襲われるレオンという図は、ここでは実現不可能ではないでしょうか。
また、イベントムービーを発生させないようにうまく扉の前に来ればフリーズしないようですが、イベントムービーが始まるとフリーズします。

頭が痛くなりましたので、今日はここまでといたしますが、もっとemleon00.eslを弄くってみたいと思います。(うひうひ)