コグノスケ


link 未来から過去へ表示(*)  link 過去から未来へ表示

link もっと前
2021年11月12日 >>> 2021年11月3日
link もっと後

2021年11月6日

Might and Magic Book One TAS最後の更新

目次: Might and Magicファミコン版

Might and MagicのTASが14分10秒になりました。最初のバージョン(23分30秒)を思い出すと、半分近くになってますね。YouTubeにも載せておきました([TAS] Might and Magic Book One (J) 14:10 with Map - YouTube

もはや操作の工夫でさらに削れそうなところは思いつきません。新たな攻略ルートを思いつかない限り、これが限界だと思います。というわけで、これにてTASはしばし休憩です。なんだかんだ1か月くらいやってたし、中古カセット購入代の元は十分取れたでしょう。楽しかった!

改善点その1: ボタン連打の高速化

従来より高速にボタン連打をする方法を見つけました。例えば↓キーを連打するとして、↓、待ち、↓ のように1フレーム空けないとキーを認識しません。が、この処理はバグっておりセレクトなど連打したいキーより下位ビットのキー(※)を同時に押すと、コントローラーの状態が変わったと勘違いして連打可能になります。画像で見た方が早いでしょう。


従来のキー連打方法


新たなキー連打方法

このように↓、↓+セレクト、↓、↓+セレクト……と連打すると、今まで3フレームで1回しか押せなかったところ、2フレームに1回押せるので、連射速度を1.5倍にできました。テレポートのためダイヤの鍵を使うとき、バックパック欄にて↓キーを6回連打するので地味に効きます。

(※)ファミコンは上位ビットから↑↓←→スタートセレクトBAと割り当てられています。Might and Magicはキーを同時押しした場合、上位ビット側のキーしか認識しません。したがって↓キーを連打したければ、↓キーよりビット位置が下(←→スタートセレクトBA)を一緒に押しましょう。なおAキーは下位ビットのキーがないので、この連打技が使えません。

改善点その2: サブフレーム入力によるメッセージスキップ

ずっとうまくいかなかったメッセージスキップを克服しました。メッセージスキップは非常に強敵で、サブフレーム入力(1フレームより細かいタイミングで入力)を使わないとうまく行きません。エミュレータ側も進化していて、最近はサブフレーム入力に対応している(SubNESHawk)みたいです。すごいね……。

ファミコンはアドレス0x4016にアクセスするとコントローラーの状態がポーリングできるようになっています。サブフレーム入力に対応したエミュレータは、0x4016へのアクセスタイミングに合わせてコントローラーの状態を変えているのだと思います。

Might and Magicはメッセージウインドウのクローズアニメーションが始まって2フレーム目、描画割り込みの直前に1回だけキーを押さないとスキップしてくれません。キーを押しっぱなしではダメで、タイミングがシビアすぎます。これたぶんバグですよね?条件判定が厳しすぎる。適当に連打していればたまに該当するものの、人間が狙って押せるタイミングには思えません……。

バグかどうかはさておき、サブフレーム入力を使うと100%メッセージスキップ可能です。時間を消費しがちなメッセージウインドウのオープンクローズが発生しなくなり、高速化に貢献しています。

改善点その3: サブフレーム入力による乱数の選択肢の増加

サブフレーム入力により乱数を引く機会が増えました。今回の時間短縮への効き目としてはこれが一番です。以前説明した通り(2021年10月8日の日記参照)Might and Magicはコントローラーの状態を見ると乱数が変化します。しかもマップによって(地上マップなど)は1フレームに無駄に70回くらいコントローラーの状態を見ています。

今までは戦闘をルートに入れると、良い乱数を引くために時間を浪費してしまいあまり良い結果になりませんでした。しかしサブフレーム入力ならば、今まで1フレームの間に隠れていた70回以上の抽選チャンスが利用できますから、抽選チャンスが爆発的に増えます。さほど時間をかけずに良い乱数を引けるようになりました。

おかげで序盤に「ようせい」x 3をシバキ倒してGEMをもらい、ソーピガル地下、ノーザンバリア、C2、C1を無視して、エルキューンにワープでき、ルートの大幅短縮に役立っています。

編集者:すずき(2021/11/10 13:46)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



link もっと前
2021年11月12日 >>> 2021年11月3日
link もっと後

管理用メニュー

link 記事を新規作成

<2021>
<<<11>>>
-123456
78910111213
14151617181920
21222324252627
282930----

最近のコメント5件

  • link 21年3月13日
    すずきさん (03/05 15:13)
    「あー、このプログラムがまずいんですね。ご...」
  • link 21年3月13日
    emkさん (03/05 12:44)
    「キャストでvolatileを外してアクセ...」
  • link 24年1月24日
    すずきさん (02/19 18:37)
    「簡単にできる方法はPowerShellの...」
  • link 24年1月24日
    KKKさん (02/19 02:30)
    「追伸です。\nネットで調べたらマイクロソ...」
  • link 24年1月24日
    KKKさん (02/19 02:25)
    「私もエラーで困ってます\n手動での回復パ...」

最近の記事3件

  • link 24年3月25日
    すずき (03/26 03:20)
    「[Might and Magic Book One TASのその後] 目次: Might and Magicファミコン版以前(...」
  • link 21年10月4日
    すずき (03/26 03:14)
    「[Might and Magicファミコン版 - まとめリンク] 目次: Might and Magicファミコン版TASに挑...」
  • link 24年3月19日
    すずき (03/20 02:52)
    「[モジュラージャックの規格] 古くは電話線で、今だとEthernetで良く見かけるモジュラージャックというコネクタとレセプタク...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 03/26 03:20