3:技特性とstatenoのチェック

「3:技特性とstatenoのチェック」の編集履歴(バックアップ)一覧に戻る
3:技特性とstatenoのチェック」を以下のとおり復元します。
CMDファイルを開き[Command]で指定された入力コマンドをチェック
または、リドミなどのコマンド表を確認する

そのキャラに搭載されている技を把握したら、実際にwindowモードでmugenを起動し、trainingで使ってみる
一通りの技を出してみて、各種技の特性をチェックする

ctrl+Dなどで、デバックモードにして、各種技のstatenoをチェックする

開いているCMDファイルを見て、各種技のchangestateのvalueを見て、上記でチェックした番号と合ってるか確認する
合ってたら、そのステートが、その技を出すためのだと確定する
番号が無かったり、面倒なら、commandから参照して、該当するステートを探す

 <注意点>
valueに書かれてる、ジャンプ先のstatenoが正しいとは限らないため
存在しないstatenoを指定していてもエラーが出ないので、作りかけの状態で放置されてる場合がある
その場合、AI組むだけ無駄なんで、それを除外するために行う作業である

ただし、元からメモが豊富だったり、使い慣れたキャラだったりして、特定作業が不要なら、省略してもいい

「state」と「statedef」は別物。需要なのは「statedef」の方。混同しないように

確定したら、そのステートに、技特性などのメモを記載する
同時に、AI時に暴発しないように
-------------
triggerall = var(59) = 0
-------------
を追加して、封印する

例えば、
-------------------
;三烈カンフー突き手(ゲージレベル1)
[State -1, Triple Kung Fu Palm]
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
-------------------
なら
-------------------
;高火力、非固定の乱舞技。移動距離は短い。根元から当てないと安い
;三烈カンフー突き手(ゲージレベル1)
[State -1, Triple Kung Fu Palm]
type = ChangeState
value = 3000
triggerall = var(59) = 0
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
-------------------
こう表記する。表記内容は分かりやすければなんでも良く、簡潔でも分かれば問題ない

ただし、これらの表記は、ただのメモであるため、記憶&把握できてるのなら、一切不要である
(封印は除く。ただし、暴発した方が面白いなら、あえて封印しないでも良い)

また「挑発」などのお遊び要素が欲しい場合、そこだけあえて封印しないでおくのもKOOLで良い

<注意点>
「;」は俗に「コメントアウト」と呼ばれる記号で、その後に記述されたものは、プログラム的に無視される
それを利用して、メモや注約として使われていて、例外的に全角も使える
var(59)は例文。AIトリガーに使うvarは、元々使われて無い番号なら、何番でも良い

また、
-----
[State -1, Smash Kung Fu Upper]
-----
の「,」以降は、エラーメセージの表示に使われる。さらに、ここも全角に対応してる
逆に、上記の2箇所以外で、全角が使われると、たとえ空白でもエラーとなるので要注意
また、state -1となってる部分も、-3や20とか2000とかの番号に変えても問題は無い
(どうも「state」の場合、エラーメッセージの表示以外には参照されないらしい。
 ただし、これはあくまでも「state」の話で、「statedef **,----」の「番号」は超重要であるから勘違いしないこと)

復元してよろしいですか?