この記事は、
ツクールアドベントカレンダー2024の23日に参加しています。
おひさまクラフトさんのSRPGギアは
RPGツクール(RPGMaker)でSRPGを作るための公式素材です。
初歩的な使い方をまとめました。
SRPGってなんじゃらほいって方は
拙作の「
SRPGギルド5-決戦前夜-」(ブラウザゲーム)を遊んでみると分かりますよ。
SRPGギアは、MZ用だけでなくMV用もあり、基本はほぼ一緒だと思います。
また、SRPGギアには、ユーザー同士の情報交換及び、作者さんのサポートを受けられるフォーラムが存在します。(コメントするにはログインが必要です)
困った時には、
SRPGギアのフォーラムを活用しましょう。
さてそれでは、最初の一歩を始めましょう。
初心者は、いきなりまっさらなプロジェクトから作り始めず
サンプルプロジェクトに、ステージを追加する形で使い方を覚えるのが良いでしょう。
と、いうわけで、まず
おひさまクラフトさんちに行って
サンプルゲームをダウンロードしてください。
サンプルに同梱されている規約(はじめにお読みください.pdfとSRPGgear_read_me JP.pdf)をよく読んで、納得したらサンプルゲームのプロジェクトを開いてください。
まずは、基本中の基本
「敵を全滅させたら勝利」というステージを作ってみよう。
適当な大きさのマップを新規作成し、適当なマップをデザインします。
サンプルゲームの「stage1 薬草を探して」から001~012番までのイベントをコピペします。
001~006までがゲームの進行を管理するイベントで
007~012までが、プレイヤーキャラの配置イベントになります。
ちなみに、008~012までは同一イベントなので
008を戦闘参加可能人数分だけ配置するといいです。
敵がいないとすぐゲームオーバーになるので、014番の敵イベントもコピペしよう。
001番は、戦闘開始時のイベントです。
ここで、戦闘開始時の会話や、メニュー画面から参照するための
勝利条件の設定などを行います。
文章を指定するだけで、
実際の勝利判定は006番の「ユニット行動後の処理」で行います。
とりあえず、メイドさんのセリフは全カットし、例文にそって条件を編集しましょう。
このイベントが終わると、「戦闘準備画面」が表示されます。
戦闘準備画面では、
この戦闘に参加するメンバーを選出することができます。
「001戦闘開始時の処理」 入力例
002番はアクターターン開始時の処理です。
「◆コモンイベント:アクターターン開始演出」 以外は不要なので削除します。
表示演出を変えたい場合は、コモンイベントを編集します。
003番はエネミーターン開始時の処理です。
002番と同じです。
004番はターン終了時の処理です。
数ターン経過でゲームオーバーとか、増援とかのイベントに使います。
今回は何も入力しなくてOK。
005番は戦闘前の処理です。
攻撃などの行動を行う直前に、会話をしたいとかに使います。
今回は何も入力しなくてOK。
006番はユニット行動後の処理です。
はい、ここに敵が全滅してたら勝利、味方が全滅してたらゲームオーバーという処理を入れます。
007番はアクターIDを指定して、戦闘に参加するメンバーの配置位置を指定します。
つまり強制参加メンバーということですね。
全員強制参加にさせたい場合は、全員ID指定にするとよいです。
配置した数だけ、戦闘に参加できます。
008~012番はメンバーの並び順に戦闘に参加するメンバーの位置を指定します。
自由参加枠で、戦闘開始前の準備画面で参加者を変更できます。
配置した数だけ、戦闘に参加できます。
014番は敵キャラの配置になります。
指定したエネミーID(データベースのエネミー)の情報が反映されます。
ここまでできたら、ステージは完成です。
一旦テストプレイで問題がなければ、
このマップはひな型として保存し
コピペしたマップから編集を再開すると良いでしょう。
テストプレイをするためには
通常のマップから戦闘のマップに移動するイベントを作る必要があります。
適当なマップを作成し、プレイヤーのスタート位置に設定します。
ステージへの移動用のイベントを作成しましょう。
基本的には、マップへの移動イベントとプラグインコマンドで戦闘開始を指示するだけです。
移動位置については、移動位置にカーソルが表示されるので
戦闘マップの「001 戦闘開始の処理」イベントで会話を入れているなら
会話をするキャラの位置に指定するか、会話がないなら参加メンバーの誰かの位置に指定するのが良いでしょう。
「戦闘マップへの移動」イベント 入力例
これで、基本は完成です。
後は、ヘルプを読みながら自分の作りたいものを作るといいです。
プラグインのヘルプ画面で右クリックすると、ワード検索ができるので
サンプルのデータベース等のタグやイベントスクリプトが何を意味しているのか
わからないなーって時は、ワードをコピペして検索するといいよ。
SRPGギアMZ はじめの一歩、これにて終了。
SRPGがもっともっと増えますように。
オマケ こんな時どうする?
Q:戦闘準備画面をスキップしたいステージがあるんだけど?
A:プラグイン「SRPG_BattlePrepare_MZ」のプラグインコマンドで
準備画面を無効にするコマンドを、戦闘マップに移動する前に実行します。
そもそも準備画面まったく使わない場合は、プラグインごとOFFにしてもよい。
Q:攻撃時などに戦闘画面に移動しない(戦闘シーンスキップ)でマップ上で攻撃アニメーションを表示したい
A:プラグイン「SRPG_core_MZ」のパラメータにマップバトルの設定があるので
好きな設定に変更する。
Q:途中から敵を増やしたい
A:プラグイン「SRPG_core_MZ」のプラグインコマンド「ユニットの追加(増援)」を使う方法は、「stage1 薬草を探して」の「006 ユニット行動後の処理」にサンプルがあります。この方法は、事前に敵キャラ用のイベントを配置しておく必要があります。仲間キャラを増やしたい時もこちらの方法ですね。
もう一つ、召喚する方法は、「stage2 不死の大穴」の「アクターターン開始時の処理」にサンプルがあります。イベントコマンドのスクリプトで指示します。この方法は、ターン毎に敵が増える等、増援数が不確定な場合に便利です。また、償還用マップに敵キャラを作成しておく必要があります。プラグイン「SRPG_Summon_MZ」のヘルプに使い方が載っています。
特定の場所までプレイヤーがたどり着いたら増やしたい場合は、「stage3 邪神復活」の「006 ユニット行動後の処理」にサンプルがあります。この方法は、リージョンを配置してプレイヤーがリージョンの上にいるかを調べて増援するかを判定します。
Q:敵を全滅させる以外の勝利条件を作りたい
A:アイデア次第で色々作れます。
サンプルの「stage1 薬草を探して」では、「薬草を指定数集める」事。
これは、宝箱などの薬草を入手するユニットイベントを配置して
そのマスの上で行動を終了すると、変数に加」算するようにイベントを作ります。
「006 ユニット行動後の処理」イベントに、変数が一定数になったら
戦闘を終了させるイベントを入れます。
サンプルの「stage2 不死の大穴」では、「特定の敵を倒す」事。
これも「006 ユニット行動後の処理」イベントに
特定の敵が生きているかどうかを判定する処理を入れています。
特定の仲間が死んだとき、も同様です。
「特定ターンまでにクリア」は、普通に敵全滅でクリアに設定した後
「004 ターン終了時の処理」に、ゲームオーバーにしたいターン数+1の数値で条件分岐すると良いです。
Q:スキルの射程・範囲設定の仕方が良くわからない
A:データベースのスキルを編集します。
プラグイン「SRPG_core_MZ」のヘルプを開き「スキル」で検索すると
使用可能なタグの説明を読めます。
また、
みなみよつばさんの動画もお勧めです。
Q:トラップを仕掛けたい
A:
takachanさんの講座がお勧めです。
Q:ワープ先を作ってワープさせる魔法を作りたい
A:t
akachanさんの講座がお勧めです。
Q:特定の敵だけ、戦闘BGMを変えたい、会話したい
A:サンプルの「stage3 邪神復活」の「005 戦闘前の処理」にサンプルがあります。
サンプルでは、会話をするだけですが、戦闘BGMの変更にも使えるでしょう。
プラグイン「SRPG_core_MZ」のプラグインコマンド「行動中/対象のイベントか判定」を使用します。
拙作の「
SRPGギルド5-決戦前夜-」(ブラウザゲーム)で使われているルールで
再現方法わかんないよってのがあったら、コメントくれたら教えますよー。
[4回]
PR