<   2009年 12月 ( 5 )   > この月の画像一覧

チェックサム回避方法

チェックサム処理のルーチンを特定しましたので、それらを無効化させる方法を書いておきます。
ROMの中身をバイナリエディタで3ヶ所書き換えるだけです。

・01CF71 38 → 18 (風来日記チェック後半)
・03E191 97 → B7 (風来日記チェック前半)
・067EFD 38 → 18 (風来人番付)

改造コードでも可能ですが、一々入力するのが面倒でしょう。入力を忘れるとデータが消えてしまいますし。
これでチェックサムを気にすることなく、やりたい放題改造ができます。
[PR]
by oyasen | 2009-12-27 14:30 | 改造・解析

web拍手への返信 その4

>解析乙です! お節介かもしれませんが情報提供を。
>壁の中でモンハウ巻物→やみふくろう設置→モンハウ進入
>の手順なら、天然のモンハウじゃなくてもバグ表示を起こせます。
>これで番犬隊の表示をバグらせたら、空欄で何のメッセージも出ない特殊ハウスが表示されました。

その手がありましたか。これは気付きませんでした。


>食神のほこら5Fの話です。
>ガイコツまじんの肉を食べ、特殊能力でモンスターをぴーたんに変えようとしたのですが、きり仙人やパコレプキンといったモンスターに変わることがありました。
>変化の効果はどういう構造になっているのでしょうか?
>もし機会がありましたら調べていただけると嬉しいです。

例外処理があるかも知れませんが、1以上min{27,(到達度)}以下の乱数を発生させて、そのフロアに出現するモンスターの中から選択だと思います。


>ガイコツまどうの杖のバグと関連してるかもしれないので報告です。
>ガイコツまどうの状態で変化の杖を振るとフロアに関係なくモンスターに変化しますが、
>シレンの状態で変化の杖(改造)を振るとフロアに出現するモンスターに変化します。

ガイコツまどうの杖のバグもややこしかったですが、変化の杖もややこしいですね。
[PR]
by oyasen | 2009-12-24 21:45 | web拍手への返信

デモ改造

回想でSELECTまたはSTARTを押しながら風来日記を選ぶとデモが見られますが、それの改造方法が分かりました。
デモの仕組みは非常に単純で、ROM中にセーブデータが入っていて、それを風来日記の代わりに読み込んでいるだけです。

03E158~03E169 デモデータオフセット
1B1000~1B1C59 デモ1(SELECT+風来日記1,杉並の旧街道)
1B1C5A~1B28BA デモ2(SELECT+風来日記2,竹林の村)
1B28BB~1B35C5 デモ3(SELECT+風来日記3,断崖の岩屋)
1B35C6~1B4224 デモ4(START+風来日記1,山頂の町)
1B4225~1B4F15 デモ5(START+風来日記2,テーブルマウンテン)
1B4F16~1B5B6C デモ6(START+風来日記3,地下水脈の村)
1B5B6D~1BFFFF 空き領域

例によって元からあるデモデータはビッシリ詰まっていて、長時間の回想だと次のデータにはみ出してしまうので、1B5B6D~1BFFFFの空き領域を使いましょう。
例えば風来日記1のセーブデータで置き換えたい場合、SRMファイルの000000~001FFFをコピーして、ROMの1B6000~1B7FFF(切りの良い方が分かりやすいでしょう)の空き領域に上書きし、03E158~03E15Aを"00 60 DB"と書き換えれば、デモ1が風来日記1のものに書き換わります。
実際は行動データ以降(渓谷の宿場に戻ると反映されるイベント進行度とか倉庫の中身とか)は必要ないので、風来日記1だと000000から、000BED以降の初めてのFFまででも良いのですが、まあ全部コピーする方が分かりやすいでしょう。
逆にセーブデータをデモデータで置き換えれば、デモデータの続きをプレイすることもできます。是非一度お試しあれ。
[PR]
by oyasen | 2009-12-20 12:35 | 改造・解析

NPCの出現率 その2

・一般NPC

15F以上には出現しない
町には出現しない
32/256の確率で、以下のNPCの中から何れか1人出現

1.シケのハンザキ
2.投テキのツブテ
3.聞き耳のサブ
4.親切なおじいさん
5.流浪のシジマ
6.橋タタキのヤマケ
7.犬
8.ソダテのカンジ

・飛脚

15F以上でないとき、32/256の確率で出現
奇岩谷、山頂の町、渓谷の宿場それぞれ等確率
どれも送り先が今いる町と同じ時は再選択
奇岩谷で(イベント0C)<03のとき再選択
山頂の町で到達度が8F未満の時は出現しない

・カマヒゲ

5~14Fのとき、10/256の確率で出現

・少女

1~9Fのとき、10/256の確率で出現

・じじい

8~16Fのとき、21/256の確率で出現

因みに、スクリプトを少しだけ紹介すると、次のような感じになっています。

00 XX XX YY YY …… アドレスXXXXのプログラムを実行して、C=0ならスクリプトのオフセットYYYYへ、C=1なら次の命令へ
05 XX XX アドレスXXXXのプログラムを実行して、その結果"A"に入ったコードのNPC出現
06 XX …… コードXXのNPC出現

スクリプト全体は固定NPCも含まれているので長すぎて、全ては書ききれません。なので、取り敢えず今回はこの辺までにしておきます。
[PR]
by oyasen | 2009-12-19 16:28 | 改造・解析

NPCの出現率 その1

以前、NPCを出現させる処理はスクリプトで書かれていると言いましたが、少し調べてみました。
いずれも二面地蔵の谷と渓谷の宿場には出現しません。
イベント番号とその進行度はいずれも数値のままにしてあります。大体予想は付きますが、確認していないので。

・お竜

(イベント83)=00でないとき出現しない
(イベント03)=00,02のとき、町でなく、5F以上でなければ85/256の確率で出現
(イベント03)=04のとき、17F以上でなければ5/256の確率で出現

・座頭ケチ

(イベント85)=00でないとき出現しない
(イベント05)=00のとき、町でなく、5F以上でなく、到達度が8F以上であれば85/256の確率で出現
(イベント05)=03のとき、17F以上でなければ5/256の確率で出現

・ペケジ

(イベント86)=00でないとき出現しない
17F以上には出現しない
(イベント06)=05のとき、5/256の確率で出現

・三番弟子

15F以上には出現しない
(イベント04)<03のとき出現しない
(イベント87)=00のとき、16/256の確率で出現

・ナオキ(1回目)

(イベント09)=00でないとき出現しない
(イベント88)=00でないとき出現しない
3F以上には出現しない
町でないとき、64/256の確率で出現

・ナオキ(2回目)

(イベント09)=02でないとき出現しない
(イベント88)=00でないとき出現しない
7F以上でないとき、21/256の確率で出現

・スララ

12F以上には出現しない
8F未満には出現しない
(イベント0C)=00でないとき出現しない
(イベント89)=00のとき、64/256の確率で出現
[PR]
by oyasen | 2009-12-12 10:20 | 改造・解析