技特性とstatenoのチェック

Last-modified: 2014-07-16 (水) 17:05:20

「.cmd」ファイルを開き、[Command]で指定されている各技の入力コマンドをチェック
またはキャラクターに付属のReadme.txtなどのコマンド表を確認する
(和訳KFMには詳細な説明書が付属しているので、それを読めば問題無しです)


 

技を使って性能を確かめる

そのキャラに搭載されている技を把握したら、実際にMUGENを起動しトレーニングモードで使ってみる
一通りの技を出してみて、それぞれの特性・強みをチェック。出しづらい技などは(分かるなら)
コマンドを変更すると出しやすくなる、例えば「command = "start"」はよく挑発に使われるコマンドだが
挑発のAI記述は一番最後でも構わないだろうから、一時的に『コメントアウト』してしまうと良い
とはいえ技を出しやすいよう、MUGENのキーコンフィグは一番最初にやっておくべき事だが

 
編集前

[State -1, 挑発]
type = ChangeState
value = 195
triggerall = command = "start"
trigger1 = statetype != A
trigger1 = ctrl

 
編集後

;[State -1, 挑発]
;type = ChangeState
;value = 195
;triggerall = command = "start"
;trigger1 = statetype != A
;trigger1 = ctrl

 

<注意点・1>
「;」は俗に「コメントアウト」と呼ばれる記号で、その後に記述された文章はプログラム的に無視される
それを利用してメモや注約を記載する手段としても使われており、また例外的に全角も使える
つまりMUGENの文章は、通常全て半角英数で記述しなければならないという事だが
 大文字か小文字かは気にしなくても良い、このwiki内で一定してないのは申し訳ないが
<注意点・1>

 

後は使用したい技のコマンド、例えば「三烈カンフー突き手」のコマンド「command = "TripleKFPalm"」を
元々は挑発用だった「command = "start"」に変えてしまえば、「start」に設定してあるボタン一つで
「三烈カンフー突き手」を出すことが出来るため、技の性能のチェックが更に楽になるだろう
また技性能のチェックが済んだ後は、「command = "start"」を次の技のチェックにも使えるよう
変更した「三烈カンフー突き手」のコマンドを、元の「command = "TripleKFPalm"」に戻すのを忘れずに

 
編集前

[State -1, 三烈カンフー突き手];ゲージレベル1
type = ChangeState
value = 3000
triggerall = command = "TripleKFPalm"
triggerall = power >= 1000
trigger1 = statetype = S
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3050)
trigger2 = movecontact
trigger3 = (StateNo = 1300) && (Time = [12,38]) ;ちょっとこ丸が追加

 
編集後

;非ロック式の高火力乱舞技、初段にのみ無敵あり、全段当てるなら距離100以内
[State -1, 三烈カンフー突き手];ゲージレベル1
type = ChangeState
value = 3000
triggerall = command = "start";元コマンドのメモ「command = "TripleKFPalm"」
triggerall = power >= 1000
trigger1 = statetype = S
trigger1 = ctrl
trigger2 = statetype != A
trigger2 = hitdefattr = SC, NA, SA, HA
trigger2 = stateno != [3000,3050)
trigger2 = movecontact
trigger3 = (StateNo = 1300) && (Time = [12,38]) ;ちょっとこ丸が追加

 

チェックが済んだら、そのステートに技特性などのメモを記載する
コメントアウトを利用して書き込んでおけば、メモを無くす心配も忘れる心配も無い
これを繰り返して全ての技を順番にチェックしていこう、なおメモや書き換えの最中に元の記述が崩れて
分からなくなってしまった時は、バックアップの出番になるので、もし忘れていたら今取っておくように

 

<注意点・2>
[State -1, 三烈カンフー突き手]の「,」以降は、エラーメッセージの表示に使われる
エラーが出た場合、何処が原因かを突き止める手段に成り得るので、覚えておくと良いだろう
またここも全角に対応しているのだが、逆にこことコメントアウトの2箇所以外で全角が使われると
たとえ空白でもエラーとなるので要注意。また、state -1となってる部分も別の番号……-3や20とか
2000に変えても問題は無い。どうも「state」の場合、エラーメッセージの表示以外には参照されないらしい
ただし、これはあくまでも「state」の話で、「statedef ○○,△△△△」の方の番号は
 超重要であるから勘違いしないこと
<注意点・2>

 

便利なコマンド

ctrl+Dデバックモード

各種技のstatenoをチェックするのに使う、何度も押すと「自キャラ→相手→ヘルパー(?)...」
と順番に表示されていく、最後には表示が消えて、そこからもう一回押すと自キャラの表示に戻ってくる

 

このデバッグモードで表示されたstatenoと、開いた「.cmd」ファイルの各種技のchangestateのvalueを見て
それぞれの番号が一致しているかどうかを確認する、合っていたらそのステートがその技を出すための
記述であると確定する。番号が無かったり確認が面倒なら、commandから参照して該当するステートを探す

 

<注意点・3>
これはvalueに書かれてるジャンプ先のstatenoが、常に正しいとは限らないため
存在しないstatenoを指定していてもエラーが出ないので、作りかけの状態で放置されている事がある
その場合、該当commandにAIとしての記述をするだけ無駄なので、それを除外するために行う作業だったりする
ただ元からメモが豊富なキャラであったり、使い慣れたキャラであるなど、特定作業が不要なら省略しても良い
なお「state」と「statedef」は別物、重要なのは「statedef」の方なので混同しないように
<注意点・3>

 
ctrl+C当たり判定表示

各種技の攻撃範囲や無敵の有無を確認するのに使う、何度も押すと「枠線表示→塗り潰し表示→表示なし...」
と表示形式が変わる、AI作成中は恐らくずっと塗り潰し状態で表示しつつ、最もお世話になるだろう

 

青い範囲は当たり判定、ここを攻撃されるとダメージを負う
赤い範囲は攻撃判定、ここを相手の当たり判定に当てるとダメージになる
よく「判定が強い」と言われる技は、「当たり判定の無い攻撃判定のみの部分が大きい技」のことを言う
こういった技が、普通の「攻撃判定と当たり判定がほぼ同じで重なっている技」とぶつかった場合
一方的に潰すことが出来るため強いという訳だ、逆に当たり判定のほうが大きいと「判定が弱い」と言われる
当たり判定の色が緑に変わったら、それは無敵判定になっている
和訳KFMなら「三烈カンフー突き手」か「スマッシュカンフーアッパー」を使えば見れるはず
これのある技は切り返しやカウンターで頼りになるが、無敵とは言っても完全無敵ばかりではなく
打撃無敵・飛び道具無敵・投げ無敵など、幾つか種類があったりする。判別したい場合は
該当する技の「stateno」と同じ番号の「statedef」以降の記述を読んで調べたり
キャラクターに付属のreadme.txtを読んでみたり、トレーニングモードで試してみたりしよう

 

<注意点・4>
記述を読んで、無敵が何に対して無敵か知りたい場合の一例として
無敵対空技である「スマッシュカンフーアッパー」の記述の一部をあげると

 

[State 3050, 相手の特定の攻撃属性無効]
type = NotHitBy
trigger1 = AnimElem = 2
value = , NA, SA, AT
time = 6

 

この「NotHitBy」が無敵を設定する項目で、「value」で指定されたものに対して無敵になる
「NA」は通常打撃技、「SA」は必殺打撃技、「AT」はすべての投げ技、これらに対して無敵が設定されている
要するにかなり強めの無敵が付与されているということ、近距離での切り返し&カウンターで活躍できる
<注意点・4>

 
shift+F4キャラクターのファイルを再読み込み

おそらく一番役に立つと思われる、F4はそれ単体だと「ラウンド開始時点に戻る」コマンドなのだが
Shiftキーと同時押しすると、「キャラクターのファイルを再読み込みしながら」ラウンド開始時点に戻るので
技の性能を確かめる作業と組み合わせれば、いちいちMUGENを再起動する手間をかけず
変更を適用しながらチェックを続けられるので非常に便利、なお変更したファイルを「保存」せずに
再読み込みをやって、「おかしいな適用されてないぞ」はよくある凡ミスなので注意しよう

 

なおファイルの再読み込みに成功したかどうかは、通常のF4と違い画面が一瞬真っ暗になることと
画面の一番右下に小さな「Loading」の文字が出ることなので、そこを見ておくと良いだろう

 

射程距離(リーチ)、それは「p2bodydist X = ○○」

「三烈カンフー突き手」のメモにも記載しているが、調べておくべき技の性能として
最も重要なのは「その攻撃がどこまで届くのか」という事だ、なるべく遠く安全な所から攻撃したいのは
やまやまだが、しかし空振りしては逆に隙を晒してしまうので正確なリーチを測っておきたい

 

最も簡単でオススメなのは、推奨ツール「いっしょにとれーにんぐ」の機能の一つ
「POiNTER TYPE→BODY DiST」を使って表示することなのだが、何らかの理由でそれが無理な方のため
別の方法も記載しておく、まず「.cmd」ファイルを開いて「statedef -1」を検索したら、その下に

 
編集前

[Statedef -1] ;←この行は絶対に消さないでね。必須項目です。

 
編集後

[Statedef -1] ;←この行は絶対に消さないでね。必須項目です。
;◇デバッグ表示
[State -1]
Type = DisplayToClipBoard
Trigger1 = 1
Text = "P2BodyDist X=%f, \t P2BodyDist Y=%f"
Params = P2BodyDist X, P2BodyDist Y
IgnoreHitPause = 1

 

このような記述を追加する、するとデバッグモードの表示に
「P2BodyDist X」と「P2BodyDist Y」が表示されるようになる

 

「P2BodyDist X」は横方向の距離、主にAI記述で重要なのはこちらの方、MUGENキャラも主に地上で戦う
「P2BodyDist Y」は縦方向の距離、空中コンボの時や、厳密に対空をやりたい場合などに用いる
あとは各技の射程距離(リーチ)をチェックし、その性能を調べてAIの記述に活用するだけ

 

ちなみに和訳KFMには似たような記述がすでに入っているので、さらにこれを使う必要は無いと思う