こんにちは、AM0500です。
今回紹介している「TakenDamageSettings ノード」は、アクションゲームメーカー(Action Game Maker)の 被ダメージ時の挙動 を細かく制御するためのノードです。オブジェクトがダメージを受けたときに発生する演出(点滅、フィルター効果、透明化)、効果音、無敵時間などを設定できます。
このノードは、オブジェクト(キャラクターや敵など)に追加して、被ダメージデータ (TakenDamageData) を配列で持たせる構成になっています。
各パラメータの説明
以下は、TakenDamageSettings の主なパラメータ(スクリーンショットに基づく)と、その意味の解説です。
被ダメージデータ一覧
-
型:配列 (Array[ TakenDamageData ])
-
意味:複数の被ダメージパターンを設定できます。たとえば、通常ダメージ・クリティカルダメージ・特定属性攻撃によるダメージなどを分けて扱える。
基本設定
-
名前:被ダメージ種別をわかりやすく識別する名前(例:「Damage」など)。
-
被ダメージ率の係数 (%):この設定を使って実際に受けるダメージ量を倍率で調整可能。100% = 通常通り、50% にすれば半分のダメージなど。
-
クリティカル発生率を変更:「オン」にすると、この被ダメージデータで設定したクリティカル発生率を使う。
-
クリティカル倍率 (%):クリティカルヒット時のダメージ倍率。
属性を設定
-
属性設定:特定の攻撃属性 (Fire/Ice 等) によってこの被ダメージデータが適用されるかを決める。
-
属性タイプ:プリセットの属性、またはカスタム属性などを選択。
-
攻撃属性定数:属性値を数値で指定。
-
条件:属性が「等しい (==)」、または他の比較条件 (大きい、小さいなど) で扱うか。
被ダメージ時の表示設定
-
表示時間を設定 (秒):ダメージを受けたときに演出 (点滅やフィルター) を何秒間続けるか。
-
オブジェクトのフィルター効果:被ダメ時にフィルター (下記のフィルタータイプなど) を適用するか。
-
フィルタータイプ:モザイク、点滅 (点滅)、塗りつぶし (特定色) などのフィルターを選択できる。(以下は点滅時のパラメータ例、選んだフィルターによって異なる)
-
数値:点滅の強さや透明度など、フィルター効果の数値パラメータ。
-
点滅間隔 (秒):点滅を繰り返す間隔。
-
画像表示:被ダメ時に特定の画像 (スプライト) を表示するか。
-
透過:表示画像の透明度。
-
指定色で塗る:色を指定してオブジェクトをその色に塗る (たとえば赤く点滅させるなど)。
-
完了までの時間 (秒):塗りつぶしが完全に色変化を終えるまでの時間。
-
演出中のオブジェクトが点滅:演出中にオブジェクト自身も点滅させるか。
-
点滅間隔 (演出中):演出中の点滅速度。
ヒットストップ設定
-
ゲームスピード:ヒット時にゲームスピードを遅くする倍率 (例:50.0 % = スローダウン)。
-
効果時間 (秒):ヒットストップ(スローモーション)効果を続ける時間。
-
ダメージを受けたオブジェクト:被ダメージしたオブジェクトにその効果を適用するか。
-
親オブジェクトを含む:親ノードにもヒットストップを適用するか。
-
子オブジェクトを含む:子ノードにも適用するか。
-
ダメージを与えたオブジェクト:攻撃を行った側にもヒットストップを適用するか。
-
親オブジェクトを含む / 子オブジェクトを含む (与えたオブジェクト):攻撃者の親/子ノードにも適用するか。
その他設定
-
サウンドを再生:被ダメージ時に音を鳴らすか。
-
サウンドデータ:鳴らすサウンドデータ (ID または設定済みリソース) を指定。
-
有効・無効用のスイッチを指定:特定のスイッチ (AGM のスイッチ変数) によってこの被ダメージ設定を ON/OFF 制御可能。
-
このオブジェクトのスイッチ:オブジェクトローカルなスイッチを指定。
-
プロジェクトのスイッチ:プロジェクト共通のスイッチを使って制御。
プレイヤーの手応えやゲームの見た目に大きく関わるので、ぜひ自分のアクションゲームに合った表現を追求してみてください。
【実践ガイド】気持ちの良い「被ダメージ演出」を作るための調整のコツ
TakenDamageSettingsの各項目を理解したところで、実際にゲームを面白くするための「演出レシピ」をいくつかご紹介します。ただ数値を設定するだけでなく、**「プレイヤーにダメージをどう感じさせたいか」**によって設定を使い分けるのがポイントです。
1. レトロアクション風:無敵時間を伴う「点滅演出」
昔ながらのアクションゲーム(ロックマンなど)のような、ダメージ後に一定時間無敵になる演出です。
表示時間(秒): 1.0 〜 1.5秒
フィルタータイプ: 「点滅(Blink)」
点滅間隔(秒): 0.05 〜 0.1秒
ここがコツ!: 「表示時間」と、オブジェクト設定側の「無敵時間」を同じ長さに設定しましょう。見た目の点滅が終わると同時に無敵も切れるようにすることで、プレイヤーが直感的に「あ、もうダメージを受けるな」と判断できるようになります。
2. 手応えを重視:一撃の重みを感じさせる「ヒットストップ」
攻撃を食らった瞬間に一瞬だけ時が止まるような演出です。
ゲームスピード: 10.0% 〜 30.0%(かなり遅くする)
効果時間(秒): 0.1 〜 0.15秒
ここがコツ!: ほんの一瞬だけスピードを落とすのがポイントです。あまり長くしすぎるとゲームのテンポが悪くなりますが、0.1秒ほど「間」を作るだけで、ダメージの重みが劇的に増します。強力なボスの攻撃などに設定するのが効果的です。
3. 視認性を上げる:色変化による「被ダメ強調」
キャラが重なっている時でも、ダメージを受けたことをはっきり伝えたい場合の設定です。
指定色で塗る: 赤色(R:255, G:0, B:0)
透過: 50%
完了までの時間(秒): 0.2秒
ここがコツ!: 一瞬だけキャラを赤く塗りつぶすことで、エフェクトが派手なシーンでも「今、ダメージを食らった」という事実をプレイヤーの脳に刻むことができます。
開発者としての考察:なぜ「被ダメージ設定」が重要なのか?
私が実際にアクションゲームメーカーで制作をしていて感じるのは、「ダメージ演出は、プレイヤーへの最も重要なフィードバックである」ということです。
数値としてのHPが減るだけでは、プレイヤーは「なぜ負けたのか」に納得感を持ちにくいものです。TakenDamageSettingsを細かく調整して、「痛そう!」「危ない!」という視覚的・体感的な情報を伝えることで、ゲームのクオリティは一段階引き上がります。
皆さんも、デフォルト設定のままにするのではなく、ぜひ自分のゲームの「手触り」に合わせてこれらの数値を微調整してみてください。



0 件のコメント:
コメントを投稿