ひと月ほど前に考えていたネタ
DQ1・2
はじめに
乱数生成パターンを解析するのは無理だけどフレームカウンタなら調整できるかもしれないと思って考えたやり方。
乱数調整せず、フレームカウンタだけ調整。でも難易度は・・・。そういう意味でネタです。
現段階で人力でやるのは現実的ではない。やるなら自己責任で。
理想的に操作ができたとしてもメタル出現率は50%程度で逃げることも十分考えられます。
調査内容が一部間違っている可能性を否定しません。
<DQ1>7E0027, 7E10B9, 0050BF(出現敵決定)
エンカウント
・半歩移動は8フレーム。周期8フレーム
→歩行中の入力精度は8フレーム以内でOKなはず
・出現する敵はフレームカウント$68(0-4,周期5フレーム)で決定される
・タイミングが重要!1フレームもずれてはならない
・$68は画面の切り替わり,メッセージウィンドウ表示,勇者の攻撃などの時にカウントを飛ばすことがある。
*入力受付→1F後7E10B9=1→さらに8F後$68取得→さらに2F後画面がフラッシュ
*$68が常に1フレームごとに1回カウントされると仮定する。
フラッシュから5N+4フレーム後のキー入力を受け付けるときに動画の山の位置へ移動開始する。
その後ミスせず移動していれば50%くらいでメタルスライムが出現する。
(エンカウント率を平地:山=1:3として考えた。平地3回山1回のループになるので確率は50%程度となる)
参考動画: http://www1.axfc.net/uploader/P/so/88548.avi
連射設定おかしいのかダメージ固定されていません。エミュの連射+Joy to Keyの低性能連射
連射設定を直しても撮影したエミュレータだと押しっぱなしでは2回に1回しか入らない模様。原因はよくわからない。
Snes GT Ver 0.218の連射機能だとダメージが入るときは途中でキーを離しても必ず入り、外れるメタルはとことん外れる。予め入力可能なフレームが決まっているのだろうか。(この検証は改造ロム使用)
【移動】
入力は”v v > ^ > < ^ < < < ”のループ
「適切なタイミング」で右へ半歩移動。 以後1フレームの無駄もなく動くw
下(海)、下(平地)と入力し、角テクで右に半歩さらに下へ半歩移動(ここも平地判定)
右(平地)、上(平地)、右(山)[ここまでで半歩移動5回,ループ前半終了]
左(平地)、上(海)と入力する。(角テクで右に半歩移動)
左(平地)、左(平地)、左(山)
ここまでで一ループ。エンカウントするまでひたすら繰り返す。
※海と書いているのはその位置で無理やりエンカウントさせると背景が海だったから
ちなみに半歩テク使用時はエンカウント判定に使う乱数が取得されないため、
敵出現エリアで同じルートを通っても半歩テクありとなしでその後の乱数が変わってくる。
「適切なタイミング」→攻撃エフェクトや足元調査などで変わってくる
事前のエンカウントで、エンカウントテーブルの5番目に設定された敵が出現していたとする。
このエンカウントのフラッシュが目安。フラッシュした瞬間から5N+3フレーム後に方向キー入力が入れれば良い。(Nは整数。テーブルNo2なら5Nフレーム後)
ただし、このエンカウントからメタルスライム出現までフレームカウンタ$68が正確に1フレームに1回動いているものと仮定しており、通常はずれるはず。
また、移動のキー入力受付は8フレームに1回しかないのでタイミングが合わないことが多い。
【カウンタ$7E0068がずれる例】
・リセット直後はカウントが止まったり、2フレームに一回進んだりする。
・勇者の攻撃ヒット時
・足元調査のウィンドウ消失時
補助ツールとしてメトロノームなどを5フレームに1回のペースで鳴るようにしておくのもあり?
追記
位置と出現が期待される敵の関係は表のようになる。
乱数生成パターンを解析するのは無理だけどフレームカウンタなら調整できるかもしれないと思って考えたやり方。
乱数調整せず、フレームカウンタだけ調整。でも難易度は・・・。そういう意味でネタです。
現段階で人力でやるのは現実的ではない。やるなら自己責任で。
理想的に操作ができたとしてもメタル出現率は50%程度で逃げることも十分考えられます。
調査内容が一部間違っている可能性を否定しません。
<DQ1>7E0027, 7E10B9, 0050BF(出現敵決定)
エンカウント
・半歩移動は8フレーム。周期8フレーム
→歩行中の入力精度は8フレーム以内でOKなはず
・出現する敵はフレームカウント$68(0-4,周期5フレーム)で決定される
・タイミングが重要!1フレームもずれてはならない
・$68は画面の切り替わり,メッセージウィンドウ表示,勇者の攻撃などの時にカウントを飛ばすことがある。
*入力受付→1F後7E10B9=1→さらに8F後$68取得→さらに2F後画面がフラッシュ
*$68が常に1フレームごとに1回カウントされると仮定する。
フラッシュから5N+4フレーム後のキー入力を受け付けるときに動画の山の位置へ移動開始する。
その後ミスせず移動していれば50%くらいでメタルスライムが出現する。
(エンカウント率を平地:山=1:3として考えた。平地3回山1回のループになるので確率は50%程度となる)
参考動画: http://www1.axfc.net/uploader/P/so/88548.avi
連射設定おかしいのかダメージ固定されていません。エミュの連射+Joy to Keyの低性能連射
連射設定を直しても撮影したエミュレータだと押しっぱなしでは2回に1回しか入らない模様。原因はよくわからない。
Snes GT Ver 0.218の連射機能だとダメージが入るときは途中でキーを離しても必ず入り、外れるメタルはとことん外れる。予め入力可能なフレームが決まっているのだろうか。(この検証は改造ロム使用)
【移動】
入力は”v v > ^ > < ^ < < < ”のループ
「適切なタイミング」で右へ半歩移動。 以後1フレームの無駄もなく動くw
下(海)、下(平地)と入力し、角テクで右に半歩さらに下へ半歩移動(ここも平地判定)
右(平地)、上(平地)、右(山)[ここまでで半歩移動5回,ループ前半終了]
左(平地)、上(海)と入力する。(角テクで右に半歩移動)
左(平地)、左(平地)、左(山)
ここまでで一ループ。エンカウントするまでひたすら繰り返す。
※海と書いているのはその位置で無理やりエンカウントさせると背景が海だったから
ちなみに半歩テク使用時はエンカウント判定に使う乱数が取得されないため、
敵出現エリアで同じルートを通っても半歩テクありとなしでその後の乱数が変わってくる。
「適切なタイミング」→攻撃エフェクトや足元調査などで変わってくる
事前のエンカウントで、エンカウントテーブルの5番目に設定された敵が出現していたとする。
このエンカウントのフラッシュが目安。フラッシュした瞬間から5N+3フレーム後に方向キー入力が入れれば良い。(Nは整数。テーブルNo2なら5Nフレーム後)
ただし、このエンカウントからメタルスライム出現までフレームカウンタ$68が正確に1フレームに1回動いているものと仮定しており、通常はずれるはず。
また、移動のキー入力受付は8フレームに1回しかないのでタイミングが合わないことが多い。
【カウンタ$7E0068がずれる例】
・リセット直後はカウントが止まったり、2フレームに一回進んだりする。
・勇者の攻撃ヒット時
・足元調査のウィンドウ消失時
補助ツールとしてメトロノームなどを5フレームに1回のペースで鳴るようにしておくのもあり?
追記
位置と出現が期待される敵の関係は表のようになる。
入力(地形) | 期待される敵 | エンカウントNo. |
下(海) | 出現しない | 1 |
下(平地) | 鎧の騎士 | 2 |
右(平地 ) | メイジキメラ | 3 |
上(平地) | 影の騎士 | 4 |
右(山) | メタルスライム | 5 |
左(平地) | 死霊の騎士 | 1 |
上(海) | 出現しない | 2 |
左(平地) | メイジキメラ | 3 |
左(平地) | 影の騎士 | 4 |
左(山) | メタルスライム | 5 |
PR
Comment form
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
最新記事
(12/18)
(04/18)
(09/15)
(09/11)
(06/21)
プロフィール
HN:
bamboo
性別:
非公開
自己紹介:
2010年の3月ごろニコニコ生放送のゲーム放送でRTAを知ってよく見るようになった。
どちらかというとゲームはプレイするものじゃなくてプレイを"みる"ものだと思っている。
逆アセンブル解析というのをかじったものの放置していたが、某放送の影響で解析を再開。
2を初クリアしたのは2011.3.10。ブログの内容はSFC版ドラクエ1・2の解析がメイン。最近はjavascriptとかluaをある程度扱えるようになったので、botでルート検証とかできたらと思いつつも進んでいない。
要点をまとめたり文章書くのが苦手なので記事が長ったらしかったり、日本語のようで日本語でなかったりする。プログラム用語が使えるようになりたいかも。
ツイッター: https://twitter.com/bamb00h
ブログに公開せずツイートのみの情報もあり(twilog)
どちらかというとゲームはプレイするものじゃなくてプレイを"みる"ものだと思っている。
逆アセンブル解析というのをかじったものの放置していたが、某放送の影響で解析を再開。
2を初クリアしたのは2011.3.10。ブログの内容はSFC版ドラクエ1・2の解析がメイン。最近はjavascriptとかluaをある程度扱えるようになったので、botでルート検証とかできたらと思いつつも進んでいない。
要点をまとめたり文章書くのが苦手なので記事が長ったらしかったり、日本語のようで日本語でなかったりする。プログラム用語が使えるようになりたいかも。
ツイッター: https://twitter.com/bamb00h
ブログに公開せずツイートのみの情報もあり(twilog)
ブログ内検索
最古記事
(09/17)
(09/17)
(09/18)
(02/04)
(02/07)
カウンター
忍者アナライズ