【MHW:IB】ムフェト・ジーヴァの発覚バグ

ムフェトのオンラインマルチプレイには発覚を先取りしてしまうバグによって、2層および3層の移動吸収(HP+15%)が行われないことがsteam版、PS版ともにあります.

発覚バグ

youtu.be

3層移動時にテントで誰か1人が発覚され(その証拠に発覚された人はミニマップが赤色になり、テント内で威嚇咆哮が聞こえるなどする)、3層へ入ると本来行われているはずの移動吸収がされておらず、威嚇や吸収および上レーザーをしていることがあります.

2層移動時でもこのバグは発生しますが、3層のものと比べて実用的ではないです.
3層のものをメインに解説し、2層についてはそのアナロジーで補足しておきます.


3層発覚バグ

発生条件

オンラインマルチで、2層枯渇後の調査班リーダーのセリフ出現からちょうど8秒経ったタイミングでテントに入る入力または6秒経ったタイミングでテントを出る入力をすることで(テント暗転のタイミングが重要)、発覚バグを発生させられます.
ソロでは今のところバグ発生させることは不可能であると認識しています.


テント発覚のメカニズム

約1年間、このバグについて研究し続けて発生条件を特定し、どうしてこのようなバグが起きるのかの仮説を立ててみました.
あくまで仮説であり、これ以上検証・証明するには高度なリバースエンジニアリング技術が必要になると思います.


テント暗転時の瞬間に、プレイヤー座標のワープが行われていて、その一瞬かテント内にいる間では座標未定義あるいは3層に近い特定の座標に設定されているために、3層ムフェトから発覚可能な状態にあると考えられます.

ムフェトの2→3層移動時のデフォルトのルーチンが仮に、行動1(移動)→行動2(体勢変更)→行動3(移動吸収)になっているとします.
実際にはもっと複雑なルーチンである可能性はありますが、このバグを説明する上では3行動の単純なモデルで十分です.​

まず、各行動の性質として​

・行動1中は強制的に未発覚状態になる​(→移動開始と同時にミニマップが白色になる)

・行動2は通常の行動と殆ど同じ性質をもち、この行動の長さは極短い​(→バグ発生のための入力猶予の短さ)

・行動3は未発覚状態でしか行われないようになっている​(→移動吸収をしない)

​であることが推測されます.

単純には、発覚バグは行動2中にテント暗転(座標ワープ)させて発覚可能状態にすることで生じると考えるのが自然です.​

発覚中ゆえに行動3はキャンセルされ、反応(威嚇行動や通常地脈吸収)に置き換わります.
これを裏付ける根拠のひとつとして、発覚バグを起こしたあとに乙ったり、隠れ身で待機したりなどして、もう一度完全未発覚状態を達成すると、ムフェトは唐突に行動3を開始します.

しかし、この単純な考えではソロでこのバグが発生しないことの説明がつきません.


ver.13.01.00のバグ修正

www.monsterhunter.com

この頃、自分はモンハンをやっていなかったので実際にはわかりませんが、ver.13.01.00で次のバグ修正がされています.

ムフェト・ジーヴァが最下層にいる際にテント内でSEやエフェクトが表示されるなど、複数の不具合を修正します。

これは上記の単純な考えのバグメカニズムの修正だったと仮定します.
おそらくカプコンはオフライン(ソロ)環境で上記単純バグへの修正をしたものの、同期というステップを踏むオンラインマルチプレイのことを考えて修正しきれなかったのではないかと思います.
例えば、行動2の間は発覚可能状態にあるという入力を各クライアントで遮断するという修正をしていたとして話を進めます(実際のルーチンの修正はもっと違うと思います).


モンハンにおける同期

wikiwiki.jp

オンラインマルチプレイにおいては、行動と行動の間に同期(ホストからの取得)が行われています.
発覚可能状態にあるというのはある種、攻撃のようなもので、発覚がその反応で怯みに対応していると考えるといいと思います.


ゲスト発覚

あるゲストで行動1中、行動2の直前に発覚可能状態の入力があったとします.
ゲスト側ではこの入力がムフェトにされても行動1の性質として未発覚状態にあるのでこの時点では発覚にはなりません.
しかし、ホストにはこのゲストが発覚可能状態にあるという情報が行動1中なので遮断されることなく送られます.
ゲストの行動1入力開始時刻からゲストのアップロード速度とホストのダウンロード速度を合わせたときにホスト側で行動2中に収まった場合、遮断されない発覚可能状態の入力が行動2に対して行われるので次の行動は行動3ではなく反応になります.これによってマルチ(ゲスト)でのみ発生し、ソロでは発生しないことの説明がつきます.

これと似たようなものにクラッチ延長延長があります.ゲストの送信ラグとホストの受信ラグが大きいとします.
モンスターがクラッチ怯みになったときにラグのないホストあるいはラグの小さい別ゲストが延長をするのをラグいゲストが観測する前に、そのラグいゲストが延長します.
そうすると何が起こるかというと、まずホスト視点でラグなしで延長が行われますが、次いでラグゲストによる2回目のクラッチ延長が行われます.特にラグが大きいと次の行動(ダウンであっても)をキャンセルしてでもクラッチ延長が発生します.ラグいゲスト側で延長するというものが遮断されずにホストに送られるのでホスト側で2回目の延長が起きるというわけで、ゲスト発覚の仕組みと根本は同じです.


2層発覚バグ

3層と同様に2層でも移動吸収なしの発覚バグはあります.こちらはマルチプレイである必要はなく、ソロでも可能です.

タイムラグ

ツタ罠落石後の枯渇吸収の直前に徹甲榴弾、斬裂弾、起爆竜弾、回線のラグと自傷による乙、モドリ玉などを組み合わせて、キャンプで未発覚状態中に攻撃をしていることを成立させ、BGMが再びなり始めるという状況をうまいことつくりあげます.これが再現できるようになったら、BGMが再びなるまえに、隠れ身の装衣、テントを利用して潜伏します.発覚されてはだめです.これにより、おそらくキョロキョロかなにかの行動が追加され、ムフェトが2層に到着すると移動吸収をせずにエリア奥のほうへ向かって走っているという状態になります.

グリッチとしての応用

3層威嚇スタート

2層移動条件はHP70%未満で、ギリギリで移動すると3層開始HPは移動吸収をする場合には最悪85%程にもなりますが、移動吸収をさせずに威嚇させておくことで41%~69%開始にできます.
また臨界までの行動カウント開始が早まるので臨界速度も速くなりやすいです.

3層キャンプ吸収

2層移動時にHP40%未満にしておいてテント発覚すると、3層の吸収条件を満たしているのでテント~キャンプにいる間に通常のHP+35%の地脈吸収を行わせることができます.
これを上手いこと活用すれば3層での吸収回数を実質1回減らすことも可能になります(2回は1HP吸収2回と乗り龍封などが必要).
youtu.be


2層威嚇スタート

1層移動条件はHP90%未満かツタ罠後に落石ダウンをとることです.ツタ罠落石の後は100%移動もできるので威嚇スタートの恩恵はほぼないですが、90%未満移動などの場合は2層開始HPを100%ではなく90%未満にすることができます(この間の毒も有効).

2層即吸収

例えば1層の地脈エネルギーが枯渇した状態でスタートした場合、1層でHP50%未満にして移動させると2層で吸収条件を満たしているので発覚後すぐに地脈吸収開始、あるいは2層も枯渇している場合は即3層への移動が可能です.