#author("2026-06-03T18:33:08+09:00","default:admin","admin") #author("2026-06-03T20:11:43+09:00","default:admin","admin") *イベントバトル[#aa92e93d] ''いよいよこの講座も終わりに近づいてきました。'' ''最後に広間の奥にいるボスに近づくとイベントでバトルが起こるようにしてみましょう。 **ボスを配置する [#s6a1d113] ''「ボスの間」マップの広間部分にボスを配置しましょう。'' ここではボスは「物体」として置き、ボスバトルを発生させるイベントをボスより手前に配置します。 [[スタンプパレット]]の物体タブ>2Dキャスト>モンスターキャストの中からお好きなモンスターを選んでマップにおいてください。 ここでは「BOSS_Wizard_A」を置いてみました。 #ref(./イベントバトル_1.png,40%) #br ***ボスバトル用マップを作る [#e898615f] ''ボスバトル用のマップ"BossBattleMap"を作成しましょう。'' 地形や物体がバトルカメラの邪魔にならないようにうまく作ってみてください。 「ボスの間」マップと雰囲気を合わせつつ、画面が暗くなりすぎないようにライトを置いてみるのもよいでしょう。 サンプルとして下記のマップを作ってみました。 #ref(./イベントバトル_2.png,40%) #br **イベントバトル [#ha9fe18c] ''このマップの入り口から続く通路とボスのいる広間との間に、ボスバトルのイベントを置きましょう。'' 地形をクリックして"G"でイベントエディターを開き、下記の設定をします。 #ref(./イベントバトル_3.png,40%) #br イベント名は「ボスバトル」 --イベントシート名は「ボスバトル」 --衝突範囲は通路の幅をカバーする大きさに広げます。 --イベントトリガーは「プレイヤーから接触したとき」 --コマンドセレクターから「条件判断」カテゴリー>「バトルの実行と結果の確認」パネルを追加。 --パネルが開いたら「逃げられない」にチェックを入れ、BGMはお好きなものを設定してください。 出現するモンスターは先ほど見た目で選んだボスを指定しておきましょう。(この例では「大魔導士」) #ref(./イベントバトル_4.png,40%) #br 「配置調整」ボタンから、バトルを行うマップとバトルレイアウト(バトルマップ上のどこでバトルを行うか)を決めることができます。 マップは先ほど作った"BossBattleMap"を選び、バトルする位置を調整しましょう。 バトルテストボタンを押して、バトルシーンに問題がないか確認してください。 #ref(./イベントバトル_5.png,40%) #br 「バトルの実行と確認」パネルは勝敗によって分岐が発生するパネルです。 「勝ったとき」の下に「画面演出」カテゴリー>「タイトル画面を表示する」パネルを追加しましょう。 #ref(./イベントバトル_6.png,40%) #br テストプレイをしてみましょう。(スタート地点を変えたり、デバッグウィンドウを使って適宜ゲーム進行を変えてテストプレイをしてみましょう。) 「ボスの間」マップにて、ボスに勝てばタイトル画面へ戻り、負ければゲームオーバーになります。 ボスに勝った後の流れがあまりに味気ないと思われたら、BGMを変えたり、メッセージを出したり、画面を暗くするといった演出を加えてみてください。 #ref(./イベントバトル_7.gif,90%) #br ***リトライ [#o1027bb0] ''ボスに負けた時、ゲームオーバーにせずに「ボスの間」マップの入り口からやり直せるようにしてみましょう。'' 「ボスバトル」イベントを開き、先頭に「画面演出」カテゴリー>「ゲームオーバー時の動作指定」パネルを追加します。 --パネルが開いたら「高度な設定」にチェックを入れ、「設定を開く」ボタンをクリックしてください。 --「移動をする」にチェックを入れ、上のマップでマップの入り口をクリックしてリスタート位置を決めましょう。 --「復活時のHP」は100%に設定。 MPも回復させたいなら、「復活時の消費ステータス」欄で追加ボタンをクリックした上で復活する割合を設定してください。 #ref(./イベントバトル_8.png,40%) #br テストプレイをすると、ボスに負けてもマップの入り口からリスタートすることができるようになりました。 '''※サンプルゲーム『Orb Stories』の「宝珠の祠」マップにある「最後の闘い」イベントではまた違った形でイベントバトルに負けた際のリスタート処理を行っています。''' '''参考にしてみて下さい。''' **プレイヤーのステータスを変更する [#w6777524] ''現状のデータだとプレイヤーキャストが弱すぎて、ボスに勝てないでしょう。'' そこでデータベースでHPや攻撃力といったステータスを変更してみます。" データベース>キャストと進み、"HERO"を選択。 最大HPや攻撃力を変更しましょう。 「装備と技能」タブをクリックし、「習得するスキル」欄で追加ボタンをクリック。 好きなスキルを追加してみてください。 ”アサシンブレード”というスキルはデバッグ用のスキルとして、特に強力なダメージを与えられるように設定してあります。 #ref(./イベントバトル_9.png,40%) #br **セーブ間変数 [#wd87f74b] **「セーブ間共有」変数 [#wd87f74b] ''最後に、いわゆる「クリア後プレイ」を実現するための仕掛けを追加してみます。'' 「勝ったとき」の分岐の「タイトル画面を表示する」の前に、「スイッチ」カテゴリー>「イベントスイッチのON/OFF」パネルを追加してください。 「イベントスイッチの番号」欄をクリックし、開いたダイアログで「セーブ間変数」タブを選択。 「ボスバトル」イベントで「勝ったとき」の分岐の「タイトル画面を表示する」の前に、「スイッチ」カテゴリー>「イベントスイッチのON/OFF」パネルを追加してください。 「イベントスイッチの番号」欄をクリックし、開いたダイアログで「セーブ間共有」タブを選択。 追加ボタンをクリックして追加された「Crosssave0」の名前を「ゲームクリア」に変えてください。 #ref(./イベントバトル_10.png,40%) #br [[デバッグウィンドウ:https://rpgbakin.com/pukiwiki/?%E3%83%9E%E3%83%83%E3%83%97%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF%E3%83%BC%E6%A6%82%E8%A6%81#h5062e9c]]>「変数モニタ」で「ゲームクリア」変数をチェックしながらテストプレイをします。 ボスに勝った後、「ゲームクリア」変数に"1"が入り、タイトル画面に戻っても"1"のまま変わらないことを確認してください。 Bakinではイベントスイッチや変数はゲームクリア時に全てリセットされますが、「セーブ間変数」だけは値を保持し続けます。 例えば「「ゲームクリア」変数が"1"だったらこの内容を実行する」といったイベントを作ることで、ゲームクリア後のプレイでは別の展開を用意するといったことができるようになります。 Bakinではイベントスイッチや変数はゲームクリア時に全てリセットされますが、「セーブ間共有」変数だけは値を保持し続けます。 例えば「ゲームクリア」変数が"1"だったらこの内容を実行する」といったイベントを作ることで、ゲームクリア後のプレイでは別の展開を用意するといったことができるようになります。 今回は特に何も使いませんが、ここまでの知識を活かして二周目のプレイに変化を加えてみてください。 '''※サンプルゲーム『Orb Stories』では「セーブ間変数」を活用し、ゲームクリア前後でタイトル画面が変わるようにしています。''' '''※サンプルゲーム『Orb Stories』では「セーブ間共有」変数を活用し、ゲームクリア前後でタイトル画面が変わるようにしています。''' **スタート地点を決める [#k920599d] ''ボスバトルも完成したので、ゲームのスタート地点を"Map_1"の家の前に設定しましょう。'' 設定したら最初からテストプレイをしてみてください。 設定したら最初からテストプレイをしてみましょう。 #br ---- ''さぁこれで一通りゲームが出来上がりました。'' ''あとはイベントを追加したり、敵や自分の強さを変えてみたり、'' ''パーティーメンバーを追加して、複数人で冒険をするようにしてみてもいいでしょう。'' ''Ctrl+Zとバックアップファイルがあれば何度でもやり直せます。'' ''&size(18){Bakinのさまざまな機能を使って試して、"あなたの世界"をゲームにしてください。};'' //---- //バトル中にイベントを挟みたい場合は[[バトルイベント]]をご覧ください。 //スキルを使った時にイベントを発生させたい場合は[[アイテム/スキルとコモンイベント]]をご覧ください。 //ゲームUIを変更してみたい方は[[レイアウトツールの使い方]]を参考にしてください。 //作ったゲームをお友達や他の人に遊んでもらうには[[公開ファイルの出力]]を参考にしてください。 ---- ''&size(16){次ページ: };'' ''&size(16){前ページ: [[test_16]] };'' ---- ''&size(16){はじめに[[test_1]],プロジェクトを作る[[test_2]],マップを作る 1[[test_3]],マップを作る 2[[test_4]],テストプレイ[[test_5]]};'' ''&size(16){マップを増やす[[test_6]],イベントテンプレート[[test_7]],エンカウントバトル[[test_8]],敵の設定[[test_9]],イベントを作る①[[test_10]]};'' ''&size(16){イベントを作る②[[test_11]],イベントを作る③[[test_12]],デバッグ機能[[test_13]],変数を使う[[test_14]],"ジャンプ"する[[test_15]]};'' ''&size(16){カメラを変える[[test_16]],イベントバトル[[test_17]],イベントスイッチ[[test_18]],コモンイベント[[test_19]],バトルBGMやバトルに遷移する演出の変更(システムリソース)[[test_20]]};''