ろご
知識0でどう改変したらいいものか悩んだ人向けに。
cnsを理解する流れと、実際に技をどうやって改変していけばいいのかを初心者向けに説明していきます。
プログラミングに疎い僕でも出来たので安心して追いかけていけます。

取り上げたのは改変についての話。
とはいえcns理解は0からキャラ製作をするためにも繋がっているのでぜひぜひ見てね!

もくじ

はじめに
0.) 製作用ソフトを揃えるべし
1.) 弄りたいキャラを選ぶべし
2.) とにかく魔改造すべし
3.) 技をパクるべし
4.) 豆知識記事に目を通すべし
あとがき


補講A.) Statedefを理解すべし
補講B.) 魔改造具体例
補講C.) Wikiを一度眺めるべし

追補.) hitdef,proj,helperは舐めるべし
追補2.) AIがキャラ評価に繋がると認識すべし

はじめに

MUGENのランクに関して、製作視点で大まかな区分をすると
「並強」 「凶狂」 「神」
の3つに分けられます。
どれも重視される点は異なります。今回の記事ではこの中で最も緩い「凶狂」の改変に焦点を当てています。
その理由は3つ。

[1] 自分がそのランクしか改変したことないから

周知の通り。
手つけたことないものを教えられるわけがない。

[2] 他二つのランクの敷居が高い

なんとなく意味はわかるかと。
並強において特に重きが置かれるのは「原作再現度」「操作して楽しいかどうか」です。一目で分かる壊れ性能は忌避されます。
かたや神では「勝てるかどうか」
勝てば良かろうなのダァ!なランク。もちろん大魔法の神秘性に惹かれて入る人もいますが、ここ2,3年位は演出方面より記述方面に尖った人が多い印象。仕様についてしっかり理解しないといけない。

[3] 「改変したい」って漠然と思ったときの想定ランクが凶狂

なぜなら動画が賑わってるから。
操作前提でなく、本能のままに弄るとこのランクになりがち。

今回のこの記事は本当にcnsについて一切知らず「triggerってなんだよ引きがねか?」クラスな人でも改変できるようになるまでの効率的な道を示したものです。
ドット打ちから求められる製作より改変の方がcnsのみの理解(記述理解)をしやすいので、並強・神キャラ作りたい人にも当てはまるからついて来てね。


0.) 製作用ソフトを揃えるべし
こちらの記事」ではMUGENを観戦で楽しむための準備を既に済ませました。
このなかでCharRegisterはいちいちランセレに飛ばず、直接対戦画面を呼び出すことができるので愛用してください(命令)

今回は製作・改変で重要なソフトを紹介します。

SAE

Screenshot_18
sff,air,snd編集の全てがこのソフトでこと足ります。

多機能ソフトにしてはかなり軽量なのがVeryGood!!
.sff, .air .sndに関連付けしておくといちいち読み込ませなくてもファイルをダブルクリックで開くことができるようになるのでとっても便利です。

このような設定がおすすめかな?
イメージ6912
他のソフトとは違って、読み込みを増やしても軽量なので安心。

Padie / Yukari

ゆかりさまぷりちー!
今回使い方は説明しません。ただし、いつかは必ず使うものなので紹介。
優秀な減色ソフトです。エフェクトやカットインをsffへ登録するときに使います。
とりわけYukariは比類ないほど、最高峰のクオリティで、ほぼオリジナル通りに綺麗なまま減色してくれます。
僕は複数やるならPadie、一枚絵を綺麗に減色したいならYukariと使い分けています。

サクラエディタ

no title
必須ではありませんが、見やすくなるのでおすすめなテキストエディタです。
配布から導入まで、全てこちらの製作者様のページでしっかり解説なされているので「こちらのリンク」から設定ファイルをDLしましょう。

MUGEN_SpeceDeleter

約束された勝利の腕立て伏せ
神で知らぬ人はいない新人類、ウィッチ・アンジェリーヌ製作者のOracle氏が配布なさっているツール。
大変便利なのに知名度がやけに低いので紹介。
上と同じく必須ではないものの、あると便利なツール
記述の無駄をごっそりシェイプしてくれる整形ツールです。
人の記述をコピペ(後述)するとき、この処理を通すとサラッとします。
例えばこれが。
[State 10710, HitOverRide]
type = HitOverRide
trigger1 = 1
attr = SCA, AA, AP, AT
slot = 0
stateno = XXXX
time = -1
ignorehitpause = 1
こう。
[State ]
type=HitOverRide
trigger1=1
attr=SCA,AA,AP,AT
slot=0
stateno=XXXX
time=-1
ignorehitpause=1
人によっては公開するときにこれに通して、補足情報を読まれないように全部消すって使い方をしていらっしゃるらしいですよ。
最初のうちからこれに慣れておくと記述をすっきり書けます。
いちいち無駄な空白打つ美学もあるそうですが、巨視的に見てそのスペース押す時間が無駄です。
スッキリしてる方が綺麗よ。

(※余談
「空白削除しなくてもよくね?」とTwitterでけっこうツッコまれました(^q^)
僕は最初から空白なしでいったのでむしろ空白あるほうがムズムズしちゃいます。
打つのも無い方が早いし、なにより他の人の記述読むときにSpaceDeleterを使うとその人の記述癖に合わせる必要がなくて楽なんすよ。個性を潰してくれるので統一的に読める。
だから、自分でやるときも空白なしで始めた方が後々のことを考えるとおすすめなんじゃないかなーと思ってここでは勧めてました。
んんwwww空白保持はありえないwwwwww

ただ、初心者なら空白ありで可読性保持しておいた方が良いという意見もあり→[アインツ氏の意見]
ここは考え方の違いなので、舵取りは自分が気に入った方でいいと思います
とはいえ、空白を削除するツールがあっても空白を挿入するツールはないので私は自分流をおすすめするぞー)

Clibor

!1
MUGEN関係ないユーティリティツールなので知らない人が多い。記述系にはどえりゃあ便利なツールなのに。
「クリップボードを拡張するソフト」です。
コピペって基本は1つしか出来ないじゃないですか?
このソフトを入れるとコピー履歴が表示され、ぽこぽこコピペできます。
さらに定型文機能もあるので、よく使う記述はここに登録して楽をしましょう。後述します。
これ、PCで作業する人なら誰にでも当てはまるくらい便利なツールなんですよね。
お仕事の作業効率改善に超貢献します。
教えたので崇め奉ってくださいね!(上から目線てんこもり)

Google

ソフトではないけど使える(あたりまえ)
読んでて分からない記述があったとき、調べたら必ず解説が転がってます。
最初のうちはガシガシ検索して手元のメモ帳なりブログなりにまとめる。
ググってもよく分からなかったときには、この記事にコメントで投げかけてくれたらなるたけ答えますのでお気軽にどうぞ。


1.)弄りたいキャラを選ぶべし
素体元がなければ改変できないから当たり前の話。
改変したいと思ったなら弄りたいキャラがいるはずなのでそいつを素体にしましょう。もちろん規約を熟読し改変可能なやつを。
「規約で禁止になってないから改変していいな!」って発想はやや危険なので気をつけておいた方がいいかもしれません。とある改変者が元から人気なキャラの強化パッチを作ったものの、後から改変禁止が規約に追加されたなんてケースを見かけたことがあります。
改変したいキャラがまだMUGEN入りしておらず、スプライト登録からしたい場合は今回の例だとオススメしません。地味な作業が続いちゃうので。
あとはMUGEN入りさせたらヤバイ系統のゲームがあるのでそこらはなんとなく察してください。明記できない。
さらにドットから打つ場合はとてつもなく長い道のりになります。一年計画覚悟ならってところ……

「牛丼を作るぞ」ってときに
吉野家で買ってきて自宅で七味や紅しょうがを載せる→強化パッチ
材料は全て整っててレシピもある、牛すき丼にもできる→改変
材料調達からスタート→MUGEN入り
田んぼを耕す→ドット打ち
!2


素体用意とcns理解は学ぶスキルが違って繋がりません。
エフェクト登録は別途必要なときに知ればいいだけの話です。
選ぶキャラに対して少しおせっかいすると、緻密な原作再現キャラはオススメできないかも。変数多量で読みづらい。
ただし、愛さえあればどうにでもなるので愛ゆえに選んでも構いません。


2.)とにかく魔改造すべし

やっと改変に。これまでのは準備。
記述知識0でも感覚的にできる改変があります。
「ライフ・攻撃力・防御力のガン上げ」ですね。
俗に言うステータス弄り。強凶でキャラを調整する際にはよく用いられます。
これを改変とするかどうかは製作者によりけり。
「2割増減の範囲に収まっていれば問題はない」と、初々しいにわか投稿者だったときにお聞きしました。参考程度に。
KFMでも攻撃力を100000にすればワンチャンキャラに化けます。
1011
調整改変で次に用いられるのはゲジマシ・ゲジマユ
これらの搭載はぐぐったらすぐ出てくるので割愛。
4行程度差し込むだけでできるほど容易なので動画投稿者の方もこれくらいはちょくちょくなさる方はいらっしゃいます。

ここで指した魔改造はそうではなく、いわゆる純粋凶化(狂化)と呼ばれるもの。
簡単な例を挙げてくと、技を一撃にしてみるとか。攻撃範囲を大きくしてみるとか。数を多く出してみるとか。連続hitさせるとか。
しっかりしたものなら、本来繋がらないルートで技を繋げたり、死に技をバフしたり。
大正義:無敵追加なんてのもあります。

なぜそれをおすすめするのかというと、基本骨格を弄らずに上乗せで強くしていくことが出来るからです。
0から1を創り出すのは遥かに労力が必要なことです。
あらかじめ大枠が用意されたうえで、何かを付け足していくアレンジメントをしながら記述のお勉強へと繋がっていけば万々歳です。
達成感を早く味わえることでモチベーション維持にも繋がります。

そんなことをするためには、どこを弄ればいいのか。
LifeやAttackと違って、技がどこに書いてあるのかはぱっとひと目じゃ分からない。
そこで補講を用意しました。その後は具体例を交えて見ていきます。

補講A.) statedefとは

「そもそもstatedefってなんだよ!!」って方が多いはずなので説明。
軟骨カレーさんの用語集』を参考に噛み砕いてみました。
DQ
まず、ドラクエ(DQ)の戦闘画面を想像してください。コマンド入力画面です。
そこであなたが取れる行動はいっぱいあります。戦う、呪文、道具、逃げるの大まかな行動。格ゲーでは歩く、ジャンプ、ガードなどなど。
この、「動作のひとつひとつ」"statedef"です。
defはdefinitionの略で、行動パターンをひとつひとつ定義しているのです。
戦うときはhitdefと呼ばれる攻撃記述を書いて、相手に攻撃が当たるようにしておく。
呪文・道具ではhelperさんを使って本体キャラとは別の存在を呼び出します。
歩いたり逃げたりするときはvelsetで速度を決める。後ろを向いて逃げるならturnさせたり、nothitbyで無敵をつけようかなーとか。
こういったhitdef, helper, velsetと呼ばれる、キャラの具体的な行動を定義していくものを1つずつ"state"(ステートコントローラ)と呼びます。

statedefはこれら複数のstatesを入れる箱のようなもの。"キャラの状態"を"いくつかの要素(state)"に分けて定義(def)していったものです。
MUGENにおいて、statedefは数字で割り振っています。[statedef 200] [statedef 1310]のように。
数字は2147483647まで使用可能です。この値はMUGENで扱える最大値。凶悪だと常識?
9をたくさん羅列するより見苦しくないってだけで、覚えなくてもいいです。
いちおう、自分の覚え方は「新品(にいしな)シワ見ろよな」
182
適当に考えた語呂なので、他にももっと綺麗な語呂はあるかもしれません。

共通動作としてstatedef 0-190までは基本動作ステート(立ち、歩き、ガードなど)、statedef 5000-5150がやられステート(攻撃を受けたときの挙動)としてすでに使われています。
何言ってるのかいま分からなくても、いくつかいじっていくと分かるようになります。基本ここ弄らなくてもいいわけだしね。
とくにやられステートは僕も何が何なのか全部把握してません。
5300 気絶アニメ
なぜなら製作にも改変にも覚える必要はないからです。
そもそもそらで説明可能なくらい把握してる人なんてそれこそ並にもいないでしょう。
基本的にこれらのcommonはMUGENがデフォルトで用意してあるため、覚える必要がないからです。

重要なのは、キャラの状態とstatedefは1対1対応していること
何が言いたいのかというと、
どんなに複雑な技であってもstatedefに全て情報が書かれております
そして、同じ番号のstatedefが2つ以上あったとき。
優先度の低いstatedefは機能せず一つのみを読み込みます。
勝手にドッキングしたりなんてことは絶対ないです。決められた枠組みのなかだけを安心して読み解くことができるのです。

ここでいう優先度とはファイル内の上下に加えて、キャラ名.defのst順を指します。
stが最高優先度。以降は数値が上がるにつれて下がっていき、st9が最低優先度
(さらに低いものとしてstcommonがあります。凶悪技術の邪眼記述はこの優先度からcommonに置くことも)
(ソース:lunaの倉庫「defの優先順位」)

つまり、ここ(statedef)をコピペするとペースト先キャラはコピー元とそのまま同じ挙動が再現できるのです。3章ではこれを取り扱います。

ここで軽く、次に扱う[statedef -1]の解説。
お気づきの通り、数字にマイナスがついています。他に許される負値は[statedef -2] [statedef -3]の三種類のみ。
[statedef -4],[statedef -13]などはありません。
kumagawa
先ほど、statedefは状態を指定すると書きました。ただし、これら3つのstatedefはちょっと違う性質を持ちます。例外3兄弟です。
何かというと、このマイナス三兄弟は"常時読み込まれるstatedef"なのです。

例をあげます。
常に体力回復させたいなってとき。どうしますか?
statedefに体力回復の記述をするわけですね。"lifeadd"といわれるステコンを使います。そのまんま、ライフ回復させるステコン。
これをどこに置くべきか。たった一つのstatedefに置いたら、そこだけでしか機能しません。
二つでも三つでもダメ。
筋肉解決法として、全てのstatedefにこのlifeaddを設定しましょう
これなら常に機能してくれるので、いつもライフ回復するようになります。
おしまい。
Urien
……嫌ですよね?
そんなとき、これらstatedef -1,-2,-3にたったひとつ。
たったひとつだけlifeaddのステコンを追加するだけで。攻撃中でも、やられ中でも、走っているときでも常にライフ回復するようになるのです。

オンラインゲームを少しかじってた人なら普段のstatedefがアクティブスキル。このstatedef -1~-3がパッシブスキルという認識でほぼ合ってます。
190
よくわかんなかったらゲジマシ・体力常時回復で使うstatedefって認識で問題ありません。
今のところはこの程度な認識に抑えておいて、実際にちろちろいろいろ弄り始めるとなんとなく理解できることかと思われます。

さらに深いところまで行くと、こちら読み込み順序は
statedef -3 → -2 → -1
になります。
この順序はgametime抜けをするときに必ず必要になる知識なので片隅にでも置いておいてください。

また、-2は相手にステートを奪われているときでも読み込んでくれます。逆に、-3,-1は相手にステートを奪われていると読み込みません。
なので、厳密に常時読み込むstatedefは[statedef -2]だけかもしれません。
そんなわけで僕は-3はAI用、-2は常時読み込む用、-1はコマンド用と分けています。


さて。
なら、私たちが弄りたい技に対応するこのstatedefをどうやって知るのか。
statedefを1から読んでいくなんて面倒なことは勘弁でしょう。
なので、デバック表示をしましょう。
[Ctrl+D]を押すと表示されるこの白文字、全てに意味がありますが今回見たいのはここ。
イメージ6877
デバッグ表示の解説は他サイトに詳しくあるのでスキップ。
(デバッグ表示について→「MUGEN CNS WIKI CHAOS デバッグ
デバッグキーが使えない→「MugenJP-デバッグキー」「戦闘画面の文字の消し方&デバッグキーの使い方」)


コマンドを入力して技を出すとここ(STATE NO=XXXX)に、その技がどのstatedefで定義されたものなのかを示してくれます。
AIで勝手に動くキャラならその技を出した瞬間に[pause]キーで止めて確認すれば、コマンドを入力する必要がありません。

わざわざ技入力せんでもstatedefの数字を知る手段は他にあります。
せっかく記述に慣れ親しむわけだからこちらも知るべきでしょう。
キャラ名.defで『cmd=XXX.cmd』となっているcmdをメモ帳かサクラエディタで開きましょう。
間違ってそのまま開くとコマンドプロンプトが開くので注意、PCに支障はないはず。
このcmdファイルは他のテキストファイルとは少し特殊で[Command]群[statedef -1]から構成されます。

んで、[statedef -1]内にこういった記述があるはずです
[State -1]
type=ChangeState
value=2500
triggerall=command="HCBHCF_z"
triggerall=power>=3000
triggerall=NumHelper(2500)=0
triggerall=Roundstate=2
trigger1=ctrl=1&&StateType=S
trigger2=stateno=200&&movecontact
trigger3=stateno=205&&movecontact
これこそが、さきほど上げた「戦う」のコマンド"入力すること"に該当する記述なのです。
changestateとは、「キャラクターをvalueに書かれた値のstatedefに飛ばすこと」を指します。
この場合なら2500に飛ばします。
で、そのstatedefへ移行する条件をつらつら書いているのが"trigger"くん。
189 Win 3
日本語では"きっかけ"、むしろトリガーで通じる?
このtriggerが満たされない限り、絶対にステートが発動することはありません。門番です。

triggerは0(偽)0じゃない(真)で判断し、真のみのときにおっけーね!ってことでstateが読み込まれます。
この0じゃないってのが少し曲者。
c-zero
たとえばtrigger1=240でも、これは真です。
また、trigger1=-10。これも真。
そう、負の値でも真になります。知らない人多めなので留意しておきましょう。


triggerallはtrigger2,trigger3など、他の条件全てに掛かっていきます。
この場合なら、いちいちtrigger1,2,3に試合中だったり3ゲージ必要なのよって情報を書き込んでいく必要はないわけですね。

最初見たときは面食らって(もうムリ寝よ)となるかもしれません。
Ange
ただ、これはとっても読みやすい部類なので各々分からないところを一つずつググって理解してみてください。
AI記述だとここが一気に読解難易度上がって「読ませる気ないでしょ?」ってツッコミたくなりますから。
それはある種的を得たツッコミでもあります。自分以外の他人に読ませないよう、あえて難読化させてる人もいます。
神なら特に。
記述が読まれないように、sffやsndをパクられないようにexeファイル化させたキャラが超局所的に流行ったこともあります。

閑話休題。
例えば、今回のtrigger1については
「あるコマンドを入力 and 3ゲージ以上 and helper(2500)なし and 試合中」(triggerall)であり、
「操作可能 and 立ち状態」(trigger1)
な状態。
この段階で意味不明なのは『helper(2500)なし』のところかと思われます。あとで拾うので安心してください。

他の記述として、numhelper(2500) = 0!numhelper(2500)と表記することがあります。
!は逆(not)を意味します。真を偽に、偽を真に。
くまー
この場合なら「helper(2500)がある、わけない(=helper(2500)はない)」って条件に合えば真。
!は最初の頃は少しややこしいので、まず!なしに読んでそれを満たすかどうか考えてみるとおすすめです。
知らないと途方にくれるんだよね、検索かけることできないから。頭の片隅に置いといてください。
記号の使い方に関してよくワカンネってときは、「MUGEN 演算子」で検索すると解決することでしょう。
(参考サイト:「■演算子について」)

もっともよく使われるのは!ishelper
cnsわかんない人が直面して「なんだこれはァ……」とつまづく最初の関門かなって。
なんだかんだ
さっきの通りに考えて、「自分はヘルパー、じゃない」ってわけで、これはヘルパーでなくキャラ本体のみが読み込めるようにしたものです。
AI常時起動化のとき、キャラによって分身が現れるのはこれがないせいでヘルパー自身もAI起動しちゃうからです。
余談として、この!の使い方はたまに厄介なときがあります。
以前取り上げた「スペース消去でMUGEN落ち(triggerX!=)」では、
trigger1=!(XXX)はオッケーでも、trigger1!=(XXX)はダメってのを明らかにしました。
これ、実際のキャラの記述なので他にもいるかもしれないからとくに気をつけて。
他にもtrigger1=!(A=B)はOKでも、trigger1=(A!=B)はダメってステコンがあります。
他に、
;trigger1=statetype!=a
みたいに、文頭に;があるとき。
これは「ここはコメントなので読み込まないでください」という意味です。
以前この記事「Hitdefが機能しない」で取り上げました。

[state ,エターナルフォースブリザード]
これは読み込まれます、しかし
[state ]エターナルフォースブリザード
これは読み込まれません。
コメント化してないせいで、]が閉じきってないから。最悪なことにstate自体がなかったことになります。
ならどうすんの?ってときに、このコメントアウトくんの出番。
[state ];エターナルフォースブリザード
こうすればいいのですな。
準備のサクラエディタ設定を導入した人はこのコメントアウトが色変えで分かりやすくなってる。
……はず!なので安心してください。


どれがどの技なのか「[state -1,技名]」であったり「[state -1];技名」で書いてないとき。
2つの手段があります。

1つめ、真面目な方法

僕はやってない。
command="HCBHCF_z"を見て判断。
[Command]
name="HCBHCF_z"
command=~DF,B,DF,F,z
time=20
この入力コマンドに該当する技名が、今回であれば先ほどの[statedef 2500]に対応しています。
DやBが何を指すのかはググると出てきます。
(参考サイト:「cmdファイルの簡単な読み方」)

2つめ、おすすめ

この記述をstatedef -1の直下に置く。
[state ,デバッグ用]
type=changestate
trigger1=command="start"
trigger1=ctrl
trigger2=var(59):=0
value=XXXX

XXXXは[statedef -1]内にあるchangestateのvalueで出したい技っぽそうなvalueを置いてください、
通常技は200-400台。必殺は1000台。超必は2000,3000台なイメージ。
一発で探しだす必要はないので、changestateの上からローラー作戦もいいかもしれません。
これで実際にMUGEN上でstartボタンを押せばその技が出ます。
エラーが出たら"start"のところを"s"にしてみてください。それでもダメなら"a"でaボタンを押しましょう。
ようは「挑発コマンド」にあたるものを勝手に「出したい技のコマンド」にすればいいのです。
Dangun
しかもこの方法だとどんなにややこしいコマンドの技や厳しい条件の技でもオーケー。

そうして特定したvalueについて、他のファイルから[statedef XXXX]を検索すれば見つかります。
絶対にあります。1対1対応なので無いわけがないのです。

さて、そんなわけでこの技がどこに書いてあるか分かりました。

じゃあどう弄っていこう。
適当に2パターン(A.)判定を大きくする B.)たくさん出す)のルートを追っていきます。
A.) 判定を大きくする

イメージ6878
この技の判定を馬鹿みたいに大きくしてみようと思います。さんざん弄くり回されるモルモット役を引き受けていただけたのはラムダデルタ卿です。
判定はどこにあるのかというと、「airファイル」に記載されています。
airファイルはanimがずらーっと記載されているファイルです。
ただ、そこを眺めてもさっぱり意味不明なのでやはりstatedefから参照することになります。
Screenshot_5
今回のこの技はanim=210なようです。
airファイルを覗きましょう。

SAEでsffを開くと、先ほど0章でちゃんと設定した場合はairファイルも読み込まれています。
空っぽなときはドラッグして読み込ませましょう。
Screenshot_6
右上の空欄が検索ボックスとなります。
Screenshot_7
ありました。
なかった場合は読み込んでいるanimが違います。ここに出てこないわけがありません。


では、判定の説明。
判定には二つ、攻撃判定(clsn1)当たり判定(clsn2)があります。
Screenshot_8
攻撃判定は赤枠。当たり判定は青枠で表示。
んで、強くしたいなら攻撃判定を大きく。当たり判定を小さくすればいいわけですね。
ただし、前者はまだしも後者は不条理なコンボ拒否につながるので勧められたものではありません。
さらっと「当たり判定小さくして(or消して)強くしました!」なんて言うと(なにやってだこいつ……)と思われても仕方ないです。
Screenshot_9
上の方のツールバーにあるこれらのボタンはマウスのせれば説明出るから省略!
今回は元からある判定を伸ばすことにします。
Screenshot_10
ぐいーっと、こういった具合に。

編集が終わったら、左上にある保存ボタンでちゃーんと上書き保存しましょう。
ここ、よく忘れがちで「なんで反映されないんだ……?」と悩むポイント。
[Ctrl+S]でぽちぽち保存する癖があってもいいかも。
ちなみにMUGENでこのコマンドは「加速」です。
さっそくMUGEN上で見たいと思います。
イメージ6879
成功!
MUGEN上で判定を見たいときは[Ctrl+C]を押すと表示されます。
なかには[Ctrl+D]でデバッグ表示中じゃないとこの判定も表示されないと勘違いされていた方もいました。もしかして:みかえる
実際は判定だけ表示することも可能です。


今回は判定追加・変更だけにしましたが、アニメの組み立てももちろんできます。
SAEは体感的にanim組み立てたり、判定を追加できるのがとっても楽で好きです。
記述する必要なんてなかったんや!
Screenshot_11
左下にあるDef1やDef2ボタンはClsn1,Clsn2を以降のフレームに共有化させるものです。
けっこう便利なものの、なかなか文字では説明しづらいのでここで紹介してみます。具体例をどうぞ。
次のフレームにも、さっきと同じ大きさの攻撃判定をここにも反映させたいなーってとき。
Screenshot_12
このDef1を押しておき、
Screenshot_13
元からある攻撃判定を削除すると、(def1,def2ともに判定が存在しない場合に反映してくれる設定です)
Screenshot_14
こうなります。
点線で表示されている赤枠は、上の方にあるDef1の攻撃判定を引っ張っていることを指します。
簡単にanim組み立てたいってときはDef2を多用することは多いかも。
当たり判定をいちいち置いてくのも面倒だし、後から全部修正なんてなったら心砕けるからねえ。

B.) たくさん出す

射出系はprojかHelperです。
projは単純挙動しかできないので、複雑に操作することのできる十中八九Helperな可能性が高いです。
そんなわけで、Helperとやらを増やしてみたい。
triggerってのは前述の通り「条件」で、これを満たすことによりそのステートは発動します。
裏を返すと満たさなければ発動しません。
また、何度も満たすと何度も発動します。ここ大事。

Minoriko
ここでさらに大事なことがひとつ。
persistent=0というパラメータ。
これがついているステコンは一回しか発動しません。
ただし、statedefを読み込むたびにこの"persistent"はリセットされます。なのでstatedef -1,-2,-3ではこのpersistentはそんなに使えません。たまにpersistent=0を付けてるかたもいますが、とくに意味はないです。
非推奨パラメータなので、persistent=4などといったものには出会わないことでしょうがpersistent=0には結構出会うのでこれには注意。たまに僕もひっかかったり。

話を戻しましょう。
MUGENで飛び道具を出すときはtype=projectileか、type=helperの二つ。
なら、たくさん出すにはここを何度も読みこむようにすればいい。
極論、常に満たすようにすればすげえことになる。trigger1=1ですね。
今回増やしたいのは、さっき見かけた[statedef 2500]のプレゼントボックス。
Screenshot_15
どうもこの記述で出してるみたいです。

なぜこの記述と分かったのか?
それは極めて単純。
逐一他のを消して、どれを消すとプレゼントボックス(出したいHelper)が消えちゃうのかを確認すればいいのです。
一個ずつ、Helperが指すstatenoを読んでいくのがスマートでしょうがそんなことせんでもこれで一発よ。
確率の問題で樹形図書いた方が正解に辿り着きやすいパターン。
[state ]
type=helper
trigger1=time=55
pos=0,-300
postype=p1
stateno=2510
id=2500
name="CandyBox"
helpertype=normal

sprpriority=9
ownpal=1
persistent=0
いちおう取り上げたので、読む上で重要なのを拾っていきます。
他のはtype=helperでググるとわかりやすいwikiがあります。
idはHelperに番号を振ります。
nameで名前は振ってるよ?」とお思いの方、そのnameはデバッグで表示されるだけのものです。
イメージ6908
MUGEN内部でnameを呼び出すことはできません。
ようは、他のヘルパーとこのヘルパーをnameでは内部で識別できないのです。

ならどうすんのよってときのためのidです。
この流れの最初の[statedef -1]あたりで触れた記述を覚えていらっしゃいますか?
そのなかに、triggerall=NumHelper(2500)=0ってのがありました。
あの記述はこいつ(id=2500)のことを指していたわけですね。
statenoと勘違いしている人もいるので注意
numhelper(id)であり、numhelper(stateno)ではありません。
そして、statenoとidは一致していなくても大丈夫です。
今回のもstateno=2510,id=2500ですよね。
ほかにもishelper(id)なんて記述も使ったりします。
たとえば、trigger1=ishelper(150)だったりです。実利だとヘルパー保護で使います。

helpertype=normalは気にしなくて問題なし。
playerにしたいときは凶悪用途か、よっぽど扱いに慣れてる方かなので。
robert
たぶん並強凶でplayer使う人はいません。嫌がらせ(錯乱)で狂でplayer使う人はいます。


さて、trigger1=time=55ときた。これをtrigger1=1にしよう。
するとこうなった。
イメージ6880
わぁ!
変わりませんね。
なぜか、分かるはず。
そう、persistent=0があるからです。予習復習は大事。
ちなみに(あれ一個しか出ねえやべえどうした)と普通に悩みました、そんなわけでさっき取り上げたのですね。
そんなものです。
気を取り直して、;persistent=0にしてどうだろうか。

イメージ6883
わぁ!!
重なりすぎて美しくないですね。そらそうだ、ずっと同じ場所に出し続けてるんだから。
1Fごとに出現しては同じ挙動で同じ方向に動くだけです。

Q. じゃあどうするのか?
A. コピペでしょ。

そういえば、条件を満たす限りは何度も何度も発動しますが、
「同じフレーム内でステコンは一回しか発動しません」
ステコンをループさせるとか神でしかやらない例外は今回抜きにしてください。
この感覚はだいじー

trigger1=1はやめて、当初のtrigger1=time=55で同時に3つ出します。
ただし、同じ場所に出したら3つ仲良く重なるだけで意味が無い。
そんなときのエッセンス。randomを使いましょう。
Screenshot_17
randomの後ろの%は割った余りを使う演算子。
たとえば100%20なら0。100%3なら1。100%23なら8。
どんなものかは把握できましたかね?
整数論で言うところのmodです。
いまどきの高校生は整数論やってるそうなのでむしろ馴染み深い?
「整数論は数学の女王」と呼ばれておりまして、その解法の美しさはうんたらこうたら(ry
Nayuki

これをrandomと組み合わせるととんでもない化け物に変化します。
random0-999の値を返します。
そして、mod Nのとき最大値はN-1を取る。最小値は0
random%4とすると、最大値は3。最小値は0。0-3の値を返すわけです。
1/20にしたいときは、random%20にすると最大値は19。最小値は0。
だから、random%20=0でこの条件は叶います。

台詞をランダム化させたいとき
[state ]
type=playsnd
trigger1=animelem=2
value=2000,1+random%3
ってしたりと、汎用性は驚くほど高いです。
これをうまく扱うコツはrandom%Nをただの数字と見ることです。

他にも、正負をrandomにさせたいときは(1-random%2*2)を掛けてみたり。
飽きないようにrandomを回してくのは大切なこと。
1000回見ても飽きないようにするためにはrandomが必要不可欠です。確実に。

余談としてこのrandom.
厳密にはrandomではないそうです。乱数生成が云々でそこそこ差があるらしい。
(ソース:「■Random【乱数】」「擬似乱数その3」)
でも気にならないくらいと僕は割り切って使ってます。体感的に0がよく出る気がします。
なので、自分の中で使い分けとしてやや出てほしいときはrandom%n=0, あまり出なくてもいいかなって思うくらいならrandom%n=1にしています。
Dokuo
こういうブレも有効活用。
さらに余談に、これらのrandomや内部AI挙動なりのシードは全部MUGENの起動時間に依存しているので、同時起動すると2画面で全く同じ試合内容が見られます。
これは自分が偶然見つけたものなので間違ってたらごめんね。

話をもどして。
イメージ6907
わぁ!!!
完成です。

こんな感じに、軽い気持ちで記述に親しんでいきましょう。


補講B.) 魔改造具体例

いくつか、どんな記述にすれば魔改造になるかなってやつのエッセンスを記していきます。
実際のキャラたちがどんな記述にしてるかは読んでないので、取り入れてみるなら各々のキャラ記述を覗いた方がいいかもしれません。

幻想小足、ワンダパターン

Imaginewanda
小足、小パン10割
なんとなくイメージとして、当たったらまたそのステートに飛べばいいってのはアンダースタン?
そんなわけで、こんな感じのを用意してみる。
[state ]
type=changestate
triggerall=movecontact
trigger1=stateno=XXX
value=XXX
XXXに該当するのは各々、ハメさせたいやつを入れてください。
あとは柔軟に、バカみたいにこれだけやってもいいし。ループ回数設定してみるとか。
例えばこんな、代替代入がMUGENでは可能なんですね。
こうしてみるとか。
[state ]
type=changestate
triggerall=var(40)<=3
triggerall=movecontact
trigger1=stateno=410
trigger1=var(40):=var(40)+1
value=410

変数はどこかでリセットしないと代入されたまんまです。
じつはラウンドを跨いでも本来はリセットされません。

リセットされるのは、defのcns=(XX.st)で設定できる[data]の
IntPersistIndex = 60
FloatPersistIndex = 40
という記述に基づきます。
この数字までのvar,fvarをリセットします。
varはvar(0)からvar(59) (60個)
fvarはfvar(0)からfvar(39) (40個)
なので、初期設定だとラウンドごとに全リセットされます。

リセットされる恩恵があんまりないので、僕はInt,Floatともにここの数字を0にしてます。

置きロバパターン

robert(2回目)
多段飛び道具系魔改造。
ようは当たっても消えないようにすればいいと。
projの方は楽です。projhitsを目一杯大きくすればいい。
ならhelperはというと、これはキャラによりけりなので一概に指摘はできません。
ただ、たいてい当たったらchangestateで他のステート(消失用)に飛ばしてると思います。そこをループ構造にすればいいだけです。
モルモットラムダだと、消失用ステートとして
[state ]
type=changestate
trigger1=movecontact
value=1015
こういったのがあったので、これをvalue=1010(飛び道具ステート)にするなりそもそもtrigger1=0type=null;changestateで、読ませないようにする。
上のやつもそうですがpausetimeを弄った方が綺麗にガリガリ高速削りできます。
他にもHit後のステートからまた飛び道具のステートを読み込ませたり。

ダメキャン,hits抜け,ステ抜け,ライフ管理

Heart
実際に搭載してるやつの記述をパクればええねん
前二つはaaa氏のキャラはほぼ全員可変式で積んでるし、後ろ二つはテンプレがあったはずなのでそこら覗いてもいいかもしれませんね。
はっきり言ってどれも搭載難易度低いので、動画内のコメントをみてると高尚な技術チックに取り扱われてますが言われてるほどすごい技術じゃないです。
ぽんぽこ10割決めるキャラ見てるとダメキャン入れたくなる気持ちはわかります、ただこれ入れるだけでランクぶっ飛ぶので搭載の判断は慎重に。

ヘルパーアーマー

MCS
MCSのおまけテキスト
他にもアインツ氏のエレシュキガルにもあった、かな?


3.) 技をパクるべし

一番大事なことで伝えたかったこと。
そもそも「◯◯ってなんだよ」ってレベルの状態で0から技を組み立てるのは大変非効率的。
なので、思い切って既存技をパクりましょう。
パクった記述がちゃんと機能するように手直しする、そういったことは記述知識の把握に繋がります。
そのとき、記述流用禁止の規約があったりするので必ずリードミーを確認すること。
……さすがに記述はあんま見たことないかな。
正しい英文をいくつか覚えて英作文で応用するように、いくつかの既記述を覚えておくことで書くときに(そういえばこうすればいいのかな)と引き出しを用意しておく。

パクりが悪いと言われますが、黎明期の人たちから今の人たちまで含めてみんなみんな何らかのものをパクってきています。
技にしろ、記述にしろ、凶悪技術にしろ。
Orochi
剽窃はクレジット表示をしないから悪いことなのです。
歴史をなぞっても責める人はいないし、いつかオリジナル技を作るその土台知識の構築が大切。

パクるためにはどうすればいいのか。この記事ではそこについて流れに沿って説明していきます。
パクる技はなるたけスッキリしたものがベター。
かといって、ガッツリ長い演出あるやつでも是非是非入れたいって気持ちが強ければ問題はなし。
たいてい長い演出はHelperが入り乱れるので覚悟しよう!!
Mild
僕が最初にパクったやつはミルドのエンドオブタイムですから。
helperと本体で変数違うんだーとかplayeridってそうやって使うんだなーってのを学びました。


特にパクりたい技も思いつかなかったので、今回はレアアクマのDESS SUTARU DA!(タンクローリーだッ!)をパクることにします。
Rareakuma
まず、statedefの特定
さきほど2.)でやったように特定します。
レアアクマのあの技は[statedef 4300]なそうです。なのでそこをまとめてコピー。
どこまでコピーすれかいいかはchangestate(or selfstate)を追ってください。
value=0(立ち状態)に戻るまでです。
この場合ならstatedef 43XXを全てコピペ。ここまでらくちん。

いちおうこの時点でstatedefの数字は搭載する側の既存statedefと被らないように変えておいた方がいいです。
元からある超必の続きになるように変更します。
今回の僕のケースでは超必はstatedef 2000-2500が既に使われていたので、statedef 26XXにしておきます。

さて、このままではうまくいくわけがありません。何の手直しもしてないし、なによりそんなことよりanimもエフェクトも登録されていませんから。
そんなわけでさくさく登録していきましょう。SAEはなんとコピペ登録が可能です。
kaigen
airだけでなく、エフェクトに対してもできるので、これを利用してパパッと済ませましょう。
これを、こうできる。
Screenshot_5Screenshot_8
(ちなみにこの機能を2016年に入るまで知りませんでした)

ド底辺なまでに最低限記述とanimとエフェクトをコピペしました。
なので。なんとこの状態でいちおう正常に超必は完成しています。恐ろしいことに。コピペは良い文明。
なのでこのように見てくれだけは整っている状態になりました。これは奇跡の一枚です。
イメージ7735
問題はanimの中身のairがガバガバなこと。
なのでこのようになります。
イメージ7736
さっきの一枚はそれこそ偶然で、基本このようにはなりません。
あくまで見てくれだけが合っているので中身はぐちゃぐちゃです。airファイルを覗くとこうなっている理由がわかります。
air
パクリ元のsffと搭載する側のsffは一緒じゃないので、airの指定までもが完全に一致することはありません。トウゼンノケッカダ.
ふと思ったのが、これオロチやドナルドは基本骨格同じだからこの時点で同種同士の改変はかなり楽なんだろうなーって。だからパクりパクられが流行ったのかもしれない。


裏を返せば、ここをしっかり元からあるsffの番号で、うまい具合に元の挙動にあったものを用意してあげれば技は完成するわけですね。
この時点で何が何だか分からないステコンは逐一ググって、完成。
イメージ7737

ここから、少しは見られるものにするための手直し。
まず、超必の発動演出は元からある夢想曲の方が似合ってるのでそちらを再利用してみる。
ヒットスパークももちろんしっかり変更。
落ちてくる月もデザートにした方が良さげだからそちらにanimを変更。
枚数を減らした関係上、triggerが噛み合わなくなっているので修正。などなど。

結果がこちら。

ぶっちゃけると微妙。
まだまだ改良点は多いところですが、レアアクマ要素が抜けてラムダデルタらしさは出たと思われます。

今回のケースはあっさり済ませたかったので、すっっっっっごく手抜きしました。
それでも技をパクったあと、キャラに合わせて手直しすると実践的な知識が入ってきます。
何事も思った通りに進まないのは大変ストレスがかかるものです。
脳内妄想をそのまま形にしていくとなると、大抵のケースでは相手のステート奪取が必要になり、そちらの制御も同時に考える必要があります。
初っ端の段階でそういったルートを考えていくのは恐ろしくハードなことです。
だから、最初はパクってもええじゃないか。
丸々パクらなくったって、キャラの周囲を周回する衛星軌道が綺麗だったらそれを覗いて搭載するのもいいし。
エフェクト綺麗だと思ったら取り込んでみてもいい。
神キャラを手掛けてる人の凶狂キャラは洗練に洗練が重なった記述なため、読みやすさは別として「そういった方法があったのか」とお勉強になることが多いです。
ふと、記述をパクるのがだるいなって段階がやって来ます。
それは自分で似たような記述を書けるのに、わざわざ他の人の記述スタイルに合わせなきゃいけないから。
そうなったらパクらずに自分でつらつら書いていけばいいんです。

補講B.) Wikiを一度眺めるべし
ステートコントローラ一覧(もくじ)」「ステートコントローラ一覧(列挙)
トリガー索引
3.)の段階でこれらのサイトによく辿り着くことでしょう。
昔は他のサイトもあったそうなのですが、閉鎖に次ぐ閉鎖で今もなお残ってるのはこれくらいかと。

wikiだから使い方やパラメータ指定を暗記する必要は一切ないです。逐一コピペしてもいいわけだし。
ただし、
「MUGEN上では何が出来て何が出来ないのか」
限界を把握することはとっても大事なことなので、暇なときに一度目を通すことをおすすめします。
上に書いてある情報よりも深く知りたいときは「MUGEN CNS WIKI CHAOS」がおすすめです。
ちょくちょく記事内でもリンクを貼ってあります。
後述のAI製作に権威のあるADI氏が管理なさっているcns特化のwikiなので今回の趣旨にはまっています。



4.) 豆知識記事に目を通すべし
ここでは補講Bに引き続き、キャラ製作・改変について大変参考になるサイトを紹介していきます。
たんにコピペで済ませるのでなく、自分で記述を書くために。
0から1へ繋ぐための橋渡しの知識です。

・リック氏「虹格な海底宝物庫
jinx
天門で有名な御仁。ジャッキー先生やキラーマジンガ、木人形などなど。
下は強凶、上は神と幅広いランクを手がけていることから豆知識の幅も広く深いので役に立つこと間違い無しです。
ランクを問わず製作において誰もが抱く疑問を丁寧な検証で解明、内部仕様に触れて解説していらっしゃいます。
さらに解決策も同時に提案してくださっていることから、原理を知ったところでどうすればいいのか立ち往生する必要はなくその場できちんと対処できます。
ありがたやありがたや。

・軟骨カレー氏「軟骨カレーをmugenで食す
Zagan
ザガン、比良坂雛、S魔理沙など多くの有名キャラを手がけているうえに、これまた多くの有名大会も立ち上げてキャラ製作・大会投稿のどちらにも精通している両刀な御方。
どちらの制作物においても個性が光るものばかりで唯一無二な代物揃いであります。
趣味嗜好においても百合の伝道師であり(ry
こちらにはMUGENの凶悪技術の簡易用語集が掲載されています。
補講で述べたstatedefの概念は氏の用語集のhitdefから拝借しました。

・アインツベルン氏「EINZBERNの何もないMUGEN帳
20130106130219a5fs
ブレない幼女の人。狂だとFR繭、DC澪。神では魔王鳴雪、エレシュキガルが有名。もちろんアインツレミリアも。
凶悪技術のQ&A(用語解説集)を手がけていらっしゃいます。
動画見る専の方向けに書かれた記事なのでとっても分かりやすく書かれており、ためになります。
凶悪技術のなかでも永続ターゲットやヘルパー保護は全ランク共通に有益なものなので、食わず嫌いせずに目を通して取り込むことはキャラの完成度向上に繋がります。
この三人の記事のおかげで改変知識の下地が出来ました、心の奥底から多大な感謝で一杯!!

・熄氏「熄の箱庭
Magareimu
禍霊夢の熄氏。絶望軍安定の熄氏印。
製作をしているかぎり、エラメ落ちとの戦いはいつまでも続くもの。ただしそんなすぐには見つけられない。
若干不条理とも言える落ち原因を探るのにとっても助かる「mugen落ちに関するメモまとめまとめ記事」です。
他にも「bit演算講座」「変数のわかりやすい説明」といった説明記事があります。
今回は記事内で触れられなかったものの、bit演算の概念については理解せずとも「知っている」「知らない」でまるで世界が変わってくるので、知見を広げるためにも是非一読していただきたい記事であります。
とくに並強で原作再現する人は特にね。
前も触れたんだけど、並強の人は狂神への抵抗がありすぎて知識の断絶が起きているのが非常に惜しいです。
永タゲのように、このbit演算も不足しがちな空き変数問題への解決策に繋がるので毛嫌いせずに踏み込んで欲しいです。

・lunatic氏「lunaの倉庫-MUGEN雑学
SUwako
知らない者はいない、あの泣く子も屠る鬼巫女製作者の方のブログ記事。GM諏訪子、神速くなーの人。
そのカテゴリのひとつである「MUGEN雑学」をおすすめします。
その数なんと472!
もちろん神寄りな記事に偏ってはいますが、要所要所でMUGENの内部仕様について触れられていたり既存ステコンの艶やかな使用法があって結構有益です。
遡っていくとMUGENの歴史にも触れられるので歴史的な見地として面白いです。

凶悪MUGEN_IRC_ログ倉庫
IRCで交わされた会話ログを保管してあるサイト。
今もIRCって機能してるんすかね? 僕は入ったことないです。
たいてい自分が悩んでいることは過去の製作者の方々も悩んでいることなのでここを当たると解決策が乗っていることもあります。
もちろんないこともある。そんなときは自力で解決するしかない。
眺めていると有名な製作者であっても解決できないことがあったり悩む時期があったんだって微笑ましい気持ちに包まれます。


豆知識とは別にして、rakurai氏Remi氏モジャック氏の製作記事は読み物として面白いので暇つぶしに眺めるのを勧めます。


追補.) hitdef,proj,helperは舐めるべし
追補で扱うのはTwitterで見かけた、改変への壁.
Toki
hitdefは面倒です
ぶっちゃけ僕も正解がわかってません。自分で書くときはかんなり酷い性能にしてるし、コピペで済ませることも多かったり。
ようするに、コピペで済ませて問題ないんすよね。
もちろんattr,hitflag,damage,pausetimeやvelsetなんかは逐一弄らなきゃダメ。
でも、それも1から書くからたるいだけでコピペしたらポーンと雛型できて、あとは数値を弄るだけ。
狭義において、改変はチートでありプログラミングではありません。自分で技を作るのは製作です。

projやhelperも同じく。
projに至っては扱いが面倒なので、僕は自由に動かしやすいhelperで済ませます。なのでprojの扱い苦手です。
不用意にhelperを使うのは並強、不用心にhelperを使うのは神で嫌われる傾向にありますが凶狂においては気にしなくて大丈夫です。

並強だとこれらのパラメータで永久 or notが決まるので大事な数値です。それはもう、仕方のない話。
操作前提でなければ、後述のAIがキャラの評価の全てです。
Toki
AIがしない行動は無視して良いのです。
具体例は挙げられませんが、超有名な狂キャラだって「小パン永久できるだろこれ」はあるけど、しないからスタイリッシュと評価される。

statedef,hitdef,explod,helperの諸パラメータについては何度も検索をかけることになりがちなので、メモを置いておくと良いかも。
これらに共通して重要だと(今にして)思うのは「最低でも何が必要なのか」
例えば、statedefならanimとctrlくらいでも問題ありません。
explodなんて最悪以下の記述でもエラー落ちはしませんからね
[state ]
type=explod
trigger1=!time
これでもちゃんと機能するなら、どうして他のパラメータが必要なのか。
そのことを頭に入れつつパラメータを一つずつ理解していくと実際に書くときに捗ります。
さきほど取り上げたpersistentの他に、よく見る二つのパラメータについてはここで取り上げます。

Haruka
・ignorehitpause
そのまんま、hitpause(硬直)を無視します。こればかりはこうとしか言いにくい。
実際に自分の手元で試してみるとハァーンと納得できることと思われます。
persistent同様に、どのステコンでも機能するパラメータになっています。
凶悪界隈で聞いた話だとnoko常時発動でもこれをつけないことで隙が生じてしまっているキャラもいるとかいないとか。
演出が硬直を無視した方がいいのか、悪いのか。
そこら辺を考えて0,1にしましょう。

・pausemovetime/supermovetime
さきほどのが硬直無視だとすれば、こちらはpause/superpauseを無視するものです。
これもこうとしか(ry
自分のpause/superpauseはもちろんそうですが、相手のpause/superpauseも無視することができます。
使い方としては極大値(2147483647)に設定して何が何でも演出が止まらないようにするのがあるあるでしょう。
ちょくちょく、自分の演出をいいタイミングで止めるためにpausemovetime=XXにすることもあったり。
MUGENの素晴らしい点は時止めがpause/superpauseの二つ用意されている点ですね。
これの使い分けでexplodを時止め2種でうまく前後させたりできるので面白いことができます。

以上を踏まえて、僕はhitdefやhelper,explodを準備で紹介したKiokuに定型文で登録してます。
使いたいときにぱぱっと呼び出して、そのタイミングにあったパラメータを打ち込むだけでそのまま使えます。
このツールはMUGENだけに留まらず文章入力にはとっても便利なので、ぜひぜひ時短に役立ててください。


追補2.) AIがキャラ評価に繋がると認識すべし
凶狂においてキャラの良し悪しの評価はAIに大きく左右されます。
どんな行動をさせたいのか、むしろどうさせたくないか。
AIに書かなければ絶対に技は発動しません。逆に、AIに書いてしまったら発動してしまいます。
思ったようなAIが作れないってことは「キャラの見せ場/持ち味が分からない」ってことです。
いくら完成度の高いキャラであっても、思いつきでAIに小パン10割を入れたらそのキャラは「そういうキャラなんだ」とレッテルを貼られます。

そんなAI製作について。
僕は偉そうに講釈をたらすことができる立場じゃないので、他の方のガチAI記事を待ちましょう。
rから始まるMr.雷やほにゃららカレーさんのような(ry

……それだけでは突き放してる感じがするしどうすっかなというわけで。
AI製作指南書で有名なのは平成㌢氏のテンプレ
JOhny
(代理公開なさってる無敵医師氏と勘違いしてたんだってー!はずかしいねー!)

古今東西数多くのMUGEN製作者が一度は読んだことのある聖典。
AI作りに携わったうえで読んでいないほうが珍妙とも受け取られるほどの王道を征く教科書です。

僕は他にAir氏、ADI氏のAI講座を読み砕きました。

AIで気を張っちゃう気持ちは僕も痛いくらいわかります。
基本は距離と相手の状態でガンガン縛ってくとまともな挙動に近づいてきます。
というか、むしろ狂キャラなんてAIガチってる人は少ないし。
いざとなれば性能ぶっ壊してどうにでもなるから、そんな気を張らずに。
ほんの息抜き程度にパパパッと組むくらいの気概で問題ないです。

自改変凶狂キャラの最大のメリットは死に技を生き技に昇華させることができるって点なので。
どうしても作れないってときは、完璧主義者で妥協が許せないか。
または前者の通り、キャラにどういった動きをさせたらいいのかが分からないか。
はたまた、そもそもゲージを使わない通常動作の挙動が思い浮かばないって状態。
このせいでよくWIP入りするのでビシっと解決策教えて下さい(おい)


あとがき
最後に大事なこと。
このチャートを追いかけても、けして良改変にはなりません。
kfm
独創性が一切含まれていないからです。
こればかりは一様に「こうした方が良い」と教えられるわけがないので申し訳ない。むしろください。

今回のはあくまでcnsを理解するため、改変するための手ほどきでした。
これを踏み台にするなり足蹴にするなり知識の下地にするなりして、ほぼ停滞しきったMUGENにおいて自分らしさを前面に出していったキャラ製作・改変が溢れることを期待しております。

そして、創作物はなんであれ公開しなければ何の価値もありません。
いくら脳内で素晴らしい代物が出来たところで、あとほんの少し改良すれば公開できる段階だとしても公表しなければそれは"ない"のと同じで、何の評価もくだりません。
完成度を高めようとするといつまで経っても公開できないので、勇気の妥協をする覚悟も必要です。
かといって最初の印象が全てを決めるという面もあるので、ケースバイケースにね(ガバ)
そんな、0からcnsを理解し改変するための指南書でした。

Let's 改変!!
kfm2











※おまけ

この動画(花騎士プレイ動画)を参考に、ジャック・オ・ランチャーを真似てみた。
花騎士は軟骨カレー兄貴がめっちゃ没頭してるブラウザゲー。
内容はどんなものかなーと適当に検索して出てきた動画がこれで(あ、ラムダで再現できるな)と書き留めておいたもの

Screenshot_12イメージ7763
適当にぱぱっとやったやつで再現度低いけど……MUGENでは相手も動くので全画面に跳弾させた方が良いのかもなーとも思いつつ。
こんな感じに、MUGENとは一切関係ないゲームの技を自分なりに再現するのも面白いです。
今回記事内で取り上げたのは記述パクリだったけど、そうじゃなく演出模倣ですね。

他にも今回取り上げてはいませんが、エフェクトを自作でしてみるなんてのはとても個性に溢れます。
自分以外の誰にもできない、オンリーワンなものですから。
それが無理なら文字で遊んでみるのは敷居が低く、アクセント付けになります。
よく勝利画面でやってることです。

僕からできる改変のワンポイントアドバイスとして、細かな動作にエフェクトや効果音をバシバシ足していくのは完成度を上げていくのに重要な寄与となります。
走ったら土煙は出るし、高速で動いたら残像はのこる。風も起こるし、粒子が舞うかも。物質の背後には影がある。
音を立てずに動くのは難しいとされ、何か動作があれば多少は音が出るはず。
それを拡大解釈して乗せてみるとか。衣擦れの音、足踏み。グローブを装着するときや刀をしまうとき。
一挙手一投足を盛大にクローズアップしていくだけでも面白いものになります。

あとは色変え。エフェクト色の統一するだけでスッキリします。
僕は蒼に変えたがっちゃうので、最近は意識して違う色を主色にしようとしています。GM諏訪子の影響なのかな……
そこも改変者各々の"特色"なので、自分が好きな色をぐいぐい推していきましょう。