「超即死」の編集履歴(バックアップ)一覧はこちら
超即死 - (2008/12/22 (月) 13:45:15) の最新版との変更点
追加された行は緑色になります。
削除された行は赤色になります。
通常はステコン数が512を超えたステートを実行すると、「OverMAXController」のエラーメッセージによりMUGENが強制終了する
しかしReversalDefでそのステートに移動した場合には強制終了せずその代わりに死亡フラグが立つ
またこの死亡フラグはAssertSpecialのnokoフラグを無視する
nokoを無視できるほど強力な死亡フラグ、だから超即死(多分)
注意点としてはある程度以上数値が大きいPauseTimeが必要なこと
またP2GetP1State=0が設定されたReversalDefを利用し、相手を相手自身の超即死用ステートに飛ばした場合もこれは成立する(即死返し)
ちなみにReversalDefのPauseTimeを膨大な値に設定すると凍結当て身になる
超即死
通常はステコン数が512を超えたステートを実行すると、「OverMAXController」のエラーメッセージによりMUGENが強制終了する
しかしReversalDefでそのステートに移動した場合には強制終了せずその代わりに死亡フラグが立つ
またこの死亡フラグはAssertSpecialのnokoフラグを無視する
nokoを無視できるほど強力な死亡フラグ、だから超即死(多分)
注意点としてはある程度以上数値が大きいPauseTimeが必要なこと
またP2GetP1State=0が設定されたReversalDefを利用し、相手を相手自身の超即死用ステートに飛ばした場合もこれは成立する(即死返し)
ちなみにReversalDefのPauseTimeを膨大な値に設定すると凍結当て身になる
搭載が簡単でかなり強力なため多くのキャラに使われている
:
:
:
詳細な原理としては、HitPauseTimeを付加された状態でステコンの数が512を超えるステートを読み込んだ場合はMUGENが落ちず、
自身のステコンバッファ以降を書き換えてしまうバッファオーバーフローが原因である。
落ちない理由は、512エラーの判定が行われるのが!timeの時のみのため。
よって凍結中であればtimeは-1となり、エラーは検出されない。
MUGENの変数は全て4バイトであり、1ステート毎に1バイト割り当てられている。
IgnoreHitPause=1が設定されたステートは実行され、実行されたステートに対応したアドレスから値が-1される。
(値によっては例外あり、0より小さくはならない)
これによってaliveの値00000001(16進数)が00000000となり死亡する。
SelfStateやChangeStateに関しては別の挙動をし、SelfStateにより他のステートに移動すると、対応したアドレス値が01となる。
また、凍結中は一度実行したSelfState系ステコンは一回実行されない。
実際に書き換えられる変数は多岐にわたる。
書き換えが簡単なものは自身のAliveやHitPauseTime、StateType・MoveType(1,2,3に限らない)など。
自身のAliveを自在に0から1へと書き換えられるため、条件付きでの蘇生も可能となった。
現在では10万を超える膨大な数のステコンを利用し、P1以降の変数領域をも書き換えられることが判明している。
OSの種類によっては2万足らずでも可能。
→[[直死]]