◆KFX基礎的応用集◆
もはや古参にとっちゃ基本となってしまった応用だって、
初心者にとっては未知の領域…。
マニュアルに書いてないのに常識ぶられたらそりゃ困るよね!
そんな「もはや基本になってしまった応用」
を思いつくまま列挙してみました。
今現在の拡張エンジンから入った人には無用の物も結構ありますが、
応用できる部分もそれなりにあるかと。
[ダメージ値について色々]
[入力方向を検出するCi]
[ガード不能]
[画面端ノックバック回避]
[2ゲージ消費技]
[長いコマンド]
[飛び道具で技変化]
[途中で消える飛び道具]
[ヒット・ガード分岐]
[衝突判定使った色々]
[飛び道具の反射]
[ラウンド開始時演出]
[連続入力]
[chara.bmpの容量節約技術]
メニューへ戻る
[ダメージ値について色々]
・マイナス値指定で相手の体力を回復可能。
ヒット数増えてるけどダメージは最後、って技を作る時は
-1と1のダメージを繰り返して作ったりするので、使用頻度は高いです。
拡張エンジンでは自分に当てて体力回復などにも使えますよ。
・ダメージ0の攻撃を当てると
これまでのヒット数をリセットしてしまう特性があります。
(拡張エンジンでも見た目のヒット数は継続されますが
内部的にはリセットされています)
この特性を利用するとコンボ補正リセット技が作れます。
・ダメージ0の技はヒットマークが出現しない。
(拡張エンジンではヒットストップもない。
0ダメージで乱舞を作ったりしてるとひどいことになるので注意)
[入力方向を検出するCi]
後移動の1、前移動の2、屈みの10。
これらのCiは単純にその状態を表すだけでなく、それぞれ
1=後ろを入力している間継続
2=前を入力している間継続
10=下を入力している間継続
という意味を持っています。
KFXでの6を押したままでずっと継続するダッシュなどは大抵 Ci 2 を使っているわけですね。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
90 -1 1 109 0 2 9 100 1 0 0 9 -1 0 0 0 9 0001 112052012000 00006001E000 000000000000 ;ダッシュ
91 -1 1 110 0 2 9 100 1 0 0 9 -1 0 0 0 9 0001 112052012000 00006001E000 000000000000 ;
92 -1 1 111 0 2 9 100 1 0 0 9 -1 0 0 0 9 0001 112052012000 00006001E000 000000000000 ;
93 90 1 110 0 2 9 100 1 0 0 9 -1 0 0 0 9 0001 112052012000 00006001E000 000000000000 ;Ci 2なので6を入力する限り90へループ
・・・ですがそれだけでなく、
コマンド入力後任意の方向を押しつづけると発動、離すとキャンセルといった感じの技も作れます。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1000 -1 1 0 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205A012000 10C06F00905A 000000000000 ;6押しつづける特性から考えると最後が6入力のコマンドがいいかもね
1001 -1 3 17 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205A012000 00006F015000 000000000000 ;236とか41236とか
1003 -1 3 46 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205B012000 10206E01F000 000000000000 ;
1004 -1 12 45 1 2 9 0 1 0 0 9 -1 0 0 0 0 0000 11205B012000 10206E01D000 000000000000 ;ここで6押しつづけで発動。離すとキャンセル
1005 -1 2 46 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205B012000 10206E01F000 000000000000 ;
1006 -1 1 47 1 43 9 0 1 0 0 9 3 M 18 0 1 0000 11202A012000 01006204A000 02605903903D ;
1007 -1 8 49 1 43 9 0 1 0 0 9 -1 0 0 0 9 0000 11203A012000 00F06404B000 000000000000 ;
1008 -1 4 50 1 40 9 0 1 0 0 9 -1 0 0 0 9 0000 11203A012000 00F06404B000 000000000000 ;
1009 0 1 0 1 40 9 0 1 0 0 9 -1 0 0 0 0 0001 11205A012000 10C06F00905A 000000000000 ;
使いどころはそれほど無いかもしれませんが、そういうこともできますよ、といった程度に。
・・・ついでに、立ちニュートラルの Ci 0 は「何も入力しない状態」を検出するCiでもあります。
コマンド入力後、何もしないことで発動!・・・ってそれこそ普通は使わないですか?・・・そうですね。
[ガード不能]
飛び道具はガード方向(G)が0になっているとガード不能になります。
(拡張エンジンでは飛び道具以外でも使用可能)
[画面端ノックバック回避]
相手を画面端に追い詰めた状態で攻撃を当てると、攻撃側にノックバックがかかり距離が離れますね。
これを回避する基本的な手段。
・飛び道具で攻撃する
・少し浮かせて空中属性の攻撃にする
前者は常識・・・と思ってると忘れてる人もいるので一応。
後者は冗談みたいな策ですが、意外に使えます。
(飛び道具を演出に使って、攻撃判定は本体、でもノックバックさせない・・・とかね)
ただし、その間に攻撃を潰されると「空中くらい」とみなされてしまい、
相手の基本連続技パターンが通用しない少々ズルイ状態を作ってしまうので、
あまり乱用はしないほうがいいかも・・・。
[2ゲージ消費技]
command.lstに以下のように、
同じコマンドを二つ記述。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
120 236236P 00111 011 1200 0 ;1ゲージ時
121 236236P 00111 011 1250 0 ;2ゲージ時
ゲージ一本の時はmotion.lstの1200が、
ゲージ二本の時はmotion.lstの1250が呼び出される寸法です。
このまんまだと1ゲージ時の技との使い分けができないので、
下のように弱パンチにも割り当てるなどの工夫をしておけばなお良し、です。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
120 236236p 00111 011 1200 0 ;1ゲージしか消費しない
121 236236P 00111 011 1200 0 ;1ゲージ時
122 236236P 00111 011 1250 0 ;2ゲージ時
[長いコマンド]
KFXでは、command.lstのcommandは通常8バイトまでの長さまでしか使用できません。
タメコマンドなどには正直なところ短すぎますよね。(各種拡張エンジンでは改善されています)
実は、次のComNumの間を空けて記述することで8バイトづつ、コマンド入力可能数を延長可能です。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
100 4444444444446P 00111 011 1010 -1 ;CmdNum 101を飛ばすことで、8バイト延長されたコマンド
102 214P 00111 011 1000 -1 ;
1バイト1フレーム換算なので、それほど長いタメでもない限りはこれだけの延長でも充分だと思います。
(25フレーム=1秒と考えるとこれだけでも0.5秒程のタメが作れる)
[飛び道具で技変化]
command.lstのVxが1に設定されているコマンドは
「画面上に飛び道具が存在する場合」出せないコマンドになります。
つまり、重複したVx -1のコマンドがあれば「飛び道具がある時にしか出ない技」
が作れる、という原理です。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
100 236P 00111 011 1010 -1 ;飛び道具がある時
101 236P 00111 011 1000 1 ;飛び道具が無い時
この時、Vxが-1のコマンドをうっかり下に記述しないようにしましょう。
基本、番号の多いコマンドのほうが優先度が高い、というルールがあるため、
飛び道具が出ている場合の技しか出なくなります。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
100 236P 00111 011 1000 1 ;×失敗例
101 236P 00111 011 1010 -1 ;×こちらが優先されてしまいこれしか出ない
このことを利用することで
長い時間出現する飛び道具を出して一定時間パワーアップさせたり、
飛び道具を使ってフラグ倍増など、かなり応用の効くテクニックです。
拡張エンジンでの多モード変更可能キャラなどを作る場合も基本はこれですので、覚えておいて損はしないでしょう。
[途中で消える飛び道具]
飛び道具の消滅条件は「攻撃判定が画面外に出るか地面と衝突」です。
つまり消滅させたい行まで来たら
画面外にスッ飛ばしたり地面に高速で激突させたり、
そもそも画面外に判定出せば消えるんじゃね?ってコトですよ。
消滅時の判定が相手に当たる危険性を考えると上空にぶっ飛ばしつつ,判定は画面上に設定。
それで問題ないはずです。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1010 -1 5 90 0 43 9 80 1 0 0 9 1 U 9 0 1 0000 112000012000 000000000000 00E04101B009 ;5フレーム飛んだら消える
1011 1011 9 255 0 43 9 0 1 -9999 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000FF0000FF ;画面上にぶっ飛ばして消滅
[ヒット・ガード分岐]
ヒット分岐を二つ用意し、
最初のヒット分岐部分ではCL 2 等で相手を浮かす。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1060 1100 1 43 1 45 2 120 1 0 0 9 2 U 0 1070 1 0100 112065012000 121059023000 01304702B03F ;1100=空振りの場合の行 1070=ヒットorガード判別
次の分岐では地面スレスレの攻撃判定を出します。
そして今度の分岐では”外れたら”ヒットしたとみなし、次のモーションへ分岐。
当たった場合は空振りモーションなどへ飛ばしましょう。
つまり前の行で、相手が食らった場合は浮いている、
ガードしていれば地上にいるはずなので当たった=ガードされた、となるわけです。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1070 1080 1 44 1 45 9 80 1 0 0 9 0 U 0 1100 1 0100 112065012000 121059023000 00D001030000 ;1080=ヒットの場合の行 1100=ガードされたので空振り行へ
この方法で分岐させた場合、成功後ほおっておくと相手がダウンしてしまうので、
そのまま乱舞などにつなげたい場合などはCL 6の攻撃を当てて地上に引き戻しておきましょう。
[衝突判定使った色々]
・Def1は相手との衝突判定だけでなく、画面端の衝突判定でもあります。
衝突判定を判定編集ツールで横方向をめいっぱい広げた値(-160,159)にすると、
キャラクターが画面の中央に配置されるのでわかりやすいと思います。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1100 -1 1 0 0 40 9 0 1 0 0 9 -1 0 1 0 9 0000 1A00EF09F0EF 000000000000 000000000000 ;衝突判定めいっぱい広げた状態
・・・つまり、衝突判定の広げ方次第で画面の任意の位置にキャラクターを移動させることが可能なんですね。
前方向に画面サイズ分広げれば(0、320)後ろに、後ろ方向に広げれば(-320,0)前に、といった感じです。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1101 -1 1 0 0 40 9 0 1 0 0 9 -1 0 1 0 9 0000 0000EF0K00EF 000000000000 000000000000 ;衝突判定前に広げた状態
1102 -1 1 0 0 40 9 0 1 0 0 9 -1 0 1 0 9 0000 1K00EF0000EF 000000000000 000000000000 ;衝突判定後ろに広げた状態
・先ほど言った通り画面端との衝突判定を兼ねている・・・ということで、
変更次第で画面外にも出ることができます。
・なにも自分の位置だけでなく、衝突判定は相手にも影響するわけですから、
横幅を広げて、ヒット後強制的に距離をとったり(擦のNYUKIや男吉、物置のホウオウ等)、
アドヴァンシングガードで強制的に相手を引き離したり(うちのジョン・筒井とか)できます。
・・・衝突判定の変更は結構危険なトコでもあるので、乱用はお勧めしませんが。
[飛び道具の反射]
KFXでは飛び道具が5個までしか出せないという制限を利用した、擬似的な反射です。
バリアの判定飛び道具1個、制限用の飛び道具を4個出し、
それぞれが出ている間にもう1個反撃用の飛び道具を出す。
そのままでは飛び道具個数の制限に引っかかり、反撃用飛び道具は出ません。
バリア判定がヒットか、飛び道具と相殺していれば飛び道具の個数が減り、反撃用飛び道具が出る、といった仕組みです。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1035 -1 1 9 0 43 9 0 1 0 0 9 -1 0 0 0 0 0000 112024012000 000000000000 000000000000 ;バリア
1036 -1 1 20 0 43 9 0 1 0 0 9 -1 0 0 1042 0 1000 112024012000 11A03F11A03F 000000000000 ;
1037 -1 1 20 0 43 9 0 1 0 0 9 -1 0 0 1051 0 1000 112026012000 11A03F11A03F 000000000000 ;
1038 -1 1 20 0 43 9 0 1 0 0 9 -1 0 0 1052 0 1000 112026012000 11A03F11A03F 000000000000 ;
1039 -1 1 20 0 43 9 0 1 0 0 9 -1 0 0 1053 0 1000 112022012000 11A03F11A03F 000000000000 ;
1040 -1 1 20 0 43 9 0 1 0 0 9 -1 0 0 1054 0 1000 112022012000 11A03F11A03F 000000000000 ;
1041 0 20 20 0 43 9 0 1 0 0 9 -1 0 0 1060 0 1000 112022012000 11A03F11A03F 000000000000 ;通常はここの飛び道具は出ない
1042 -1 1 18 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;バリア判定
1043 -1 1 19 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1044 -1 1 18 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1045 -1 1 19 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1046 -1 1 18 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1047 -1 1 19 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1048 -1 1 18 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1049 -1 1 19 0 44 9 0 1 0 0 9 1 U 1 0 1 0000 112000012000 000000000000 016048034000 ;
1050 1050 9 18 0 53 9 0 1 9999 0 9 1 0 0 0 0 0000 112000012000 000000000000 000000000000 ;
1051 -1 1 19 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;バリア制限用
1052 -1 1 18 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1053 -1 1 19 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1054 -1 1 18 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1055 -1 1 19 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1056 -1 1 18 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1057 1050 1 19 0 44 9 0 1 0 0 9 1 0 0 0 0 0000 112000012000 000000000000 0000CE0000CE ;
1060 -1 1 18 0 44 9 200 1 0 0 9 1 U 9 0 1 0000 112000012000 000000000000 00E04101B009 ;跳ね返し成功反撃用
1061 1060 1 19 0 44 9 200 1 0 0 9 1 U 9 0 1 0000 112000012000 000000000000 00E04101B009 ;
[ラウンド開始時演出]
所謂、イントロってやつ。
motion.lstは開始時必ず Num 0 から読み込まれるので、
ニュートラルを0以外に記述してしまえば開始時のみの演出が作れる!…という原理。
以下の例ではラウンド開始時のモーションとしてNum 420 に飛ばし、
立ちニュートラルは Num 1 から開始するようにしています。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
0 420 10 255 0 53 9 0 1 0 0 9 -1 0 0 0 9 0000 000!!00000!! 000000000000 000000000000 ;開始デモに飛ばす
1 1 3 0 0 0 9 0 1 0 0 9 -1 0 0 0 9 0001 11205C012000 10E07400F05A 000000000000 ;立ち
command.lstの立ちニュートラル指定部分も修正します。
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
0 n 00000 000 1 -1 ;立ち
まだこのままだとガードや攻撃くらい後 Num 0 に戻ってしまいますので、KFXのsystemフォルダ内のmotion.lstの内容をコピー、
編集中キャラのmotion.lst内にペーストし、
以下のように0に戻さず、任意の立ちニュートラルに戻すよう書き換えます。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
100 110 -1 240 0 23 9 0 0 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;JMP-FALL
110 1 2 241 0 23 9 0 1 0 0 9 -1 0 0 0 9 0001 112060012000 000000000000 000000000000 ;JMP-S-END
111 1 4 241 0 23 9 0 1 0 0 9 -1 0 0 0 9 0001 112060012000 000000000000 000000000000 ;JMP-B-END
150 1 1 200 0 30 9 0 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-G
160 1 7 200 0 30 9 -15 1 0 0 1 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-S-G
170 1 10 200 0 30 9 -30 1 0 0 1 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-B-G
180 30 1 201 0 31 9 0 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-G
190 30 7 201 0 31 9 -15 1 0 0 1 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-S-G
200 30 10 201 0 31 9 -30 1 0 0 1 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-B-G
210 1 10 200 0 30 9 -15 1 0 0 1 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-S-G
220 1 15 200 0 30 9 -30 1 0 0 1 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-B-G
700 1 8 210 0 50 9 -20 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-FSC
710 1 12 210 0 50 9 -30 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-FBC
720 1 8 220 0 50 9 -20 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-BSC
730 1 12 220 0 50 9 -30 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-BBC
740 1 10 210 0 50 9 -10 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-JSC
750 1 15 210 0 50 9 -10 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;STA-JBC
760 1 8 211 0 51 9 -20 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-FSC
770 1 12 211 0 51 9 -30 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-FBC
780 1 8 211 0 51 9 -20 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-BSC
790 1 12 211 0 51 9 -30 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-BBC
800 1 12 211 0 51 9 -10 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-JSC
810 1 17 211 0 51 9 -10 1 0 0 9 -1 0 0 0 9 0000 112040012000 000000000000 000000000000 ;SIT-JBC
820 -1 1 220 0 52 9 0 1 0 0 9 -1 0 0 0 9 0000 112057012000 000000000000 000000000000 ;JMP-C-KOKE
821 -1 1 221 0 52 9 -40 1 80 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
822 -1 4 221 0 52 9 -40 1 0 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
823 -1 4 222 0 52 9 -40 1 0 0 9 -1 0 0 0 9 0000 112033012002 000000000000 000000000000 ;
824 -1 -1 223 0 53 9 -40 1 0 0 9 -1 0 0 0 9 0000 112034012000 000000000000 000000000000 ;
825 -1 1 224 0 53 9 -40 1 0 0 9 -1 0 0 0 9 0000 11201D012000 000000000000 000000000000 ;
826 -1 1 224 0 53 9 0 1 30 0 9 -1 0 0 0 9 0000 11201E012000 000000000000 000000000000 ;
827 -1 -1 224 0 53 9 -40 1 0 0 9 -1 0 0 0 9 0000 112020012000 000000000000 000000000000 ;
828 120 6 224 0 53 9 0 1 0 0 9 -1 0 0 0 9 0000 11201E012000 000000000000 000000000000 ;
830 -1 1 220 0 52 9 0 1 0 0 9 -1 0 0 0 9 0000 112057012000 000000000000 000000000000 ;JMP-C-KAI
831 -1 1 221 0 52 9 -40 1 80 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;HUKU
832 -1 4 221 0 52 9 -40 1 0 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
833 -1 4 222 0 52 9 -40 1 0 0 9 -1 0 0 0 9 0000 112033012002 000000000000 000000000000 ;
834 -1 -1 240 0 53 9 -40 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
835 1 2 241 0 53 9 0 1 0 0 9 -1 0 0 0 9 0001 112060012000 000000000000 000000000000 ;
840 -1 1 220 0 53 9 0 1 0 0 9 -1 0 0 0 9 0000 112057012000 000000000000 000000000000 ;JMP-C-YOKO
841 -1 1 221 0 53 9 -120 1 80 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
842 -1 4 221 0 53 9 -120 1 0 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
843 -1 4 222 0 53 9 -120 1 0 0 9 -1 0 0 0 9 0000 112033012002 000000000000 000000000000 ;
844 -1 -1 223 0 53 9 -120 1 0 0 9 -1 0 0 0 9 0000 112034012000 000000000000 000000000000 ;
845 -1 1 224 0 53 9 -120 1 0 0 9 -1 0 0 0 9 0000 11201D012000 000000000000 000000000000 ;
846 120 6 224 0 53 9 -120 1 0 0 9 -1 0 0 0 9 0000 11201E012000 000000000000 000000000000 ;
850 -1 1 220 0 52 9 0 1 0 0 9 -1 0 0 0 9 0000 112057012000 000000000000 000000000000 ;JMP-COMB
851 -1 1 220 0 52 9 -20 1 200 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
852 -1 -1 220 0 52 9 -20 1 0 0 9 -1 0 0 0 9 0000 112034012000 000000000000 000000000000 ;
853 120 6 224 0 53 9 0 1 30 0 9 -1 0 0 0 9 0000 11201E012000 000000000000 000000000000 ;
860 -1 1 220 0 52 9 0 1 0 0 9 -1 0 0 0 9 0000 112057012000 000000000000 000000000000 ;JMP-COMB
861 -1 1 220 0 52 9 -20 1 200 0 9 -1 0 0 0 9 0000 11204D012000 000000000000 000000000000 ;
862 -1 -1 220 0 52 9 -20 1 0 0 9 -1 0 0 0 9 0000 112034012000 000000000000 000000000000 ;
863 120 6 224 0 53 9 0 1 30 0 9 -1 0 0 0 9 0000 11201E012000 000000000000 000000000000 ;
870 -1 4 220 0 50 9 -40 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;HURAHURA
871 -1 4 210 0 50 9 -40 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
872 -1 4 220 0 50 9 -30 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
873 -1 4 210 0 50 9 -30 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
874 -1 4 220 0 50 9 -20 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
875 1 4 210 0 50 9 -20 1 0 0 9 -1 0 0 0 9 0000 112060012000 000000000000 000000000000 ;
[連続入力]
フラグ使用方法の基本。
・・・が、普通に三段あたり作るとリバーサルフラグやガードキャンセルフラグをいきなり総動員になります。
ですが初心者脱出には必須・・・だと思いますよ。たぶん。
基本的な流れですが、
一段目の技をcommand.lstの優先度の高い下に配置、
その技のmotion.lstの途中でフラグを立てて、
そのフラグを立てた二段目用のcommandを優先度低い上に配置・・・。
って、なんか文章にするとわけわかんないですね。例あげていきましょうか。
まず簡単に二段入力を作ります。フラグはリバーサルフラグ(command.lstでは00001、motion.lstでは0)
から使いましょうか。(失敗しても実害が少ないフラグなので・・・)
CmdNum--Command--Cancel--Std-AmnNum--Vx--Comment
100 214P 00001 011 1020 -1 ;二段目
101 214P 00100 011 1000 -1 ;一段目
まず、214Pを入力した場合連続入力技の一段目である101が呼び出されます。
しつこいかもしれませんが、優先順位の高いコマンドほど下の、番号の多いものになります。
この点に注意しないといきなり二段目がでるので注意です。
では、motion.lstの変更点について。
-Num---To-Sp-Pic-De-Ci-V---VxRx--VyRy-C-CL-G-Da--Hit-H-Flag-Def1---------Def2---------Att1---------COMMENT
1000 -1 1 0 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205C012000 10806F010059 000000000000 ;一段目の技
1001 -1 1 51 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205C012000 10806F010059 000000000000 ;
1002 -1 1 62 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 11205C012000 10E07201C048 000000000000 ;
1003 -1 2 71 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 112063012000 10A06F01D050 000000000000 ;
1004 -1 2 72 1 43 9 0 1 0 0 9 -1 0 0 0 0 0000 112063012000 10E07B01305E 000000000000 ;
1005 -1 1 73 1 43 9 80 1 0 0 9 1 U 8 0 1 0000 11206E012000 11C06D026037 00C05F034038 ;
1006 -1 1 74 1 43 9 40 1 0 0 9 -1 0 0 0 9 0000 11206B012000 11E053000000 000000000000 ;
1007 -1 1 75 1 43 9 20 1 0 0 9 -1 0 0 0 9 0000 11206B012000 11E053000000 000000000000 ;
1008 -1 1 76 1 43 9 10 1 0 0 9 -1 0 0 0 9 0000 11206B012000 11E053000000 000000000000 ;
1009 -1 3 76 1 43 9 0 1 0 0 0 -1 0 0 0 9 0000 11206B012000 11E053000000 000000000000 ;<入力受付部分にフラグを立てる
1010 -1 6 76 1 43 9 0 1 0 0 9 -1 0 0 0 9 0000 11206B012000 11E053000000 000000000000 ;
1011 -1 2 13 1 43 9 0 1 0 0 9 -1 0 0 0 9 0000 11205C012000 10806F010059 000000000000 ;
1012 0 1 0 1 40 9 0 1 0 0 9 -1 0 0 0 9 0001 11205C012000 10806F010059 000000000000 ;
以上のように、二段目の技を入力できる部分にフラグを立てておく・・・これでOK。
ここでもう一度214Pの入力が完了していれば追加入力技が呼び出されるわけです。
リバーサルフラグを使用しているので、
起き上がり(motion.lstの120)に通常設定されているフラグをはずしておくことを忘れないように。
じゃないとリバーサルで二段目の技がいきなりでるわけで・・・
三段目も基本はこれと同じです。使うフラグとしてガードキャンセルフラグを増やすぐらいで・・・
ですがこちらも「ガード時のフラグを全部はずさないとガードキャンセル技として三段目が発動」
という事態になるので気をつけましょう。
なお、各種拡張エンジンでは使用できるフラグがほぼ無制限となっているので、
わざわざガードキャンセルフラグやリバーサルフラグを潰す必要はありません。
[chara.bmpの容量節約技術]
chara.bmpは開いてみれば分かりますが、16ドット×16ドットのブロックが集まってできています。
で、このブロックですが「違う画像でも16×16で同じパターンがある場合は使いまわす」ように作られているので、
それを理解してコンバートしていくと画像登録枚数が飛躍的に増えます。
そこを踏まえた上で、画像容量の節約方法を簡単に説明しておきます。
<基本的節約>
まずはKFX Pattern Maker(Plus Pattern Maker)の「位置合わせ」を使い、
表示されている「使用セル」を確認しつつ位置調整しましょう。
さらに、D-pixed,edgeなどグリッド表示ができるツールで画像を開き、
16ドットのグリッドを設定、表示し、
1ドットだけはみ出ている部分等を違和感が無い範囲で消したり、
微妙にサイズ調整したりして削っていきます。
上の例では毛先が1ドット出ていますね。
この1ドットだけでブロック1個使うとかバカらしいので、消してしまいましょう。
<使いまわせるパーツを使いまわす>
いくつかのキャラ画像をざっと見て、使いまわせそうな部分をコピーしていきます。
例えばの上のTta-02の立ちニュートラルですが、四角で囲まれた足の部分は同じものになっています。
(経験上の話になりますが、地に付いてる部分ということもあり足は比較的使いまわしが利きやすいです)
<16ドットブロックを組み合わせて構成する>
16×16でいくつかパーツを作り、
それをパズルのようにつなぎ合わせながらグラフィックを構成していくとさらに容量節約に繋がります。
例えば上の画面全体攻撃のエフェクトですが、実際に使用しているブロックは38のみ。
画像にしてもこの通り、縦16ドットの範囲に収まってしまいました。突き詰めればもっと少ない容量でもいけそうです。
拡張エンジンでほぼ無制限に近い画像を使用できるようになったとはいえ、
使い込めばKFXでも200枚近いグラフィックが使用可能だということは覚えておいてください。
メニューへ戻る