約 2,336,174 件
https://w.atwiki.jp/mugencns/pages/38.html
■常時監視ステート -1番、-2番、-3番のステートのこと。 常時監視ステートの性質と分類 常時監視ステートはそのキャラのステート読み込みの最初に読み込む。 読み込む順番は「他のキャラ→ -3 → -2 → -1 → 番号ステート →他のキャラ」の順番。 -3、-1は「ステートを奪われている状態」では読み込まない。 -2はステートが奪われている状態でも読み込む、本当の常時監視。-3-1は準常時監視。 主な用途 -1 基本File-/Cmdファイルに書かれているCommand受付用ステート -2 特殊ゲージの処理など必ず処理させ続けたい特殊システム管理ステート -3 番号ステート処理の補助を行うためのステート処理補助ステート とは言え他にも使い道があるため、これらの限りではない。 -1と-3は処理の番号以外にも違いがある。後述。 ※こちらはSC-/Helperの方でも解説する SC-/HelperのHelperTypeとKeyCtrl HelperのオプションのHelperTypeとKeyCtrlを設定すると常時監視ステートを読み込む様になる。 HelperType=Playerにすると擬似的なプレイヤーキャラとして扱われ、-3、-2の常時監視ステートを読み込むようになる。HelperType=Normal(省略時もNormal)の場合は-3、-2ステートは読み込まない。 KeyCtrl=1にするとCommandを認識するようになり、-1ステートを読み込むようになる。KeyCtrl=0(省略時も0)の場合は-1ステートは読み込まず、Commandも認識しない。 Commandを認識させて処理するHelperのみKeyCtrl=1を用いる。 ■Lv1-補足注意点 待機ステートへ戻った時点での行動について 順番上通常動作のできない行動が終わりCtrl=1に戻った時点では行動できない。通常行動を管理する-1ステートの後、番号ステート中にCtrl他が戻るため 待機状態に戻っても-1ステートを読み込み直すわけではない為、基本的に戻ったフレームでは通常行動できない。 行動させたい場合は、戻す待機ステートに行動を始動する記述を書かなければならない。なお通常できずAIにのみやらせるといったことは性能改変のAIになるので要注意。 HelperにCommandを認識させたい場合 SC-/Helperのページを参照 ■Lv3-細かいこと +ステート奪われ確認 ステートの奪われていることの認識 [State -3, gametime];-3ステートへ置く Type=null Trigger1 = var(50) = Gametime ignorehitpause=1 [State -2, gametime];-2ステートへ置く Type=varset Trigger1 = var(50) != Gametime var(50) = -1 ignorehitpause=1 ;Var(50)=-1でステート奪われ状態の認識。
https://w.atwiki.jp/ds2ds3ds96etc/pages/59.html
ステートジャガー はじめの一頭 ■ ステートジャガー×タケノマジック └ ビューティタムラ
https://w.atwiki.jp/mugencns/pages/17.html
Commonステート ※解説修正情報※ ●2015-10-08:演出用ステート移動の文言を修正。 ●2014-12-04:ダウン時の防御上昇について修正。!Timeのフレーム終了時点で発生。 ●2014-04-13:ダッシュからの屈み移行での速度について ●2014-03-25:Ctrlとガードについて追記 ●2013-02-08:5150番の表記が間違っていたのを修正 ●2013-01-27:5150番、死亡ステートについて追記 ●2013-01-13:140番のガード持続について追記 再 再・多分確定 Common1.cnsのCommonステートについてのページです。 ステートの基本については割愛 ページ内検索では「StateNo=番号」で目的のステートを検索。 方針メモ 頑張ってリストアップしてまとめたい Commonステートの基本 汎用ステート。全てのキャラで存在していないといけないステート。 File-/DefファイルのstcommonがCommon1.cnsの場合、MUGENのData内のファイルを使用する。キャラ固有のCommonステートを作成する際は、Common1.cns以外のファイル名にする必要がある。 StCommonのステート記述としての優先度は低いstファイル側にStCommonと同じステート番号が無ければStCommonのステートを使用する。 stファイル側で同じ番号のステートがあればその番号のStCommonのステートは読み込まない。 分類予定表 基本動作 StateNo 120 ガード動作 StateNo=[120,155] 特殊動作 (StateNo=[160,199])||StateNo=5500||StateNo=5900 やられ動作 StateNo=[5000,5119] 起き上がり・リカバリー動作 StateNo=5120||StateNo=[5200,5299] 死亡ステート StateNo=5150 !Timeは「Time=0」のこと。Common内では大体Time=0表記。 ★Persistent=0の記述は該当する説明冒頭に★を。Persistent=0の場合、そのステート内にいる最中は1度しか処理しない。 ステートを移動した後なら、再度一回のみ処理を行う。 基本動作 +■Ctrlと基本動作について ■Ctrlと基本動作について キャラがCtrl=1の場合、方向キーを入れることでMUGEN側が自動でステートの変更を行う。この自動ステート移動はPause,SuperPauseで動けない最中でも番号ステートの番号のみ変更されている。 StateType=S(立ち)↓でStateNo=10(屈み移行)へ 加えてVel X(横速度)を0にする。※StateNo=100(前ダッシュ)からの屈み移行では速度は変化しない。 ←か→でStateNo=20(歩き)へ StateNo=20の場合はステートを維持。StateNo=20の場合、←か→方向キーを放すとStateNo=0へ 同時押しでも可。 ガードが可能な場合は後ろ歩きへ移動しない。 ↑でStateNo=40(ジャンプ始動)へ StateType=C(屈み)↓でステートを維持 ↓以外でStateNo=12(立ち上がり)へ StateType=A(空中)↑で空中ジャンプが可能な場合、StateNo=45(空中ジャンプ)へ InGuardDist movetype!=Aで、Noguardが無い場合後ろへ方向キーを入れると、StateNo=120(ガード始動)へ 後ろへ方向キーを入れた状態で攻撃が命中した場合ガードになる。 ガードステート内ではガード始動へ移らない。 これらのステート移行処理は基本フレームの開始時に行われる。 (攻撃が命中してガードになる処理を除く。) Lv1-補足・注意点 補足 立ちステートで相手が後ろに回った場合、Anim=5になって振り向く。 屈みステートも同様で、相手が後ろだと、Anim=6になって振り向く。 AssertSpecialのNo○○が発生した次のフレームでは該当する自動移行処理が行われない。ガード系 NoStandGuard NoCrouchGuard NoAirGuard NoAutoTurn(振り向き) NoWalk(歩き) AI制作時の注意点 AIで用いるChangeStateは、AssertSpecialの影響を受けないため条件を追加する必要がある。 MUGEN側のAIが入っていると勝手に動いてしまい、コンボなどを失敗することもある。 空中ジャンプの回数管理ができないため、管理したい場合、特別な仕様にする必要がある。 AIにしゃがみをさせようとするとすぐに立ち上がろうとしてしまい、うまくしゃがみを維持できない。 +Lv2-AI用・行動抑制記述 AI用・行動抑制記述 行動を抑制させる簡易記述 [State -1, Auto Moving Cancel];自動行動抑制、この記述をAIの最後尾に記述する Type = ChangeState Value = 0 ;立ちに戻る TriggerAll = *AI起動条件* ;AI条件を入れないと手操作でも動けなくなる。 TriggerAll = !Time Ctrl;MUGEN側でステートを変更した。 Trigger1 = StateNo = 10 ;屈み Trigger2 = StateNo = 20 ;歩き Trigger3 = StateNo = 40 ;ジャンプ ;なおこれだけだと不自然に立ち状態になることもあるので調整すること +Lv3-AI用・AIに任意の空中ジャンプをさせるために AI用・AIに任意の空中ジャンプをさせるために ChangeStateを使った空中ジャンプは空中ジャンプの回数制限に引っかからない。 回数制限をしAIに任意の空中ジャンプをさせるには CNSファイルにある[Movement]のairjump.numを0に設定して MUGEN側で空中ジャンプをできないようにしておき、 ChangeStateとVarを利用して空中ジャンプをさせるようにする必要がある。 +AI用ジャンプ記述例 ;使用Var Var(*AirJump用Var*) Var(*AIフラグ*) ■本体に対応させる記述 [State -1, Air Jump];手操作側のジャンプ Type = ChangeState Value = 45 + ( Var(*AirJump用Var*) = (1+Var(*AirJump用Var*)) )*0;ジャンプ回数を加算 TriggerAll = !Var(*AIフラグ*) ;AIフラグ無し TriggerAll = StateType = A Ctrl Pos Y -1*Const(Movement.AirJump.Height);前提条件 TriggerAll =(Var(*AirJump用Var*) 1073741823) *AirJump.Num* ;ジャンプ回数制限 TriggerAll =(Var(*AirJump用Var*) 1073741824)= 0 ;上レバー制限 Trigger1 = Command = "holdup" ;これで設定可能なジャンプの最大回数は1073741823回まで。それは準無限ジャンプです。 [State -1, Air Jump Not Holdup];一度レバーを上以外にしなければいけない。 Type = Null Trigger1 = Command = "holdup" Trigger1 = 1|| Var(*AirJump用Var*) = (Var(*AirJump用Var*)|1073741824) Trigger2 = StateType = A Trigger2 = Command != "holdup" Trigger2 = 1|| Var(*AirJump用Var*) =((Var(*AirJump用Var*)|1073741824)-1073741824) [State -1, Air Jump Num Reset];回数制限リセット Type = Null Trigger1 = StateType != A Trigger1 = 1|| Var(*AirJump用Var*) = (Var(*AirJump用Var*) 1073741824);リセット ■AI側の記述 [State -1, AI Air Jump] Type = ChangeState Value = 45 + ( Var(*AirJump用Var*) = (1+Var(*AirJump用Var*)) )*0;ジャンプ回数を加算 TriggerAll = Var(*AIフラグ*) ;AIフラグあり TriggerAll = StateType = A Ctrl Pos Y -1*Const(Movement.AirJump.Height);前提条件 TriggerAll =(Var(*AirJump用Var*) 1073741823) *AirJump.Num* ;ジャンプ回数制限 Trigger1 = **** ;AI用の条件 引用元:ADIのMUGENメモ 基本動作 +■StateNo=0【ニュートラル・立ち】 ■StateNo=0 【ニュートラル・立ち】 立ちステート。普通のキャラは何もしていないとこのステートで待機する。 なお試合開始時は一斉にCtrl=1,StateNo=0になって試合を始める。 内容,記述 冒頭オプションStateType=S Physics=S アニメを立ちにする振り向きに対応 !Timeで縦速度を0にする 横速度が遅いorTime=4で横速度を0にする もし死んでいたら5050へ移行する Lv1-補足・注意点 注意点 このステートそのものにはCtrl=1にする記述が無い。ステートを立ちへ戻す場合、ChangeStateなどにCtrl=1を忘れずに。 このステートにCtrl=1を置くのはやめておいた方が良い。フライングの原因になる。 +Lv2-細かいバグ回避 Lv2-細かいバグ回避 分身を消す このステートにDestroySelfを置き、分身してしまったキャラを最終的に消す手法がある。 +■StateNo=10【屈み移行】 ■StateNo=10 【屈み移行】 立ちステートから屈みステートへ移行する。 StateType=S Ctrl=1から方向キー↓でこのステートへ飛ぶ。 内容,記述 冒頭オプションStateType=C Psysics=C Anim=10 !Timeで横速度を減らす※Ctrl=1の操作で屈みへ移行しようとすると横速度は0になる。 ※例外的にStateNo=100(前ダッシュ)からの屈み移行では速度は変化しない。 アニメが終わり次第、stateNo=11(屈み待機)へ +■StateNo=11【屈み待機】 ■StateNo=11 【屈み待機】 屈みステート 内容,記述 冒頭オプションStateType=C Physics=C Anim=11 振り向きアニメ時、アニメが終わったら屈みアニメに戻す。 +■StateNo=12【立ち上がり】 ■StateNo=12 【立ち上がり】 立ち上がりステート 内容,記述 冒頭オプションStateType=S Physics=S Anim=12 アニメが終わったらStateNo=(立ち)へ +■StateNo=20【歩き】 ■StateNo=20 【歩き】 歩行ステート 内容,記述 冒頭オプションStateType=S Physics=S 速度を方向キー前側ならConst()の前歩き速度に設定 速度を方向キー後ろ側ならConst()の後ろ歩き速度に設定 速度が前で前歩きアニメでなければ前歩きアニメに振り向きアニメ中の場合アニメ終了まで待つ 速度が後ろで後ろ歩きアニメでなければ後ろ歩きアニメに。振り向きアニメ中の場合アニメ終了まで待つ Lv1-補足・注意点 注意点 ステートの基本処理は前後の方向キーが前提になっている。 InGuardDist=1でAssertSpecialのNoStandGuardが無い場合、方向キー後ろでStateNo=120(ガード始動)へ飛ぶ。 AI制作時の注意点 内容そのままにStateNo=20へ飛ばしても歩くとは限らないし方向も選べない。 調整をしないと本来ガード始動へ飛ぶ時でも後ろ歩きができてしまう。 後ろ歩きをさせてもガードしてくれるとは限らない。 AssertSpecialのNoWalkはChangeStateに影響しなため、条件を入れないと歩けない時に歩けてしまう。 AssertSpecialのNoWalkはトリガー情報に存在しないため、条件はStateNo!=xxxなどで入れることになる。 +Lv3-AI用・歩き処理 AI用・歩き処理 いくつか方法はあるがAI用にCommand条件の代わりにAI用の条件を入れるのが基本。 ;前歩き側 Trigger1 = Command = "holdfwd" !Var(*AIフラグ*) Trigger2 = var(*AIフラグ*) P2BodyDist X 20 ;AI用 ;後ろ歩き側 Trigger1 = Command = "holdfwd" !Var(*AIフラグ*) Trigger2 = var(*AIフラグ*) P2BodyDist X 0 ;AI用 VelSetのステートコントローラー自体を複製してAI用の記述を入れてもいい。 +■StateNo=40【ジャンプ始動】 ■StateNo=40 【ジャンプ始動】 ジャンプ始動ステート 内容,記述 冒頭オプションStateType=S Physics=S Ctrl=0 Anim=40 !TimeでSysvar(1)を0にする 方向キー前ならSysvar(1)を1にする 方向キー後ろならSysvar(1)を-1にする アニメ終了時VelsetをするX速度はSysvar(1)に応じて速度を変更するSysvar(1)=0なら上ジャンプ速度のConst() Sysvar(1)=1なら前ジャンプ速度のConst() Sysvar(1)=-1なら後ろジャンプ速度のConst() Y速度はConst()のジャンプ速度に。 アニメ終了時かつPrevStaateNo=100(直前がダッシュステート)でSysvar(1)=1の場合VelSetでX速度にダッシュジャンプ速度のConst()を設定 アニメ終了時、Ctrl=1にしてStateNo=50(ジャンプ中)へ移動 Lv1-補足・注意点 注意点 処理にはSysvar(1)が使われている。 Sysvar(1)=0にする処理は!Timeのみ。その後前後キーを入れた後放しても、前後にジャンプをする。 AI制作時の注意点 内容そのままにStateNo=40へ飛ばしても前後上どこへ飛ぶかは選べない。 +Lv3-AI用・ジャンプ方向選択 AI用・ジャンプ方向選択 いくつか方法はあるがAI用にCommand条件の代わりにAI用の条件を入れるのが基本。 ;Sysvar(1)=1側 Trigger1 = Command = "holdfwd" !Var(*AIフラグ*) Trigger2 = var(*AIフラグ*) ( P2BodyDist X 60 || P2MoveType = H );AI用 ;Sysvar(1)=-1側 Trigger1 = Command = "holdfwd" !Var(*AIフラグ*) Trigger2 = var(*AIフラグ*) P2BodyDist X 30 ;AI用 Varsetのステートコントローラー自体を複製してAI用の記述を入れてもいい。 +■StateNo=45【空中ジャンプ始動】 ■StateNo=45 【空中ジャンプ始動】 ジャンプ始動ステート 内容,記述 冒頭オプションStateType=A Physics=N Ctrl=0 Velset=0,0 アニメ44番が存在するならアニメを44に変更。 アニメ44版が存在しないならアニメを41に変更。 以下通常のジャンプステートとほぼ同様。Const()は違うけど。 方向キー前ならSysvar(1)を1にする 方向キー後ろならSysvar(1)を-1にする Time=2でVelsetをするX速度はSysvar(1)に応じて速度を変更するSysvar(1)=0なら上ジャンプ速度のConst() Sysvar(1)=1なら前ジャンプ速度のConst() Sysvar(1)=-1なら後ろジャンプ速度のConst() Y速度はConst()のジャンプ速度に。 Time=2でCtrl=1にしてStateNo=50(ジャンプ中)へ移動 Lv1-補足・注意点 基本的に地上ジャンプと同様。 注意点 処理にはSysvar(1)が使われている。 Sysvar(1)=0にする処理は!Timeのみ。その後前後キーを入れた後放しても、前後にジャンプをする。 AI制作時の注意点 内容そのままにStateNo=45へ飛ばしても前後上どこへ飛ぶかは選べない。 +■StateNo=50【ジャンプ中】 ■StateNo=50 【ジャンプ中】 ジャンプ中ステート 内容,記述 冒頭オプションStateType=A Physics=A Sysvar(1)を0にする !Timeでアニメを変更する。横速度がなければ41番 横速度が前進なら42番 上記以外であれば43番 ★上昇の勢いを失い現在のアニメ番号+3番のアニメがあれば現在のアニメ番号+3番に変更する。41~43+3番=下降モーションアニメ この処理は一度のみ +■StateNo=51【空中動作後】 ■StateNo=51 【空中動作後】 空中行動を終えた後用のステート 内容,記述 冒頭オプションStateType=A Shysics=A 処理無し Lv1-補足・注意点 補足 使い道は空中動作をした後にこのステートへ飛ばす用。 Ctrl=1にしてこのステートへ飛ばせば行動可能になる。 Ctrl=0のままであれば着地まで行動不可。 注意点 アニメを変更する記述がないため、適当なアニメに変更してこのステートへ飛ばす必要がある。 +■StateNo=52【着地】 ■StateNo=52 【着地】 着地ステート。 Physics=Aの状態でステート処理後の速度計算の後、地面に到達していた場合、 自動でこのステートへ飛ばされ、再度ステート読み込みを行う。 処理についてはVelのページを参照 ガード:このステートではCtrl=0でも手動ガード処理でのガードが可能。 ガード始動するわけではない。 内容,記述 冒頭オプションStateType=S Physics=S Ctrl=0 Anim=47 !Timeで縦速度を0に。 !Timeで座標を地面に。 Time=3でCtrl=1に。 アニメ終了時、Ctrl=1にしてStateNo=0(立ち)へ移動 Lv1-補足・注意点 注意点 Physics=Aの場合接地時に自動でこのステートへ飛ぶため 専用の着地ステートを作りたい場合はPhysics=Nにする必要がある。 このステートをPhysics=Aにすると永続のループが発生し処理が終わらずフリーズ状態に陥る ダッシュ 番号100未満の基本動作と異なり100~119にMUGEN側による自動移行処理は無い。 使用される際は-1ステートなどにChangeStateが記述されている。 +■StateNo=100【ダッシュ】 ■StateNo=100 【ダッシュ】 ラン型ダッシュステート 内容,記述 冒頭オプションStateType=S Physics=S Anim = 100 横速度をCnst()のダッシュ速度に AssertSpecialのNoWalk(歩き無し)指定 AssertSpecialのNoAutoTurn(自動振り向き無し)指定 方向キー前が離れた場合、StateNo=0へ移動 Lv1-補足・注意点 捕捉 ※StateNo=100(前ダッシュ)からのCtrl=1の屈み移行は速度が変化しない。 注意点 前方向キーが前提となっている。 AssertSpecialによりダッシュ状態を維持できるようにしている。 AI制作時の注意点 内容そのままにStateNo=100へ飛ばしても方向キーが入力されてないため維持できない。 それを解決してStateNo=100にのみ飛ばす記述にしてもCtrl=1のためジャンプや屈みで勝手に動く。 +Lv3-AI用・ダッシュ維持処理 基本的なラン型のダッシュを維持するためのもの。ステップや他の方式では異なるので注意。 AI用・ダッシュ維持処理 いくつか方法はあるがAI用にCommand条件の代わりにAI用の条件を入れるのが基本 Trigger1 = Command != "holdfwd" !Var(*AIフラグ*) Trigger2 = var(*AIフラグ*) ( P2BodyDist X 20 || RundState != 2) ;AI用 しかしこれだけではジャンプや屈みで動作を変更してしまうのでもう少し調整が必要 アニメの制御を変更する [State 100, changeanim];StateNo=100冒頭のAnim=100を削り、これを挿入する。 type = ChangeAnim Trigger1 = Anim != 100 ;ダッシュアニメでない value = 100 ;ダッシュアニメにする 勝手にダッシュ以外になった場合戻す 自動行動抑制と併用する場合はこちら側を上にする。 [State -1, Auto Moving Cancel - After Run];AI記述の最後尾に置く。 Type = ChangeState Value = 100 ;ダッシュに戻る TriggerAll = *AI起動条件* ;必須 TriggerAll = !Time Ctrl PrevStateNo = 100 ;勝手な動作認識 Trigger1 = StateNo = 10 ;屈み Trigger2 = StateNo = 40 ;ジャンプ Trigger3 = StateNo = 120;ガード※不要なら削除 +■StateNo=105【バックステップ】 ■StateNo=105 【バックステップ】 ステップ型ダッシュステート 例外的にPhysics=Aによる自動着地処理が行われないステート番号 内容,記述 冒頭オプションStateType=A Physics=A Anim=105 Ctrl=0 !Timeで速度をConst()のバックスッテプ用速度に。 Time=2でCtrl=1に。 着地時にChangeStateでStateNo=106へ移動 Lv1-補足・注意点 注意点 基本的に調整されていないキャラを探すほうが難しそうなほど調整されることが多い 例外的にPhysics=Aによる自動着地処理が行われないステート番号のためChangeStateは必須反対に言うと自動着地が機能していないため、着地処理用のChangeStateが機能している。 このChangeState記述を他のPhysics=Aのステートで行おうとすると自動着地の方が早く機能しない。 +■StateNo=106【バックステップ着地】 ■StateNo=106 【バックステップ着地】 ステップ型ダッシュの着地ステート 内容,記述 冒頭オプションStateType=S Physics=S Ctrl=0 Anim=47 !Timeで縦速度を0に。 !Timeで座標を地面に。 Time=2に土埃エフェクトを表示。 Time=7でCtrl=1にしてStateNo=0(立ち)へ移動 + ■StateNo=110 利用されていないステート ■StateNo=110 利用されていないステート Z軸用のステップ型ダッシュステート- 空中ダッシュのステートなどに書き換えても問題ない。 内容,記述 冒頭オプションStateType=S Physics=N !TimeでCtrl=0に。 !Timeでアニメを110に !Timeで30Fの間投げ技しか当たらないように。 !TimeでZ軸の速度を-7に。 Z軸の速度を毎フレーム*0.8する。 アニメの終わりの8F前にZ速度を0に。 アニメ終了時、Ctrl=1に。 アニメ終了時、StateNo=0へ移動。 + ■StateNo=115 利用されていないステート ■StateNo=115 利用されていないステート Z軸用のステップ型ダッシュステート+ 通常使われてないので書き換えても問題ない。 内容,記述 冒頭オプションStateType=S Physics=N !TimeでCtrl=0に。 !Timeでアニメを110に !Timeで30Fの間投げ技しか当たらないように。 !TimeでZ軸の速度を7に。 Z軸の速度を毎フレーム*0.8する。 アニメの終わりの8F前にZ速度を0に。 アニメ終了時、Ctrl=1に。 アニメ終了時、StateNo=0へ移動。 ガード動作 ガードの処理・注意点については該当ページ参照。 AIのガード制御についてはAI-/ガードのページつくってまとめよう。 注意点とかは共通のため専用ページにて解説。ここではステート処理のみ +■StateNo=120【ガード始動】 ■StateNo=120 【ガード始動】 ガード始動ステート ガードできる状態で方向キー後ろでこのステートへ飛ぶ。 内容,記述 冒頭オプションStateType=U Physics=U 状態を変更しない。 !TimeでStateTypeに合わせてアニメを変更。120,121(C),122(A) !TimeでStatetypeに合わせてPhysicsを設定×3 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに アニメ終了時、Statetypeに合わせてステート移動。130,131(C),132(A) 方向キー後ろが入力されていなければ140番ステートへ移動 InGuarddist(ガード可能判定)が無い場合も140番ステートへ移動 +■StateNo=130【立ちガード】 ■StateNo=130 【立ちガード】 立ちガードステート 内容,記述 冒頭オプションStateType=S Physics=S アニメが130番でなければ130番に。 方向キー↓が入力されているなら131番屈みガードへ移動。 方向キー後ろが入力されていなければ140番ステートへ移動 InGuarddist(ガード可能判定)が無い場合も140番ステートへ移動 +■StateNo=131【屈みガード】 ■StateNo=131 【屈みガード】 屈みガードステート 内容,記述 冒頭オプションStateType=C Physics=C アニメが131番でなければ131番に。 方向キー↓が入力されていなければ130番立ちガードへ移動。 方向キー後ろが入力されていなければ140番ステートへ移動 InGuarddist(ガード可能判定)が無い場合も140番ステートへ移動 +■StateNo=132【空中ガード】 ■StateNo=131 【空中ガード】 空中ガードステート 内容,記述 冒頭オプションStateType=A Physics=N アニメが132番でなければ132番に。 速度に通常の落下加速度を加算。 sysvar(0)を着地しているなら1に。Sysvar(0)で縦速度を0に Sysvar(0)で座標を地面に。 Sysvar(0)+方向キーが後ろ+ガード可能範囲内なら、130番へ Sysvar(0)+↑で130に行かなかったら52番へ 方向キー後ろが入力されていなければ140番ステートへ移動 InGuarddist(ガード可能判定)が無い場合も140番ステートへ移動 +■StateNo=140【ガード終了】 ■StateNo=140 【ガード終了】 ガード終了ステート 内容,記述 冒頭オプションStateType=U Physics=U Ctrl=1 !TimeでStateTypeに合わせてアニメを変更。140,141(C),142(A) !TimeでStatetypeに合わせてPhysicsを設定×3 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに ※以下、MUGEN内部で処理されている※140番ステートでの読み込み終了後、アニメとTimeの特定条件でステート移動 0(S),11(C),51(A)に移動し、再度番号ステートを読み込み直す。※この処理を経由すると他のあらゆるステートでガードできる模様。通常利用しないが。 基本的には気にしなくても良い。 140番からの自動ステート移動の条件 「 アニメの総表示時間(ループが始まるまで)の時間 = Time 」のもよう。ただし最後のElemが表示-1F(永続表示)の場合は、即時。 通常のAnimなら一巡表示し終わりループの開始する時点(=ループは見えない)で戻る。途中でChangeAnimした場合は、新しいループ地点までの時間-ここまでの時間<=140番にいる時間で戻る。 基本的には気にしなくても良い。 +■LvX-上記の処理検証の方法 140番自動ステート移動の処理検証方法140番ステートの!TimeでのChangeAnimを長めAnimに変更。(長い立ち動作とか) わかりやすくするため0番ステートではPrevStateNo=140で40番(ジャンプ)へ-ChangeStateさせる。 Aボタンで140番へ飛ばせるようにし、どのタイミングでステートが戻りジャンプするか確認する。 またTime=20などで別のAnim(30F以上)へChangeAnimするようにして再度確認。アニメ表示の途中(具体的には終わりの20F前)でジャンプするはず。l 最後に最後尾が-1F(永続表示)設定のAnimを利用し確認。即時ジャンプするはず。 デバッグ表示の3段目(アニメ総表示F)と4段目の右端(Time)が 3段目 =4段目になるタイミングで戻っている。最後が-1F表示の場合、総表示Fの数値が-1になるため、即時戻るようになっている。 Lv1-補足・注意点 注意点 自動ステート移動で飛んだ後、再度移動の条件を満たす状態で140へ戻されると永久ループが発生し、処理が終わらずフリーズ状態に陥る 自動ステート移動が起きる際、StateType=Lの場合フリーズする。無闇にいじらなければ良い。 +■StateNo=150【立ちガード/HitShake硬直】 ■StateNo=150 【立ちガード/HitShake硬直】 立ちガードステート・HitShake硬直中 このステートではノックバックはしない。 内容,記述 冒頭オプションStateType=S Movetype=H Physics=N velset=0,0 アニメを150番に。 HitShake硬直が終わったら151番、方向キー↓入れなら153番へ移動 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに 振動するゲームパッドを振動させるらしい。 +■StateNo=151【立ちガード/ノックバック】 ■StateNo=151 【立ちガード/ノックバック】 立ちガードステート・ノックバック 内容,記述 冒頭オプションStateType=S Movetype=H Physics=S Anim=150 攻撃に設定されていた速度を速度に反映(HitVelSet) ノックバックのスライド時間か、攻撃の硬直が終わったらX速度を0に。 Ctrl硬直時間が終わったらCtrl=1に 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに 攻撃の硬直が終わったら130番へ +■StateNo=152【屈みガード/HitShake硬直】 ■StateNo=152 【屈みガード/HitShake硬直】 屈みガードステート・HitShake硬直中 このステートではノックバックはしない。 内容,記述 冒頭オプションStateType=C Movetype=H Physics=N velset=0,0 アニメを151番に。 HitShake硬直が終わったら151番、方向キー↓入れなら153番へ移動 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに 振動するゲームパッドを振動させるらしい。 +■StateNo=153【屈みガード/ノックバック】 ■StateNo=153 【屈みガード/ノックバック】 屈みガードステート・ノックバック 内容,記述 冒頭オプションStateType=C Movetype=H Physics=C Anim=151 攻撃に設定されていた速度を速度に反映(HitVelSet) ノックバックのスライド時間か、攻撃の硬直が終わったらX速度を0に。 Ctrl硬直時間が終わったらCtrl=1に 立ち状態で方向キー↓が入力されてるならStatetype=C、屈みに 屈み状態で方向キー↓が入力されいないならStatetype=S、立ちに 攻撃の硬直が終わったら131番へ +■StateNo=154【空中ガード/HitShake硬直】 ■StateNo=154 【空中ガード/HitShake硬直】 空中ガードステート・HitShake硬直中 このステートではノックバックはしない。 内容,記述 冒頭オプションStateType=C Movetype=H Physics=N velset=0,0 アニメを152番に。 HitShake硬直が終わったら155番番へ移動 振動するゲームパッドを振動させるらしい。 +■StateNo=155【空中ガード/ノックバック】 ■StateNo=155 【空中ガード/ノックバック】 空中ガードステート/ノックバック 内容,記述 冒頭オプションStateType=A Movetype=H Physics=N Anim=152 攻撃に設定されていた速度を速度に反映(HitVelSet) 速度に通常の落下加速度を加算。 Ctrl硬直時間が終わったらCtrl=1に sysvar(0)を着地しているなら1に。Sysvar(0)で縦速度を0に Sysvar(0)で座標を地面に。 Sysvar(0)+方向キーが後ろ+ガード可能範囲内なら、130番へ Sysvar(0)+↑で130に行かなかったら52番へ 特殊動作 ※170(負け)・180(勝ち)のステートはサバイバルモードでのリザルトでも使われている +■勝利ポーズ・試合終了の演出用ステート移動について ■勝利ポーズ・試合後の演出用ステート移動について 試合が終了した場合、勝ち負けに応じて演出用のステート移動が発生する。 170(負け),175(引き分け),180(勝ち)と設定されているのだが、 180番ステートはCommon1.cnsに存在しない。 各自でキャラに専用の勝利演出ステートを作る必要がある。 試合終了後の演出用のステート移動について※少々検証不足かも 試合終了後の演出用のステート移動はT-/RoundStateが4で、設定分の時間経過が条件。RoundState=4での待機時間はfight.defのover.wintime設定(通常45F)。 KOなどによって試合が決まった直後はRoundState=3になるのだが、そこからRoundState=4になるには条件がある。 移行条件は、StateNo!=5150(死亡ステート以外)のプレイヤーキャラ全員がStatetype=S MoveType=I Ctrl=1であること。ただし移行の判定はRoundState=3になってすぐに行われるのではなくfight.defの設定と試合状況で決められた時間が過ぎた後に移行判定が入る。 RoundState=3→4の移行は1Fでも全体の条件が揃えば行われる。 上記の条件がしばらく適合しない場合も強制的にRoundState=4へ移行する。 RoundState=4で設定分時間経過した時点で、生存していれば他の状態に関わらず演出ステートへ移動する。 そのため速やかに円滑に試合を終わらせるには、自分を上記基移行条件へ移し、死んでいるならStateNo=5150で待機させる必要がある。ステート奪取からの特殊KO演出のために相手へステートを返さない場合、死亡待機は5150で管理すること。 演出の移動先(条件はAlive=1。死んでいる場合は移動しない。5150でも生きていれば移動。)敗北時:170 引き分け時:175 勝利時:180 ※Commonに存在しないステートのため各自用意する必要がある。 試合が円滑に終了しない問題 条件に適合しないステートに留まり続けると通常のRoundState=3→4の移行が行われず、強制的にroundState=4になるまで待機し続けてしまい、円滑な試合終了処理が行われない。 そのため試合が終了するタイミングにはRoundStateが移行するステートで待機すること通常は基本の立ちステートで移行を待つことになる。 技の後の体勢で試合終了まで維持させたい場合、単にCtrl=0で待機させるのはNG。Varなどでフラグ管理をし、Ctrl=1で状態を維持するようにするのが望ましい。 ちなみに5150に入ればCtrl=0のまま演出ステート移動まで待機できるため上手く管理できればCtrl=1で待機するより確実 技の演出で相手のステートを奪って特殊な死亡演出で待機させたい場合は、StateNo=5150で待機させるように記述を調整してそこで待機させること。 +■StateNo=170【敗北演出】 ■StateNo=170 【敗北演出】 負けアニメ表示 内容,記述 冒頭オプションStateType=S Ctrl=0 Velset=0,0 Anim=170 全属性無敵にする。 +■StateNo=175【引き分け演出】 ■StateNo=175 【引き分け演出】 引き分けアニメ表示 内容,記述 冒頭オプションStateType=S Ctrl=0 Velset=0,0 !Timeでアニメ175番が存在しないならアニメを170に変更。 !Timeでアニメを175場へ変更。存在しない場合、エラーが流れて170番のまま。 全属性無敵にする。 ■StateNo=180【勝利演出】※Common1.cnsには記述されていない。 +■StateNo=190【イントロ開始】 ■StateNo=190 【イントロ開始】 イントロアニメへ変更 内容,記述 冒頭オプションStateType=S Ctrl=0 Velset=0,0 アニメ190番が存在するならアニメを190に変更。 !Timeで191番へ移動 +■StateNo=191【イントロ用】 ■StateNo=191 【イントロ用】 イントロ用。ただしCommonのままだと即時立ちへ移動。 内容,記述 冒頭オプションStateType=S Ctrl=0 !Timeで0番へ移動 ※Ctrl=0のまま +■StateNo=5500【コンテニュー画面】 ■StateNo=5500 【コンテニュー画面】 コンテニュー? での表示。 内容,記述 冒頭オプションStateType=S Ctrl=0 Anim=5300 Velset=0,0 !Timeでアニメ5500番が存在するならアニメを5500に変更。 +■StateNo=5900【導入】 ■StateNo=5900 【導入】 試合画面に入った時点でのステート。 内容,記述 冒頭オプションStateType=S 自分が初めてのラウンドの場合var,fvarを全て0にリセットする。 始めのラウンドの場合190番ステートへ移動 VarはPersistindexの分ラウンドを持ち越されるが これはチーム戦の場合も同様、のはず。そのためのVarのリセット。 やられ動作 T-/GetHitVar()を多用している。攻撃を受けた時点でCtrl=0に。 +■くらいステートの判別について+α ■くらいステートの判別について+α 状態・攻撃によって移行するステートが異なる。 Sなら5000へ、CでForcestand=0なら5010へ、1なら5000へ。 (※Forcestandは省略時、基本0、Y吹っ飛び速度が0以外なら1になる) Aなら5020へ、LでY座標が0なら5080へ、LでY座標0以外なら5020へ。 またGround.Type=Tripの攻撃はStatetypeに関係なく5070へ飛ばす? なお空中吹っ飛びでは「地面へ到達」の条件がいくつかあるが、 ステートやアニメによって地面の条件が異なる。 縦速度は一律Vel Y 0=落下中が条件になっている。 余談・くらいCommonのVeladd なお空中くらい中の重力加速度加算はVelAddにより行われている、のだが、 ChangeStateの前に常時記述で置かれているため、 ChangeStateした時点では加算が重複してしまう処理になってしまっている。 綿密に作られたくらいCommonで大失敗している部分。 (Gracity→veladdへ差し替えた際に置き場所を変え忘れたっぽい記述だが。) コレにより空中吹っ飛びに対する縦軸の速度計算にズレが生じてしまう。 +■ダウン追撃の防御力上昇について+起き上がりについて ■ダウン追撃の防御力上昇について+起き上がりについて ダウン追撃への防御力上昇は5100と5070のフレーム終了時点(?)で発生する。 そのフレームに待機して1フレーム経過すると、防御力の補正係数が変動して防御力が上昇する。 重複するため何度もバウンドすれば、バウンドをする度にどんどん防御力は増える。 それらに待機しない場合、またそれらを経由しない場合もダウン時の防御力は増えない。 ただしSC-/DefenceMulを実行した場合、DefenceMul値が上書きされるためダウン上昇分は無くなる。 防御力の補正係数、DefenceMul値について詳しくはSC-/DefenceMulSetを参照。 起き上がり5120番への移動 起き上がりは5110番で倒れ待機時間が0になった場合自動で移動する。 倒れ時間はCNSのLiedown.timeの値を基本値に、STatetype!=Lリセット? Statetype=Lになった時点から1操作毎に、残り時間が3/4される。 1操作は入力に加え、放す方も含まれる。押して放せば2操作分。 +■StateNo=5000【立ちくらい/ヒットシェイク】 ■StateNo=5000 【立ちくらい/ヒットシェイク】 立ち状態からのくらい始動ステート。 屈みもforcestand=1の場合はこっち。←省略+Y吹っ飛び速度が0以外だと自動で1に。 内容,記述 冒頭オプションStateType=S MoveType=H Physycis=N Velset=0,0 !TimeでGetHitVar(AnimType)が[3,5]以外の場合、getHitVar(GroundType)=1なら5000、それ以外で5010番台のアニメに。 そこにGetHitVar(AnimType)の分を加算。0~2を使用 !TimeでGetHitVar(AnimType)が[3,5]なら5030番アニメに !TimeでGetHitVar(AnimType)が[4,5]で専用アニメがあるならそれに変更。それぞれ5051,5052が対応する。 Time 0でアニメを現在のアニメ番号に変更し固定。 !Timeで吹っ飛び縦速度が0以外か、倒れ属性の場合、StateType=Aに。また縦座標が0以外であっても、Statetype=Aに変更。 HitSHakeOverかつ吹っ飛び縦速度が0で倒れ属性も無しなら5001番へ移動。それ以外の場合5030番へ移動 ★振動するゲームパッドを振動させるらしい。この処理は一度しか実行しない。 +■StateNo=5001【立ちくらい/ヒットバック】 ■StateNo=5001 【立ちくらい/ヒットバック】 速度を決定する立ちくらいステート。 内容,記述 冒頭オプションStateType=S MoveType=H Physycis=S !TimeでHitVelSetのXを適応。 アニメが終了したらアニメを変更する。5005+GetHitVar(AnimType)+(GetHitVar(GroundType)=2)*10なお3(back)は地上だと制限されて2(hard)扱いになる模様? しかし4(up)は制限されないため、存在しないAnimを指定してしまう。 5(diag-up)の場合、5010番を表示する。 TimeがGetHitVar(Slidetime)以上になった場合、毎フレーム4割減速。 HitOverで速度を0に HitOverで防御力の倍率を1に HitOVerで0へCtrl=1にして移動 +■StateNo=5010【屈みくらい/ヒットシェイク】 ■StateNo=5010 【屈みくらい/ヒットシェイク】 屈み状態からのくらい始動ステート。 forcestand=1の場合は立ち用。←省略+Y吹っ飛び速度が0以外だと自動で1に。 内容,記述 冒頭オプションStateType=C MoveType=H Physycis=N Velset=0,0 !TimeでGetHitVar(AnimType)が[3,5]以外の場合、5020にGetHitVar(AnimType)の分を加算したアニメを使用。 !TimeでGetHitVar(AnimType)が[3,5]なら5030番アニメに !TimeでGetHitVar(AnimType)が[4,5]で専用アニメがあるならそれに変更。それぞれ5051,5052が対応する。 ※あとは立ちくらいとほぼ同様、HitShakeOverからの移動が5011番なだけ。 Time 0でアニメを現在のアニメ番号に変更し固定。 !Timeで吹っ飛び縦速度が0以外か、倒れ属性の場合、StateType=Aに。また縦座標が0以外であっても、Statetype=Aに変更。 HitSHakeOverかつ吹っ飛び縦速度が0で倒れ属性も無しなら5011番へ移動。それ以外の場合5030番へ移動 ★振動するゲームパッドを振動させるらしい。この処理は一度しか実行しない。 +■StateNo=5011【屈みくらい/ヒットバック】 ■StateNo=5011 【屈みくらい/ヒットバック】 速度を決定する屈みくらいステート。 内容,記述 冒頭オプションStateType=C MoveType=H Physycis=C !TimeでHitVelSetのXを適応。 アニメが終了したらアニメを変更する。5025+GetHitVar(AnimType)のアニメを使用立ち同様back(3)はhard(2)になるが、up(4)はそのまま適応されエラー。 diag-up(5)の場合は5030番アニメを使用。ちなみに直前も5030アニメ。 TimeがGetHitVar(Slidetime)以上になった場合、毎フレーム4割減速。 HitOverで速度を0に HitOverで防御力の倍率を1に HitOVerで11へCtrl=1にして移動 +■StateNo=5020【空中くらい/ヒットシェイク】 ■StateNo=5020 【空中くらい/ヒットシェイク】 空中状態からのくらいステート。 倒れ状態でもY座標が0でない場合(主にバウンド中)もここへ飛ぶ。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N Velset=0,0 !TimeでGetHitVar(AnimType)が[3,5]以外の場合、getHitVar(GroundType)=1なら5000、それ以外で5010番台のアニメに。 そこにGetHitVar(AnimType)の分を加算。0~2を使用 !TimeでGetHitVar(AnimType)が[3,5]なら5030番アニメに !TimeでGetHitVar(AnimType)が[4,5]で専用アニメがあるならそれに変更。それぞれ5051,5052が対応する。 Time 0でアニメを現在のアニメ番号に変更し固定。 HitSHakeOverで5030番へ移動 ★振動するゲームパッドを振動させるらしい。この処理は一度しか実行しない。 +■StateNo=5030【空中くらい/ヒットバック・ふっとび開始】 ■StateNo=5030 【空中くらい/ヒットバック・ふっとび居開始】 速度を決定する空中くらいステート。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N 毎フレームY速度にGetHitVar(Yaccel)を加算 !TimeでHitVelSetのXYを適応。 倒れ属性攻撃でないなら以下のいずれかの条件で5040へ移動。HitOVer 地面へ到達:Ve Y 0 Pos Y = 10 倒れ属性攻撃の場合は上記の条件で5050へ移動。↑と同じの条件いずれか アニメが終わった場合、5035へ移動。 +■StateNo=5035【空中くらい/ふっとび経過】 ■StateNo=5035 【空中くらい/ふっとび経過】 ふっとび最中ステート1 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N !Timeと以下のいずれかの条件でアニメを5035番へ変更5035番がある 現在5051~5059番(特殊ふっとびアニメ)でない。 現在5090番(倒れ浮きくらいアニメ)でない。 毎フレームY速度にGetHitVar(Yaccel)を加算 倒れ属性でなければ以下のいずれかの条件で5040へ移動HitOVer アニメ終了 地面へ到達:Ve Y 0 Pos Y = 10 !Timeでアニメが5035でない 倒れ属性攻撃の場合は上記のいずれかの条件で5050へ移動。↑と同じの条件のいずれか +■StateNo=5040【空中くらい/ふっとび・戻り】 ■StateNo=5040 【空中くらい/ふっとび・戻り】 自動体勢立て直し。倒れ属性のないふっ飛ばし攻撃用最終ステート。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N 生きていないならアニメを5050へ変更。 アニメが終了したら5040番アニメに変更。!Timeでアニメが5035番でない場合も5040に変更 HitOverでCtrlを1に HitOverでMoveTypeをIに 毎フレームY速度にGetHitVar(Yaccel)を加算 地面へ到達で着地ステートへ:Ve Y 0 Pos Y = 0 +■StateNo=5050【空中くらい/ふっとび・倒れまで】 Command="recovery"の記述あり ■StateNo=5050 【空中くらい/ふっとび・倒れまで】 ふっとび最中ステート2 CanRecover時、Recovery入力で空中復帰が可能。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N 以下のいずれかの条件で5050番へアニメを変更5035番アニメでアニメ表示が終わった !Timeで下記のアニメでない5035番、[5051,5059]番・[5061,5069]番、5090番 =通常吹っ飛び・特殊吹っ飛び・倒れ浮きでないこと。 ★[5050,5059]番のアニメで、Y速度が-2以上・5050番アニメなら1以上でAnim+10のアニメが存在するなら、そのアニメへ変更する。 なおこの処理は一度しか行わない。 毎フレームY速度にGetHitVar(Yaccel)を加算 落下中(Vel Y 0)・地上近く(Pos Y =-20)で生きており、空中復帰が可能な場合にrecoveryのコマンドで5200番ステートへ移動 上昇速度がほぼ無くなったあと(Vel Y -1)、空中で生きており、空中復帰が可能な場合にrecoveryのコマンドで5210番ステートへ移動 地面へ到達した場合、5100番ステートへ移動。地面の条件は[5051,5059]番・[5061,5069]番の場合0以上、それ以外で25以上。 +■StateNo=5070【空中くらい/転ばされヒットストップ】 ■StateNo=5070 【空中くらい/転ばされヒットストップ】 Trip属性の攻撃を受けた場合は一律このステートへ飛ぶ。 なおMUGEN側の処理により、このフレームのTime=0時点でステート終了を迎えると対ダウン追撃用の防御力上昇が発生。 ※受けた攻撃のPauseTimeが0の場合すぐChangeStateするため補正は発生しない。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N Velset=0,0 アニメを5070へ変更・固定。 HitShakeOverで5071番ステートへ移動 振動するゲームパッドを振動させるらしい。 +■StateNo=5071【空中くらい/転ばされヒットバック】 ■StateNo=5071 【空中くらい/転ばされヒットバック】 速度を決定する転ばされ用ステート。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N !TimeでHitVelSetのXYを適応。 毎フレームY速度にGetHitVar(Yaccel)を加算 地面へ到達で5110番ステートへ移動:Ve Y 0 Pos Y = 15 +■StateNo=5080【倒れくらい/ヒットシェイク】 ■StateNo=5080 【倒れくらい/ヒットシェイク】 倒れ状態+Y座標0の場合に飛ぶ倒れくらいステート。 内容,記述 冒頭オプションStateType=L MoveType=H Physycis=N Velset=0,0 !TimeでSysvar(2)へ縦のふっとび速度が0なら5080を、それ以外なら5090を代入。 !Timeかつ、特殊倒れ系アニメであった場合sysvar(2)にAnim%10を加算。特殊倒れ系アニメ=[5081,5089]番、[51111,5119]番 ただし加算後の番号のAnimが存在しない場合は加算を行わない。 !TimeかつSysvar(2)が5090番で、その番号のアニメが存在しない場合、sysvar(2)に5030を代入する。 アニメをsysvar(2)の番号に変更・固定。 HitHakeOverかつ縦のふっとび速度が0なら5081番ステートへ移動 HitHakeOverかつ縦のふっとび速度が0以外なら5030番ステートへ移動 +■StateNo=5081【倒れくらい/ヒットバック】 Sysvar0を1に ■StateNo=5081 【倒れくらい/ヒットバック】 速度を決定する倒れくらいステート。 内容,記述 冒頭オプションStateType=L MoveType=H Physycis=C !TimeでHitVelSetのXを適応。 HitOverでX速度を0に !timeでsysvar(0)へ1を代入。 HitOVerで5110番ステートへ移動 +■StateNo=5100【倒れくらい/空中~着地】 ■StateNo=5100 【倒れくらい/空中~着地】 空中くらいから着地した時点の倒れステート なおMUGEN側の処理により、このフレームのTime=0時点でステート終了を迎えると対ダウン追撃用の防御力上昇が発生。 内容,記述 冒頭オプションStateType=L MoveType=H Physycis=N !TimeかつGetHitVar(Fall.Yvel=0)でX速度が1より大きい場合、X速度を1に !TimeでFallEnvShake発動 !Timeでsysvar(1)へFloor(Y速度)を代入 !Timeで特殊吹っ飛びアニメでなければ5100番アニメへ変更対応する特殊倒れアニメがない場合も。 !Timeで特殊吹っ飛びアニメ~特殊倒れ着地アニメへ変更。[5051,5059]番・[5061,5069]番から510x番へ。対応アニメがあるなら。 !TimeでY座標を地面に !TimeでY速度を0に !TimeでX速度を3/4に。 !TimeかつGetHitVar(fall.yvel)=0(倒れバウンドY速度が0)なら5110へ移動 Time=1でバウンド用エフェクトを表示。基本60番のエフェクト。sysvar(1)、着地速度が5より大きいなら61番、14より大きいなら62番。 基本奥側へ表示するが、sysvar(1) 14なら手前側に表示 HitFallDamage、バウンド時のダメージをTime=3で適応。 Time=1でバウンド時のSEを再生、基本F7,0sysvar(1)、着地速度が5より大きいならF7,1、14より大きいならF7,2。 常時PosFreezeする。 アニメが終わったら5101番ステートへ移動 振動するゲームパッドを振動させるらしい。 +■StateNo=5101【倒れくらい/バウンド中】 ■StateNo=5101 【倒れくらい/バウンド中】 倒れバウンドから着地までのステート 内容,記述 冒頭オプションStateType=L MoveType=H Physycis=N !Timeかつ特殊倒れアニメでなければ5160番に変更。また対応する特殊倒れアニメが無い場合も。 !Timeかつ特殊倒れアニメの場合、次の特殊バウンドアニメに変更。[5101,5109]番から516x番へ。対応アニメがあるなら。 !TimeでHitFallVel、バウンド速度を適応 !TimeでY座標を20に設定。 毎フレームY速度に+0.4加算。 地面へ到達で5110番ステートへ移動:Ve Y 0 Pos Y = 12 +■StateNo=5110【倒れくらい/倒れ待機】 sysvar0感知 ■StateNo=5110 【倒れくらい/倒れ待機】 倒れ着地~自動起き上がりまででのステート このステートに居て起き上がり待機時間が0になった場合自動で5120へ移動する。 内容,記述 冒頭オプションStateType=L MoveType=H Physycis=N !TimeでFallEnvFhake発動 ★存在するなら特殊倒れくらいアニメから特殊倒れ待機アニメへ[5081,5089]番から511xへ変更。存在するなら。 この処理は一度しか行わない !Timeかつ特殊倒れ待機アニメでなく、特殊バウンドアニメでもないなら5170番アニメへ変更。特殊バウンド着地アニメが無い場合も。 !Timeかつ特殊倒れ待機アニメでなく、特殊バウンドアニメなら変更。[5161,5169]番から517x番に変更。対応アニメが存在するなら。 !TimeでHitFallDamageを適応。 !TimeでY座標を0に。 !Timeかつ倒れバウンドY速度が0以外ならsysvar(1)へFloor(Vel Y)を代入 !TimeかつSysvar(0)(倒れ待機くらいフラグ)が0の場合のみバウンド効果。バウンド時のSEを再生、基本F7,0sysvar(1)、着地速度が5より大きいならF7,1、14より大きいならF7,2。 バウンド用エフェクトを表示。基本60番のエフェクト。sysvar(1)、着地速度が5より大きいなら61番、14より大きいなら62番。 基本奥側へ表示するが、sysvar(1) 14なら手前側に表示 !TimeでY速度を0に ★特殊バウンド着地アニメからアニメが終了した、あるいはSysvar(0)(倒れ待機くらいフラグ)が1の場合 特殊倒れ待機アニメへ変更する。[5171,5179]番から511xへ変更。ただし存在するなら。 この処理は一度しか行わない。 ★特殊バウンド着地アニメ以外でアニメが終了した、あるいはSysvar(0)が1の場合、5110番アニメへ変更する。 この処理は一度しか行わない。 死んでいる場合(!alive)、以下のいずれかの条件で5150へ移動する。アニメ終了時 Sysvar(0)(倒れ待機くらいフラグ)が1の時。 倒れ待機アニメ[5110,5119]番の場合。 !TimeかつSysvar(0)が0以外の場合、Sysvar(0)を0にする。 毎フレームx速度を*0.85する 振動するゲームパッドを振動させるらしい。 sysvar(0)について sysvar(0)は倒れくらい時のフラグを管理しているのだが、 sysvar(0)は空中ガードくらいの着地制御でも使われており、 しかもくらい時にリセットする箇所はこのステートだけである。 その為空中ガードくらい着地をした後、すぐ後に倒れると 5110番にある着地の効果音や衝突エフェクトが発生しない。 最も顕著になりそうなのは5100番を経由しないTrip系で 落下速度が非常に早い攻撃だろうか。 起き上がり・リカバリー動作 MUGENのcommon1.cnsファイルの冒頭の説明において、 ステート5120番、5200番、5210番ではTime=0時点で防御力を正常値へ戻すと書かれている。 防御力の補正係数について詳しくはSC-/DefenceMulを参照。 +■StateNo=5120【倒れ/起き上がり】 ■StateNo=5120 【倒れ/起き上がり】 倒れ待機5110番から自動で移動してくるステート。 内容,記述 冒頭オプションStateType=L MoveType=I Physycis=N !Timeかつ特殊倒れ待機以外の場合、5120番アニメに変更対応する特殊起き上がりアニメがない場合も !Timeかつ特殊倒れ待機の場合、特殊起き上がりアニメに変更。[5111,5119]番から512x番。対応アニメが無ければ変更しない。 !TimeでX速度を0に 常時完全無敵 アニメ終了時Fallフラグを1にする。 アニメ終了時投げに対する12Fの無敵を発生させる アニメ終了時完全無敵を3F発生させる(Value2) アニメ終了時立ちステートへCtrl=1で移動する。 NotHitByについて 起き上がりでは必ず一度でもNotHitByを実行すること。 一定条件で倒れ追撃への特殊無敵が永続で発生し、 他にNotHitByが実行されるまで無敵が消えなくなる。 ちなみに 特殊無敵の主な発生条件はステート奪われ状態でStatetype=L MoveType=Hになり、 その状態で方向キーを3度入れた後、通常くらいへ移動させられると無敵が出る。 そのため、ステート奪取中にStateType=Lにすることは避けるべきであり、 Statetype=Lにした場合は5120などくらい以外のステートへ戻す必要がある。 +■StateNo=5200【倒れ受身/開始】 地上近くの空中受身 ■StateNo=5200 【倒れ受身/開始】 CanRecover復帰可能な状態から地面近くで復帰した場合のステート。 ※このステートに無敵になる記述は無い。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N アニメが5035番で表示終了した場合、5050番アニメに変更 毎フレームY速度にGetHitVar(Yaccel)を加算 地面へ到達で5201番ステートへ移動:Ve Y 0 Pos Y = 10 +■StateNo=5201【倒れ受身/着地】 ■StateNo=5201 【倒れ受身/着地】 倒れ受身開始から着地したステート ※このステートには無敵がある。 ※ここからはPhysics=Aによる自動着地を行う。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=A Anim=5200 !Timeかつ相手が後ろ側(P2Dist X -5)の場合振り向き !Timeで速度をX-.15、Y-3.5に変更 !TimeでY座標を0に 常時完全無敵 !Timeでキャラを3F光らせる Time=1で汎用60番のエフェクトを表示 +■StateNo=5210【空中受身】 空中受身 ■StateNo=5210 【空中受身】 倒れ受身開始から着地したステート ※無敵が15F、行動不能が基本20Fのため、6Fの隙がある。 内容,記述 冒頭オプションStateType=A MoveType=H Physycis=N Anim=5210 Ctrl=0 !Timeでキャラを3F光らせる !Timeで4F座標を固定。 !timeかつ相手が後ろ側(P2Dist X -20)の場合振り向き Time=4で速度をX速度*0.8、Y速度*0.8。 Time=4でY速度-4.5 Time=4でY速度が落下中(Vel Y 0)ならY速度*0.5。 Time=4でY速度がVel Y -3ならY速度-2。 Time=4でY速度がVel Y -2ならY速度-1。 Time=4かつ方向キー↑でY速度-2 Time=4かつ方向キー↓でY速度+1.5 Time=4かつ方向キー前でY速度*1 変化無し Time=4かつ方向キー後ろX速度-1 !Timeで15Fの完全無敵 Time=20でCtrlを1に Time =4でY速度に+0.35していく。(重力) 地面へ到達で52番ステートへCtrlを1にして移動:Ve Y 0 Pos Y = 0 死亡ステート +■StateNo=5150【死亡】 ※特殊処理大量 ■StateNo=5150 【死亡】 死亡時に待機するステート 専用のMUGEN処理が山ほどあるため要注意。 ステート自体の内容,記述 冒頭オプションStateType=L MoveType=I Physycis=N !Timeで倒れ系アニメへ変更特殊倒れ系アニメでなく、5140番が存在するならそのアニメ特殊倒れ待機アニメでない場合も。 特殊倒れ系アニメで対応が存在する場合514x番のアニメ[5111,5119]番・[5171,5179]番から。 ★!Tiemかつ試合の決着がついた場合10したアニメがあればそのアニメに変更する。 この処理は一度しか行わない。 !Timeで死亡用アニメ系でも、倒れ待機系でもなければ5110に変更。 毎フレームX速度を*0.85する ★X速度が.05未満の場合0にこの処理は一度しか行わない 完全無敵 死亡ステートでの特殊処理 P2系の対象にならない。自動振り向きの対象にもならない。 一部例外を除き取られているTargetを消す。 試合終了の演出時、立ち待機系以外でも移行する唯一のステート。 死んでいる(Alive=0)場合PlayerPushのValue=0の効果(衝突判定が無くなる) Screenbound系の効果(カメラに追尾されなくなる) ライフゲージの表示減少量がリセットされる。 他色々? 生きている(Alive)場合は自動で起き上がり(5120へ移動)を行う。 把握しきれていません。
https://w.atwiki.jp/type74rx-t/pages/150.html
必須ベーススクリプト A(Ver1.05以上) 効果 敵キャラにのみ設定できる不死身の状態を、ステートという形でアクターにも設定できます。 これを使えば敵にデフォルトの不死身設定は必要ありません。 このスクリプトの最大のメリットは、イベントで不死身状態にしたり解除したりすることが 自由にできることです。 演出面で役に立つかも知れません。 【不死身について】 HPが0になっても戦闘不能になりません。 ただし、ステートの影響はしっかり受けてしまうので注意してください。 (要するに、HPが0になっても死ななくなるだけです。) 特定ターンで効果が切れる設定にした場合、アクターのHPに注意してください。 アクターのHPが0になった状態で不死身ステートが解除されると、その場で戦闘不能に陥ります。 そうなる前にHPを回復しておいてください。 システムワードの設定 システムワード:不死身 対象:ステート 導入上のご注意 ステート防御無視スキルを導入している方は、ステート防御無視スキルよりも 下のセクションに導入してください。 また、RPGツクールVXのステート解除タイミングの仕様上 スキルを唱えたターンの間だけ有効なスキルの作成はオススメできません。 詳細はこちらをご参照ください。 スクリプトのダウンロード txtファイル:スクリプト
https://w.atwiki.jp/4mugencreators/pages/13.html
アルファベット順 +ステートコントローラ[A~D] AfterImage AfterImageTime AllPalFx AngleAdd AngleDraw AngleMul AngleSet AppendToClipboard AssertSpecial AttackDist AttackMulSet BGPalFX BindToParent BindToRoot BindToTarget ChangeAnim ChangeAnim2 ChangeState ClearClipboard CtrlSet DefenceMulSet DestroySelf DisplayToClipboard +ステートコントローラ[E~N] EnvColor EnvShake Explod ExplodBindTime ForceFeedback FallEnvShake GameMakeAnim Gravity Helper HitAdd HitBy HitDef HitFallDamage HitFallSet HitFallVel HitOverride HitVelSet LifeAdd LifeSet MakeDust ModifyExplod MoveHitReset NotHitBy Null +ステートコントローラ[O~S] Offset PalFX ParentVarAdd ParentVarSet Pause PlayerPush PlaySnd PosAdd PosFreeze PosSet PowerAdd PowerSet Projectile RemoveExplod ReversalDef ScreenBound SelfState SprPriority StateTypeSet SndPan StopSnd SuperPause +ステートコントローラ[T~W] TargetBind TargetDrop TargetFacing TargetLifeAdd TargetPowerAdd TargetState TargetVelAdd TargetVelSet Trans Turn VarAdd VarRandom VarRangeSet VarSet VelAdd VelMul VelSet Width
https://w.atwiki.jp/rozenindex/pages/753.html
各キャラのステートの得手・不得手をまとめました。 ボス戦でのメンバー編成等に役立てて下さい。 見にくくなるので標準設定のCは省略してあります。 ステートの見方 % 備考 A 100 必ず食らう。超やばい B 80 8割の確率で食らう。弱点 C 60 6割が標準設定。 D 40 4割の確率で食らう。多少は有利 E 20 2割しか食らわない。余裕だぜ F 0 全く効かない。 ステート相性表 水銀燈 真紅 雛苺 翠星石 蒼星石 金糸雀 きらき アリス メディ 虫野郎 ジャンク F B F D 毒 D D F B 暗闇 B D D D D 沈黙 B F D D D 混乱 B D D E D 睡眠 D B D D D 麻痺 D D B E D スタン D D 攻撃力半額 D B D D 防御力半額 B B D D 精神力半額 B B D D 敏捷性半額 B B D D 萌え F F F F F F F F F B 凍結 D B D 笑い D 捕縛 D F 恐怖 D 疑心暗鬼 D D D 暴走 B B D D D D 魅了 A D D 石化 D D D ゾンビ D B E D D やけど B D D A 耳をふさぐ A A D D 出血 F F F F F F F F 猛毒 D F B 大やけど B D D A 死の宣告 B D 超凍結 D B D ど忘れ B 徐々に石化 D B D D 水銀燈 真紅 雛苺 翠星石 蒼星石 金糸雀 きらき アリス メディ 虫野郎
https://w.atwiki.jp/type74rx-t/pages/161.html
必須ベーススクリプト A(Ver1.05以上) 効果 HPやMPを回復できなくなるステートを作成できます。 このステートにかかっているキャラクターはHP(MP)吸収スキルも無効化されます。 ※:ステート回復不能の機能を付けようとしましたが、色々やっかいなのでやめにしました。将来的にも、この機能の追加予定はありません。 システムワードの設定 システムワード:HP(もしくはMP)回復不能 対象:ステート HP回復不能、MP回復不能の両方を記述することで、HPとMPの両方を回復不能にすることもできます。 スクリプトのダウンロード txtファイル:スクリプト
https://w.atwiki.jp/type74rx-t/pages/156.html
必須ベーススクリプト A(Ver1.05以上) 効果 物理攻撃だけでなく、スキル攻撃も味方に行う混乱ステートを作成できます。 これを使用すれば、スキル追加発動装備によって発動したスキルも味方に発動させる事ができます。 システムワードの設定 システムワード:特殊混乱 対象:ステート ステートの制約は敵を通常攻撃するに設定してください。 スクリプトのダウンロード txtファイル:スクリプト
https://w.atwiki.jp/squestwiki/pages/154.html
ステート変化 ステート名 ステート効果 ステート付与方法 回復手段 戦闘後に回復 備考 クライシス EPが一定割合以下になる特定の攻撃を受ける EP回復 ○ 1ターン行動不能服脱がし・インサート抵抗不能 1ターン後に回復 ○ 放心 行動不能服脱がし・インサート抵抗不能 マインイーサリカバリ快感を受ける(確率) ○ 暴走 毎ターン強制的に攻撃 マインイーサリカバリ ○ パニック たまに突拍子も無い行動を取る マインイーサリカバリキュアエッセンス ○ ドランクと若干内容が異なる センシブ 受ける快感アップ センスイーサリカバリキュアエッセンス × ナーバス 快感、脱衣などではテンションアップしない センスイーサリカバリキュアエッセンス × ミニマム 精力ダウン カースイーサリカバリディルエッセンス × クラムジ 技巧ダウン カースイーサリカバリディルエッセンス × ヴィジョン 毎ターン快感を受ける ディルエッセンス ○ バインド 行動が制限される もがくソフティキッスリカバリ ○ 両足、両手、口の三段階あり両足 素早さダウン両手 技巧ダウン口 もがく以外のスキルが使えなくなる バインド(強) 行動不能 リカバリ ○ バインド耐性で防げるのはこちら 衰弱 行動不能攻撃を受けるとRPが減少 EPが0になる 時間経過で回復 ドランク たまに突拍子も無い行動を取る ファドゥルサワースウィートミョッズ シリアスシリアル × パニックと若干内容が異なる 嫉妬 パートナーが行動しなくなる ○
https://w.atwiki.jp/type74rx-t/pages/172.html
ベーススクリプトのバージョン:A(Ver1.04以上) 効果 設定したいくつかの付加ステートからランダムに1つだけ選ばれたものを対象に付加できます。 例えば、ファイアに毒、麻痺、スタン、混乱のステートを付加する設定にして メモ欄に「ランダムステート」と記述すれば、戦闘中、対象にファイアで攻撃した時 設定した毒、麻痺、スタン、混乱の中から、どれか1つのステートを付加します。 ただし、付加される確率はデフォルトのままなので、上記の場合「麻痺」に強い相手だと その分、何らかのステートを付加する確率が低くなります。 また、このスクリプトは逆に上記の要領でステートの回復もできます。 ステート変化発動率設定スキルを導入している場合、「ステート変化発動率設定スキル」を 導入したセクションのすぐ下に導入してください。 また、ステート防御無視スキルを導入している場合、「ステート防御無視スキル」を 導入したセクションのすぐ下に下記のステート防御無視スキル対応版を導入してください。 「ステート変化発動率設定スキル」、「ステート防御無視スキル」の両方を導入する場合の 導入優先順位は、以下の通りです。 ステート変化発動率設定スキル>ステート防御無視スキル>本スクリプト システムワードの設定 システムワード:ランダムステート、もしくは、ランダム回復ステート 対象:スキル、アイテム スクリプトのダウンロード txtファイル:スクリプト(2つめ:「ステート防御無視スキル」対応版)