判定

キャラクターが何らかの状態にあることを示すものの総称。
プログラムの都合でコンピュータがターゲットがどのような状態にあるかを“判定”するもの。
ゲーム用語としてもそのままこの名称が使われている。

プログラム内部では全てが計算によって決定されるため厳格なルールが必要になる。
そのためこの範囲に入ったらこうなるといった、「~すれば~と判定する」範囲が二次平面的には設定されている。

格闘ゲームでよく用いられる「判定が強い」もこの判定を指す。この言葉の詳細は下記の「技の判定」を参照。




攻撃判定

相手を攻撃するための判定。
これと相手の食らい判定が重なることで攻撃が成立する。
突き出した手足や武器の画像とある程度一致することが多いが、
一般的な2D格闘ゲームでは基本的に小さく設定されており、先端まで完全に一致したりはみ出ているということはあまりない。

MUGENではAIRファイルのClsn1(赤枠)で定義される。

攻撃の属性

大別すると
  • 打撃判定
  • 飛び道具判定
  • 投げ判定
の三種類。

MUGENではさらに
  • 立ち
  • しゃがみ
  • 空中
の属性が加わる。
後述の当身判定や無敵状態への攻撃の成否に関係している。

なおガードの条件はまた別に設定する。
極端な話、「ジャンプ状態のキャラから繰り出される、立ち属性の攻撃で、しゃがみガードでしか防げない」という異様な技を作る事もできる。

いずれもHitDefのパラメータAttrで定義される。
ちなみにstatetypeとattrの立ち、しゃがみ、空中の属性が食い違っていると、
hitdefが実行された次のフレームで自動的にhitdefの属性が書き換えられる。
攻撃判定が発生したフレームでは当身が作動するが持続部分は当身が作動しない、
などといった不自然な挙動の原因となるので、statetypeとattrを一致させておくか、
攻撃判定の持続中は常にhitdefを実行し、attrの属性を更新し続けておいた方がよい。
ちなみにヘルパーでhitdefを実行した時はhitdefを実行しているヘルパーのstatetypeとの兼ね合いになり、本体のstatetypeは関与しない。

攻撃判定とガード方向

立ちガード・しゃがみガードの可否の組み合わせにより、攻撃判定は主に以下の四種類に分けられる。
上段判定
立ちガード・しゃがみガードの両方が可能で、立ち攻撃や飛び道具全般が該当し、大半は空中ガード不可能。
中段判定
立ちガード可能、しゃがみガード不可能で、ほとんどの空中攻撃とごく一部の立ち攻撃が該当する。
下段判定
立ちガード不可能、しゃがみガード可能で、ほとんどのしゃがみ攻撃とごく一部の立ち攻撃が該当する。
ガード不能
いずれのガードも不可能。

MUGENではHitDefのパラメータGuardFlagで定義される。
立ち・しゃがみ・空中それぞれのガード可否を設定するため、「立ちガードはできないが、しゃがみガードと空中ガードが可能」とか、
「立ちガードもしゃがみガードもできないが、空中ガードは可能」といった技も作れる。

食らい判定

相手の攻撃を受けるための判定。「やられ判定」とも。
これと相手の攻撃判定が重なると攻撃を食らったと見なされる。
基本的に見た目に沿って付けられると思われがちだが、実際にはコンボ用に判定を調整されていたりするので、
画面上のキャラクターの体のサイズとは必ずしも一致しない。
ケンシロウ(見た目より大きい)とトキ(見た目より小さい)のやられ中の食らい判定がその好例である。非常に極端な例だが
またゲームによっては打撃喰らいと投げ喰らいが別々に定義されていることもある。

MUGENではAIRファイルのClsn2(青枠)で定義されており、打撃・投げ喰らいの両方がこれで定義される。
ちなみに 「攻撃判定だけ付けて食らい判定が無ければどんな攻撃も受けず一方的に攻めれて無敵じゃね?」 と誰もが一度は思うが、
MUGENでは後述の当身攻撃の判定にこれではなく上記の攻撃判定が使用されるので、
食らい判定がなくても当身だけはしっかり食らってしまう。
また、その辺も考慮して攻撃は全てHelperに任せて本体は攻撃しないキャラクターも存在するが、
現在は当身でコントロールを奪ったHelper経由で無理矢理相手本体に攻撃させるという対抗手段ができている。

接触判定

キャラ同士が接触したときに、どこまで接触できるかを示した判定。
テレポート技などはこの接触判定を消して移動しているため、相手の裏に回ることができる。
食らい判定と別個に設定されている場合が多く、大体の場合グラフィック通りに設定されている。
が、中には接触判定が変に設定されているキャラも多い。
例えば食らい判定が接触判定より前に出ているキャラの場合、
食らい判定は画面端に密着していないため、画面端に密着しているにも関わらずめくられ
更に接触判定は画面端に密着しているため、飛び込んだキャラは表に落ちるという非常に見えにくい攻めを食らうことになる。

また、接触判定が食らい判定より大幅に大きいと接触判定ギリギリまで近づいても攻撃が届かなくなる場合がある。
打撃攻撃ではまず起きないが、リーチの短い投げだと大手ゲーム会社の作品でも「投げが届かなくなるキャラ」というのが時々見かけられ、
例として『サムライスピリッツ(初代・真)』で不知火幻庵がしゃがみ状態で一部のキャラに投げられなくなるということがあった。

MUGENでは CLSN2で規定される食らい判定、cnsのsizeの項目、ステートコントローラのwidthおよびplayerpushで規定 され、
一般的な格ゲーと違い、 接触判定用の個別の判定を持たない 。またplayerpushを無効にした場合、接触判定は完全に無視される。
CLSN2で規定される食らい判定用の枠をそのまま接触判定にも使うため、食らい判定が重ならなければ押し出しは成立しない。
無敵状態のために食らい判定が設定されていないキャラが散見されるが、相手との接触時の挙動が不自然になることがあるので注意しよう。
またこの仕様のせいで、下半身無敵(nothitbyによって定義される下段無敵とは異なる)になっている相手に対して、
スライディングのような姿勢の低い攻撃をするとお互いをすり抜けるということが起こり得る。

接触判定の幅はキャラクターの下に表示されている黄色の線で定義されており、
食らい判定が接触するとこの幅の外側まで押し出される。
そのため食らい判定が押し出し幅に比べて小さすぎると押し出しによる移動距離が長くなるため、
結果としてキャラがワープしているように見えてしまうことがある。
なお一方のstatetypeがS(以下Sとする)、もう一方のstatetypeがA(以下Aとする)であった場合、
Sのheightより高い位置にAがいれば押し出しが起こらない。
ただしheightが機能するのはstatetypeがSの時だけで、
しゃがんでいる時(statetyep=C)やダウン中およびダウンからの起き上がり動作中(statetype=L)は機能しない。
heightの値とこれらの動作中の食らい判定の付け方によっては立っていると飛び越えられるが
しゃがまれると飛び越えられない、といった不自然なことになりかねないので、設定する時は注意が必要である。

これらの不自然さが気になる場合、playerpushを有効にした無敵ヘルパーを本体に重ねて、食らい判定とは別に接触判定を制御するという技術もある。
ただし、接触判定のサイズと相手の移動速度によっては「押しても動かない」という状態が発生する。


当身判定

相手の攻撃判定を無効化し、何らかの反撃をするための判定。
これと相手の攻撃が重なると成立し、各技の効果が発揮される。

MUGENではAIRファイルのClsn1(赤枠)で定義され、
CNSファイルにReversalDefの命令を置く必要がある。
ただし反応するのはHitDefのみで、Projectileには効果が無い。

この赤枠は攻撃判定と共用であるため、ガードポイント付きの攻撃を作るために
「肩から肘の部分にある赤枠はReversalDef、拳にある赤枠はHitdef」といった技を作ることはできない。
攻撃か当て身か、どちらか片方である。

無敵

特定の、あるいはあらゆる攻撃判定をすりぬける状態。

「無敵判定」(無敵の判定がある)と表現される事もあるが、少なくともMUGENにおいてはこれは誤りである。
CNSファイルの命令HitbyやNotHitByで定義する「食らい判定が無敵の状態になっている」ことを無敵状態(また、この有効時間を「無敵時間」と呼ぶ)、
AIRファイルのClsn2(青枠)を特定の部位に設定しないことで定義する「体の一部に食らい判定が無い」ことを部分無敵として説明する。

両者は「攻撃が当たらない」という点において似ているが、内部処理は全く別物である。

無敵状態

CNSファイルの命令HitbyやNotHitByで定義する、食らい判定が無敵になっている状態。
攻撃側の持つ属性に対して設定でき、「飛び道具に対して無敵」や「打撃と飛び道具は回避するが、投げは食らう」というものも作れる。
攻撃判定の位置は無関係で、「しゃがみ攻撃に対して無敵」にしたら足払いもしゃがみアッパーも当たらなくなる。

部分無敵

AIRファイルのClsn2(青枠)を特定の部位に設定しないことで定義する、体の一部に食らい判定が無い状態。
「攻撃判定用の赤枠が、食らい判定用の青枠と重ならなかったために攻撃が空振りした」という形であり、
赤枠の広い攻撃なら当たってしまう場合も有り得る。

HitbyやNotHitByでは「上半身用の食らい判定青枠は通常のまま、下半身用の青枠だけに下段への無敵を設定」ということはできず、
必ず全身無敵しか作れないため、部分無敵は「無敵状態にする」ではなく「食らい判定が無い」で作るしか無い。

また接触判定の項目でも述べたとおり、食らい判定の青枠は接触判定としても使用されているため、
足下が宙に浮いている(下段無敵)横飛び蹴りと、地面すれすれにしか食らい判定が無い(上段無敵)スライディングがお互いに当たらず、すり抜けてしまう場合も有り得る。
飛び蹴りとスライディングなら見た目にそう違和感は無いが、技によっては異常な見た目になってしまう場合もある。
上記の接触判定の項にもあるように、食らい判定による部分無敵を実装する場合は、適宜接触判定用ヘルパーを用意するなどの対策を施すとよい。

上述のテレポート技も無敵状態になる場合が多く、同時に接触判定も不要になるため、食らい判定用の青枠を全く持たない事で表現される場合もある。

その他

あまり一般的ではないが、「攻撃は当たるが一切ダメージを受けない」というタイプの無敵もあり、こちらはhitoverrideを使って表現される。

当たり判定

主にアクションゲームやシューティングゲームで自機が敵、もしくは何らかのオブジェクトに接触した際に用いられる語。
ダメージを負ったり、撃墜される場合に「(敵もしくはオブジェクトに)当たり判定がある」と言う。

これらの語が格ゲーでも使われたが、人によって攻撃判定、食らい判定のどちらかまたは両方を指したり接触判定のことだったりで誤解を招きやすい。
よってwikiや掲示板などの不特定多数の人が見る場所では、混乱の元になるので当たり判定と言う言葉は避けた方が良い。


「技の判定」

先述の攻撃判定と食らい判定の位置と大きさから導き出される。
「判定が強い」と言う言葉もあるが、これは食らい判定内より外側(相手側)に攻撃判定が大きい攻撃を指して用いられる。
ほとんどのゲームでは攻撃判定と攻撃判定が重なっても何も起こらないが、
自分の攻撃判定が相手の食らい判定に先に当たれば一方的に打ち勝てる。
つまり自分の食らい判定の、より外側に攻撃判定が出る技の方が有利と言う強みから、「強い」とされている。
たいてい剣や槍などの武器は食らい判定が薄いので武器を持ったキャラクターは技の判定が強いとされるが、
判定が強くても食らい判定自体は得物の途中~先端まで付いているケースも多い。
また例外的にゲームバランスの都合などからリーチの短いキャラを中心に
素手なのに武器並みかそれ以上の判定の技を持つキャラクターもいる(スレイヤー有間都古など)。
なお、対戦中やトレーニングモード中にCtrl+Cを押すことで判定の大きさや形状は一目でわかる。
この時に表示される枠や形については、それぞれの判定の項目を参照して欲しい。
なおcnsでnothitbyやhitbyが定義されていると枠が緑色になり、名前の上に左から
属性(立ち、しゃがみ、空中):打撃技:投げ:飛び道具 の順で無敵属性が表示される。
たとえば真ん中のKFMは S :NSH: :NSH なので立ち属性の全攻撃、全属性の打撃、全属性の飛び道具に対して無敵である。
同様に右のKFMは S A:NSH:N H:NS なので立ちおよび空中属性の全攻撃に加え、
全ての打撃、通常と超必属性の投げ、通常と必殺属性の飛び道具に対して無敵である。つまりしゃがみ属性の必殺投げと超必飛び道具しか当たらない。
ちなみに無敵になると左のKFMのように"MUTEKI"と表示される。ご利用は計画的に。

相殺

飛び道具同士などがぶつかった時にどちらも消滅する処理。
覇王翔吼拳など、相手の飛び道具のみを消滅させながら進める技も存在する。
Projectileには相殺用の耐久力を設定でき、耐久力1の飛び道具Aと耐久力1の飛び道具Bがぶつかったら両者相殺。
耐久力5の飛び道具Aと耐久力3の飛び道具Bがぶつかったら、Bは消え、Aは耐久力2になって飛び続ける、といった処理が行われる。

また相手の飛び道具と相殺しない(お互いに打ち消し合わず、どちらもすり抜けて飛んでいく)というものも作れる。

Helperで作る飛び道具はこのような細かい耐久力の設定ができず、
「何にぶつかっても一発で消える」とか「何とぶつかっても絶対に消されず飛んでいく」というものになる。

また、作品によっては飛び道具以外の打撃技にも相殺が発生する。
MUGENでは「どちらの攻撃も空振りする」という処理はHitdefで簡単にできるが、打撃技の相殺を再現する事はなかなか難しい。

攻撃レベル

STREET FIGHTER III』など一部作品における「技の優先順位」。
多くは弱<中<強<必殺技<超必殺技の順に高く設定されており、
優先順位の高い技は優先順位の低い技に一方的に打ち勝てる。
同じであった場合は相打ちとして双方が攻撃を受ける。


MUGENにおける「技の判定」

AIRファイルで攻撃判定と食らい判定の大きさを決定し、
CNSファイルのHitDef内で攻撃レベル(Priority)0~7を設定し、
同じ順位の技が同時に当たった場合の対応を設定する(下表)。

自分側 相手側 結果
Hit Hit 互いに干渉せず、相打ちになる。
Hit Dodge 自分の攻撃を相手が避け、両者スカる。
Hit Miss 相手の攻撃が失敗し、自分の攻撃が当たる。
Dodge Dodge 両者とも避ける。
Dodge Miss 自分が避け、相手が失敗し双方スカる。
Miss Miss 両者とも失敗する。

さらにこれに加えてPriority値が最高の7でも、相手の食らい判定に重ならず、
相手の攻撃判定が自分の食らい判定に重なっている場合は一方的に打ち負ける。
ただしNotHitByによって無敵を設定されている場合はこの限りではない。
つまり優先度は無敵>判定の大きさ>攻撃レベル>同時の場合の対応の順。

ちなみにデフォルトのPriority値は打撃なら4。
投げ間合いの広いキャラクターが相手の打撃を一方的に潰すのを防ぐため、
通常投げは0~1が推奨されている(和訳版カンフーマンより)。

またhitdefのp2statenoパラメータを使用している場合、相打ち時の反応はmissまたはdodgeにしておかないと、
自分はダメージを受けているのに相手は投げられている、などといったおかしな現象が生じる。
たいていの場合一方のキャラクターがスタックして対戦が続行不能になる(デバッグで強引にニュートラルに戻すことはできるが)ので、
実際に相打ちになることはそう多くないとはいえ注意が必要。


AIと判定

MUGENにはキャラクターの攻撃判定や食らい判定の形状を参照するトリガーが存在しない。
そのため、AIがしゃがんでいる相手に当たらない立ち技を振り続けたり、
無敵状態の相手に手を出してしまいカウンターを受けるということがよく起こる。
また、動画で意識されることはほとんどないが、
例えばダルシムが伸ばしてきた腕を判定の強い技で潰したり、
打点の高い立ち技を下段技でかわしつつカウンターヒットを取ったりという、
格ゲーの醍醐味の一つでもある技の差し合いはAI戦ではほとんど起こらない。
実の所、技の判定を生かした立ち回りをAIに行わせようとすると
p2Nameトリガーを使ってかなり露骨な形で対応せざるを得ないので、
現在公開されているAIでここまで踏み込んでいるAIはほぼ存在せず、
あったとしても同製作者のキャラ同士だけに限定されているのが現状である。
AI対AIならともかくプレイヤー操作でAIに挑んでいると、おや?と思うことがあるかもしれないが、MUGENの仕様上諦めるしかない。


おまけ・攻撃判定および食らい判定の付け方

以下に紹介するのはあくまで原則なのでこれに当てはまらない技も多数存在するが、
そのような技はプレイヤー間でしばしば詐欺判定呼ばわりされることも多い。

攻撃判定

不自然な所で攻撃が当たらないようにするため、基本的には見た目よりも小さく付ける
ゲームに依るが、ストリートファイターやKOFなどを例にとると、
食らい判定とほぼ同じ、もしくは少しでも出ていればほとんどの攻撃を一方的に潰せるほど判定が強いと考えて良い。
残像などのエフェクトを伴う攻撃の場合、エフェクト全体にまで攻撃判定を付けてしまうと判定が強くなりすぎてしまいやすいので注意。
また飛び道具はジャンプで飛び越えやすくするため、回避しやすくするために攻撃判定が見た目の三分の一程度しかないということも多い。
とくに前方方向は食らい判定が前に突き出ることが多いため、かなり引っこんだ攻撃判定になることも多い。
ただし空中戦がメインだったり機動性の高いゲームでは攻撃が当てにくい(もしくは回避が容易なため)比率が大きめに、
逆に地上戦がメインである場合は縦の動きをあまり意識する必要がないため、比率が小さめに設定される傾向がある。
またロック技は初段がヒットするとフルヒット確定なので、
初段の判定は(特に超必殺技だと)あえて拾い辛いように小さくされることが多い。
他にも突進技などは移動する分判定が強くなりやすいので、それを考慮した上で攻撃判定を内側にシフトさせるとよい。
特にロック技の場合などはあまり攻撃判定が突き出していると相手を吸い込んでいるようにしか見えなくなるので注意。
同じことはコマンド投げなどにも言え、自分の体からうっすらと突き出る程度でも十分機能するものになる。

攻撃判定の持続

攻撃判定が出ている時間のこと。
前述の攻撃判定と共に当てやすさを考慮して設定されるが、ゲームにもよるが地上通常技などは大体2F、長くて4Fが精々である。
(ただし攻撃判定が出ている位置がアニメーションによって大きく変わるようなケースでは話は別だが。)
それ以降は突き出した手足のアニメのまま攻撃判定が消えている。この部分を「戻り」もしくは「フォロースルー」と言う。
ここに相手の攻撃が刺さった場合、判定負けしているように見えることが多いため注意が必要である。
逆にあまりに長いとモーションは技を振り終わっているのに当たったり、持続の終わりを当てることで大幅有利状況が発生したりする。
(例:ユダのバニシングストライク(持続14F、戻り10F、ガード硬直もそこそこ長いので持続を当てるとユダ側ガン有利))
ただし持続は技の傾向によっても大分異なり、投げ技の場合は発生の早さや判定の強さ、当てやすさなどを勘案すると、
移動投げ等を除き1Fとされることがほとんどであるが、突進技の場合突進中攻撃判定がしばらく出続けるため必然的に長くなりやすい。

なお、MUGENでは仕様上、同じアニメの表示中は一度出た攻撃判定を消すことができない。
つまり、持続10FのAnimElemの1F目にHitDefを設定した場合、必ず残りの9F持続することになる(ただし相手に接触すると消失)。
途中で判定を消失させる一番簡単で確実な方法は、Airの設定でAnimElemを複数に分割すること。
他には別のステートに飛ばす、TimeやAnimElemTimeトリガーでMoveTypeを変更するなどの方法があるが、使いこなすには少々の慣れと入念な調整が必要。

食らい判定

基本的には見た目通りに付けるが、実際にはコンボの都合で見た目より太く付けてあることが多い。
1枚のスプライトあたりに使用されるCLSN2の枠の個数が2桁に届くことはまれで、大抵5個もあれば十分。むしろそれぐらい大雑把でいい。
またガードおよび食らいモーションに関しては立ちモーションやしゃがみモーションと同じかそれよりも大きく付ける
地上でのニュートラル、ガード、食らいモーション中はキャラクターの姿勢が変わっても食らい判定自体には影響しない場合が多く、
ガードと食らいモーションは食らい判定を共有していることもある。
スプライト1枚ごとにCLSN2をいちいち設定するのは手間がかかるので、
枠を1つしか使わない場合はdefault指定を利用すればいいだろう。
空中食らいの場合は空中コンボを考慮に入れ、腕や一部の得物などにも判定を付けて(あるいは何も存在しない空間にまで食らい判定を広げて)上下の幅を大きくしていることが多い。
そのような意味ではkfmの食らい判定設定はかなり悪い例に入るので、あまり参考にしない方がいいかもしれない。

一方、攻撃動作の食らい判定は無敵技を除けば原則として通常モーションよりも食らい判定が拡大する
一般的なゲームではたとえ攻撃判定発生前であってもその時点で食らい判定が拡大しているケースがほとんど。
また攻撃判定発生中においても、意図的に判定を強く設定するのでなければ攻撃判定が出ているあたりまで食らい判定を付けることを推奨。
たとえ判定を強くする場合でも素手キャラであれば攻撃判定の発生している手足の途中、
武器持ちキャラなら手元のさらに先~得物の途中あたりまでは食らい判定が突き出ることが多い。
逆にコンボ専用技として設計するのであれば攻撃判定は食らい判定のかなり内側に入れても十分機能する。
キャラクターの押し出し判定の内側にまで入れてしまうと相手に攻撃が当たらなくなるが、
widthで押し出し判定を大きく拡大していない限り、そんなことは起こらないと思われる。

無敵

昇龍タイプの技には無敵を設定することが多いが、最近のゲームだと各種ゲージを一切消費しない場合、
全身無敵は攻撃判定発生前~発生直後に切れることが多い。
また全身無敵ではなく半身無敵や属性無敵といった限定的な無敵や、ただの強判定でしかないケースもしばしばある。
逆にゲージを消費する場合は発生直後も無敵が続くケースも多数あるが、
この辺は発生やリスク、リターン、消費ゲージ、ゲージ効率、元となるゲームのゲーム性、
さらにはそのキャラの性能傾向などに大きく左右されるので各自で適切な所を見極めるしか無い。
また、無敵を伴う回避技や移動技の場合も、部分無敵しか付かないか、
完全無敵が付くが不用意に使うと容易に反撃されるほど隙が大きいかのどちらかである。


添付ファイル