2D格闘ツクール2nd 完全攻略

■ チュートリアル


■ コマンド解説


■ テクニック解説
 001 特殊なキャラクターセレクト
 002 画面レイアウト
 003 カラーセレクトの設定
 004 ヒットエフェクトの研究
 005 ヒットエフェクトの描き方
 006 スクリプト一覧のテキスト化
 007 通常立ちの設定
 008 VSで開始位置指定
 009 雛型キャラの作成
 010 INIファイルの内容
 011 変数の大小チェック
 012 当て身投げの作り方
 013 必殺技コマンドの設定
 014 アニメ作成_通常攻撃
 015 ゲームモードによる分岐
 016 変数の一覧を記録
 017 受け身入力の判定
 018 ダウン値による分岐処理
 019 飛び道具の作成
 020 ワープ技の作成
 021 ヒット硬直のコントロール
 022 ステージの地面表現
 023 ヒット数表示の固定
 024 横方向のホーミング攻撃
 025 1P/2Pの判別
 026 ライフ減少アニメ
 027 画面下部の表示内容
 028 ステータス表示の意味
 029 ガードクラッシュの表現
 030 押せないOBJ
 031 アイテムのあるゲーム
 032 復活する技の作成
 033 空ガードの作成
 034 ステージ選択付きキャラセレ
 035 ゲージMAXの表示
 036 固定ダメージを表現する
 037 ラン動作の作成
 038 投げ技によるKOの作成
 039 ボタン溜め押し技の作成
 040 中段攻撃の作り方
 041 製作に役立つツール
 042 カラーセレクトに適した画像
 043 相手によって動作変更
 044 横幅のあるキャラを表現
 045 ラウンド限定の動作
 046 影色の塗りを効率化
 047 モードを切り替えるキャラ
 048 当たり判定設定のコツ
 049 空中ジャンプを表現する
 050 キャラの向きを判別する
 051 途中でKOしない乱舞技
 052 カウンターヒットの作成
 053 OBJの動作を停止
 054 ハイジャンプの作成


■ バグ・よくあるミス


■ テスト時のチェック項目


■ 解説用データ ダウンロード


019

飛び道具の作成

格闘ゲームに欠かせない技要素として飛び道具があります。
飛び道具の作成自体はそれほど難しくありませんが
この種の技は、 うまく設定しないとゲームバランスを崩しやすいです。

今回はこの飛び道具について、
ゲームバランスを考えた設定方法を説明していきましょう。


作成予定:

今回作成する飛び道具のイメージを以下に示します。

「キャラが構えを取り、球状のエネルギー波を出す」 という動作になります。

以下は今回使用するグラフィックパターンです。
( やや枚数が多いですが、キャラ画像11枚と飛び道具エフェクト1枚になります )

※ゲーム用BMPは上記画像のリンク先にて提供しております。


飛び道具の動作は、飛び道具を放つ本体( キャラクター ) と、
発射される飛び道具( オブジェクト )の2つに分けてスクリプトを組みます。

まずは、キャラスクリプトと飛び道具スクリプトの行を作成してください。

ここでは、それぞれ「飛び道具攻撃」 「飛び道具OBJ」
という名前でスクリプトを用意しました。 ( ちなみに、OBJはオブジェクトの略です )



キャラクター側のスクリプト設定

「飛び道具攻撃」 スクリプトを組みます。
キャラ画像11枚をエディタに登録しておいてください。

番号 命令 設定内容
1 1枚目  中心軸 +4, +6  WAIT = 4
2 2枚目  中心軸 -3, +7  WAIT = 6
3 3枚目  中心軸 -6, +8  WAIT = 10
4 4枚目  中心軸 -7, +11  WAIT = 16
5 5枚目  中心軸 -2, +12  WAIT = 5
6 「飛び道具OBJ」 0ブロック目を発生
7 6枚目  中心軸 +24, +12  WAIT = 10
8 7枚目  中心軸 +27, +10  WAIT = 12
9 8枚目  中心軸 +24, +12  WAIT = 16
10 9枚目  中心軸 +23, +13  WAIT = 12
11 10枚目  中心軸 +18, +17  WAIT = 10
12 11枚目  中心軸 +13, +15  WAIT = 10

表を見ればわかる通り、内容的にはあまり特別なことはやっていません。
( 画像の座標設定やWAITはあくまで目安です )

6ブロック目で「飛び道具OBJ」を発生させている点に注目してください。
ちなみに、攻撃判定などは
全て「飛び道具OBJ」側で用意することになります。
( 攻撃設定について、詳しくは後で説明します )

また、各画像のWAIT値にも注意してください。
一般的に
飛び道具は相手に近づくことなく攻撃を行える便利な技ですが、
攻撃後に大きな隙が発生する という弱点があります。

この隙を表現するためには、
飛び道具発生後( ブロック7 〜 )の画像について
WAIT値を大きめに設定すると良いでしょう。


MEMO

飛び道具攻撃後の隙の長さ
目安としては…
飛び道具を前ジャンプでかわした相手が
飛び道具を出したキャラを攻撃できる程度

が、ゲームバランス的にお勧めです。
 
 このあたりは作成する技の性質にもよると思うので、
 テストプレーを繰り返してうまく調節してください。

以上でキャラクター側のスクリプトが完成です。
次は( 飛び道具 )オブジェクト側のスクリプトを設定していきます。



オブジェクト側のスクリプト設定

スクリプトの内容は以下の通りです。

番号 命令 設定内容
1 移動 X+430, Y+0, 重力 X+0, Y+0
2 ヒット弱/ガード弱の動作
3 攻撃力20
4 中心軸 +0, +55  WAIT = 0


画像を読み込む際は、キャラクターと違って
「専用パレット」 を使う点に注意してください。

MEMO

専用パレットによる読み込み
専用パレットで画像を読み込むと、
カラーセレクトによる色変更の影響を受けなくなります。
大抵の場合、飛び道具オブジェクトを色変更することはないので
飛び道具は専用パレットで読み込むのがお勧めです。

画像のWAIT設定
4 ブロック目を見てください。
ここでは画像のWAITを0( 無限 )にしています。

WAIT値は無限でなくても構いませんが、
あまりにも値が小さいと、飛び道具が相手に届く前に
消えてしまうので注意してください。

 逆に、攻撃射程の短い飛び道具を表現する際は
 WAIT値を小さめにすると良いでしょう。

------------------------------------------------------------
移動速度の設定
1ブロック目では飛び道具の移動速度を設定しています。

キャラ側である「飛び道具攻撃」をアニメプレビューしながら値を調整すると良いでしょう。
ここでは Y方向の移動力は設定せず、水平に移動する飛び道具を作成しました。

※Y軸項目はデフォルト値のままです。

------------------------------------------------------------
攻撃判定の設定
先述した通り、攻撃判定などの設定はこのスクリプト内で行います。

リアクション設定などは通常のやられ動作などで構いません。
もちろん、飛び道具専用のやられを設定することも可能です。


攻撃枠では飛び道具の攻撃力を設定します。
この値をどう設定するかによって ゲームの方向性が決まってくるでしょう。

MEMO

飛び道具の威力とゲームバランス
攻撃力があまりにも低いようであれば
いわゆる死に技になるでしょうし、
逆に高すぎる場合は、対戦がただの飛び道具合戦になってしまう。
これについてはCPU戦の場合も同様です。
( 飛び道具に対処するCPUは作りにくい、という理由もあります )

飛び道具の威力を上げつつバランスを取りたい場合は、
攻撃後の隙を大きめに取ると良いかもしれません。

以上でスクリプトの設定は完了です。
飛び道具の技コマンド登録などが済んだら、 テストプレーを実行して動作を確認しましょう。



テストプレーで動作を確認

テストプレーを実行してみます。
今回は、攻撃に対する相手の反応も見たいので
相手の動作を「プレーヤー操作」 にしておきます。

コマンドを入力すると…

キャラが飛び道具を出しました。

飛び道具がまっすぐ飛んでいって…

相手にヒットしました。
相手はやられ動作を取っています。
一方、飛び道具を出した側は
攻撃後の硬直によって動けない状態にあります。


飛び道具ヒット後の動作

ここまでで飛び道具の基本的な設定は完了していますが、
ここからは少し追加の説明をしておきます。

飛び道具ヒット後…

飛び道具オブジェクトはそのまま相手の後方へ飛んで行きます。

レーザーのように物を貫通するタイプの攻撃だと問題ありませんが、
一般的な飛び道具として見ると やや違和感がある気がします。

やはり、ここはガードやヒットに応じて爆発や消滅した方が自然な感じがするでしょう。
以下、「オブジェクトが当ると爆発」 という動作を表現する方法について説明します。

爆発の動作を表現したスクリプトを組みます。

「飛び道具OBJ」 行の下に「飛び道具爆発」 という行を追加しました。
( スクリプトの扱いに慣れているのであれば、同一行内に組み込むのも有りです )

以下は今回使用する爆発グラフィックです。

※ゲーム用BMPは上記画像のリンク先にて提供しております。

色々凝った設定を組むこともできますが、今回は簡略化のために
爆発のアニメーションと移動力設定のみを行っています。

番号 命令 設定内容
1 移動 X+0, Y+0, 重力 X+0, Y+0
2 画像1枚目
3 画像2枚目
4 画像3枚目


ブロック1番目での「座標移動」 設定に注目してください。

ここでは、全ての移動力をリセットしています。

 水平に移動する飛び道具から呼び出されるスクリプトなので、
 ここでリセットしておかないと爆発の動作も
 水平の移動力を維持したまま実行されてしまう。


設定が済んだら「飛び道具OBJ」行に戻ってください。
攻撃枠の手前にて「条件分岐:技中有効」を追加します。
設定内容は以下の通りです。

攻撃が当ったら「飛び道具爆発」に飛びます。

同様にして…
ガードされたら「飛び道具爆発」 に飛ぶ条件分岐も用意してください。


スクリプトの設定が完了しました。
再びテストプレーを実行してみましょう。

------------------------------------------------------------
テストプレー
飛び道具がヒットしたところです。

前回テストと違って、オブジェクトは爆発しています。
飛び道具がガードされた場合も、結果は同様です。

MEMO

ループアニメつき飛び道具の場合
飛び道具をアニメつきで表現する際は
アニメーションのループを以下のように組むと良いでしょう。

各種条件分岐をアニメーションのループ内に
組み込んでいる点に注目してください。

こうすることによって条件分岐設定を維持したまま
アニメーションを組むことができます。

飛び道具オブジェクトの寿命について
今回の設定によって
ヒット/ガードされたオブジェクトは爆発して終了する形になりました。
ちなみに、相手に避けられた飛び道具は
画面外( 正確にはステージ外? )に達した時点で終了、消滅となります。

なお、途中でオブジェクトの移動力が0になる場合は
ステージ内に残ってしまうので注意が必要です。
 オブジェクトの表示限界数になると自動的に消えますが、
 間違いなくゲーム処理の負担になるので気をつけた方が良いでしょう。



長くなりましたが、以上で飛び道具の作成に関する説明を終えます。
今回の説明について質問などありましたら掲示板にて気軽にお尋ねください。


トップページへもどる

inserted by FC2 system