ゲームにトレードオフの要素を入れると、プレイに深みが増します。リスクを取ってリターンを得るか、それとも無視して先に進むかの判断をプレイヤーに委ねることで、遊びに幅が生まれます。
今回はその要素のひとつとして、タイムを回復させるアイテムを追加します。アイテムを到達困難な場所に配置することで、「アイテムを取れば残り時間が増加する」「取れなければ大きく時間をロスする」2つの選択肢をプレイヤーに提示できます。
ゲームにトレードオフの要素を入れると、プレイに深みが増します。リスクを取ってリターンを得るか、それとも無視して先に進むかの判断をプレイヤーに委ねることで、遊びに幅が生まれます。
今回はその要素のひとつとして、タイムを回復させるアイテムを追加します。アイテムを到達困難な場所に配置することで、「アイテムを取れば残り時間が増加する」「取れなければ大きく時間をロスする」2つの選択肢をプレイヤーに提示できます。
※本ページは、ゲームメーカーズ×GALLERIA コラボPCに同梱される「ゲーム制作キット」の解説ページです。本コンテンツが含まれるコラボPCはGALLERIAの販売ページでお求めいただけますので、ぜひご検討ください。
「コンテンツ」→「GameMaking_Kit」→「Blueprints」に、回復アイテムのブループリント「BP_TimerItem」が用意されています。「BP_TimerItem」に、「触れたら残り時間を増やし、自身(プレイヤーが取得したアイテム)を消滅させる」機能を実装していきます。
コンテンツドロワーから、「BP_TimerItem」をダブルクリックし、編集画面を開きましょう。
「プレイヤーが触れた」ことを検知するには、「当たり判定」という仕組みを使います。
当たり判定を使うことで、プレイヤーや他のアクタが自分に触れたことを判定できます。「当たり判定に触れた時」に実行されるイベントを、イベントグラフに追加しましょう。
ブループリント編集画面の左上にある「コンポーネント」から、当たり判定である「ItemCollision」をクリックして選択します。
選択した状態で、画面右側にある詳細パネルを下にスクロールします。「イベント」にある「On Component Begin Overlap」右隣の「+」ボタンをクリックしましょう。イベントグラフ画面に、「On Component Begin Overlap (ItemCollision)」ノードが配置されます。
このアイテムでは、プレイヤーだけの接触に反応するようにしたいため、まずは「触れたものがプレイヤーかどうかをチェックする」仕組みを実装します。
扉を開く処理でも使用した、条件を満たしているかどうかで処理を分岐できるノード「Branch」を配置します。「On Component Begin Overlap (ItemCollision)」ノードと、実行ピンをつなげましょう。
「当たったアクタがプレイヤーキャラクターかどうか」を、Branchノードで判定させるように設定します。プレイヤーキャラクターにアクセス(取得)する「Get Player Character」ノードを新たに配置しましょう。
「Get Player Character」の「Return Value」ピンをドラッグして「Equal(==)」ノードを追加しましょう。
出力先はBranchノー ドのConditionピンにつなげます。そして、「Equal(==)」ノードにあるもう1つの入力ピンには、当たり判定に触れたオブジェクトが取り出せる「Other Actor」ピンをつなげましょう。これで、「当たり判定に触れたオブジェクト」と「Get Player Characterの出力(= プレイヤーキャラクター)」が一致するときに、「True」 の処理が実行されるようになりました。
このゲームでは、残り時間の仕組みを「PlayerController」が担うようにしています。
的のブループリントから「BP_PlayerController」の「OnTargetBroken」を実行したときと同様に、PlayerControllerを取得する「Get Player Controller」ノードを配置します。
的の実装と同様、「Return Value」ピンをドラッグし「Cast To BP_PlayerController」ノードを追加しましょう。実行ピンは「Branch」の「True」とつなげます。
「As BP Player Controller」ピンをドラッグし、「BP_PlayerController」に実装されている残り時間を加算する処理「Add Remain Time」ノードを配置します。
続いて、加算されたことを示す効果音を再生する処理を追加します。「Play Sound 2D」ノードを配置し、「Add Remain Time」と実行ピンをつなげましょう。
「Sound」ピンで、鳴らすサウンドを指定できます。「アセットを選択」をクリックし、サウンドのリストから「SE_GetItem_Cue」を選択しましょう。
最後に、アイテム自身を消滅させる処理を実装します。「Destroy Actor」ノードを配置し、「Play Sound 2D」と実行ピンをつなげます。「Destroy Actor」がなければアイテムが消えないため、プレイヤーは同じアイテムを何度でも取得できてしまいます。
これで、アイテムの実装は完成です。
マップの画面に戻り、「BP_TimerItem」をスタート地点の近くに配置しましょう。
プレイして、正しく動作するか確かめてみましょう。アイテムに触れると左下のタイマーが10秒加算され、アイテムが消えます。
実装できた「BP_TimerItem」を、マップ内に配置していきます。プレイヤーに「挑戦」を促すか、あるいは難所を超えた「報酬」として提示するかなど、目的を考慮して適切な配置を探りましょう。
アイテムが配置できれば、ついにゲーム完成です!
余力がある方は、発展編としてハンドブックP.24のCHALLENGEに挑戦してみましょう。
ゲームメーカーズ×GALLERIA コラボPC 紹介ページコラボPC 特設ページ
西川善司が語る“ゲームの仕組み”の記事をまとめました。
Blenderを初めて使う人に向けたチュートリアル記事。モデル制作からUE5へのインポートまで幅広く解説。
アークライトの野澤 邦仁(のざわ くにひと)氏が、ボードゲームの企画から制作・出展方法まで解説。
ゲーム制作の定番ツールやイベント情報をまとめました。
ゲームメーカーズ スクランブル2025で行われた講演のアーカイブ動画・スライドをまとめました。
GAME CREATORS CONFERENCE ’25で行われた講演レポートをまとめました。
GDC 2025で行われた講演レポートをまとめました。
UNREAL FEST 2024で行われた講演レポートやインタビューをまとめました。
東京ゲームショウ2024で展示された作品のプレイレポートやインタビューをまとめました。
CEDEC2024で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブル2024で行われた講演のアーカイブ動画・スライドをまとめました。
CEDEC2023で行われた講演レポートをまとめました。
東京ゲームショウ2023で展示された作品のプレイレポートやインタビューをまとめました。
UNREAL FEST 2023で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブルで行われた講演のアーカイブ動画・スライドをまとめました。
UNREAL FEST 2022で行われた講演レポートやインタビューをまとめました。
CEDEC2022で行われた講演レポートをまとめました。