コモンイベントの便利な活用法【RPGツクールMV/MZ】
私はRPGツクールでゲーム制作を始めました。
そこで疑問なのですが、「マップイベント」と「コモンイベント」って何が違うのですか?
コモンイベントを使いこなせるとどのような利点がありますか?
便利な活用法などもあれば教えてほしいです。
こんなご要望にお応えします。
この記事の内容
- マップイベントとコモンイベントの違いをわかりやすく解説
- コモンイベントの便利な活用法を画像付きで解説(RPGツクールMV/MZユーザー向け)
RPGツクールを使い始めると、データベースの「コモンイベント」というタブがあるのを目にするはずです。
使い始めて間もないうちは、何のためにあるものなのか分かりにくいと思います。
実は、このコモンイベントは、RPGツクールでゲームを作るうえでとても重要な役割を果たします。
コモンイベントを上手に活用することで、あなたは効率よくゲームを開発できるようになります。
また、あなたのゲームの拡張性を高めることもできるのです。
なので、ゲームを作るならコモンイベントについてしっかり理解する必要があります。
この記事を読めば、あなたはコモンイベントについて理解を深め、上手な活用法を覚えることができます。
それではご覧ください!
コモンイベントとマップイベントの違い
まず初めに、マップイベントとコモンイベントの違いを解説します。
結論、下記のとおりです。
マップイベント | そのマップでしか実行できないイベント。 |
コモンイベント | どのマップでも共通で実行できるイベント。 |
つまり、ゲーム全体で共通して実行する処理は、「コモンイベント」で記述することになります。
特定のマップにおいてのみ実行される処理は、「マップイベント」に記述するということです。
また、コモンイベントはマップイベント内で自由に呼び出すこともできます。
逆にマップイベントは、別途プラグインを使わないと自由に呼び出すことはできません。
マップイベントとコモンイベントの違いはご理解いただけたでしょうか?
ここからは、そんなコモンイベントの便利な活用法をご紹介します。
コモンイベントの便利な活用法
前述のとおり、コモンイベントはゲーム全体で共通して実行できるイベントです。
上手に活用することで、ゲーム開発を効率化し、ゲームの拡張性を高められます。
しかし、どういったコモンイベントを作れば良いのか?
使い始めたばかりの場合は、想像されるのは少々難しいかと思います。
そこで、便利なコモンイベントの活用法として、すぐに作れてすぐに使えるコモンイベントを複数ご用意しました。
コモンイベント | 実現できること |
---|---|
操作制御 | キーやボタンの入力判定をまとめて管理 |
各種キー(※9種) | 条件によって操作の内容を変えて実行 |
プレイヤー情報取得 | プレイヤー(操作キャラ)の位置や向きなどを常時取得 |
プレイヤー足音 | プレイヤーの足音を地形タグで分けて高度に再生 |
プレイタイム計測 | プレイ時間の計測と時間経過によるイベントの実装 |
自作メニュー | 独自のメニュー画面の実装 |
イベントシーン開始 | イベントシーン中にONにするスイッチや値を変える変数の管理 |
イベントシーン終了 | イベントシーン終了後にONにするスイッチや値を変える変数の管理 |
どれも実際に、私の制作したゲームで使用しているコモンイベントです。
今回は、すぐにあなたが作って使えるよう、テンプレート形式でご用意しました。
あなたのゲームで使えるように、適宜修正して作成してみてください。
ちなみに、ご紹介するコモンイベントで使用しているスイッチは、下の2枚の画像のとおりです。
また、使用している変数も、下の2枚の画像のとおりです。
それでは、作っておくと便利なコモンイベントを順番にご紹介していきます!
コモンイベント①:操作制御
◆注釈:--------------------------------------------------------
◆注釈:キーやボタンの入力判定
◆注釈:--------------------------------------------------------
◆条件分岐:ボタン[決定]が押されている
◆コモンイベント:1-決定キー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[キャンセル]が押されている
◆コモンイベント:1-キャンセルキー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[シフト]が押されている
◆コモンイベント:1-シフトキー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[下]が押されている
◆コモンイベント:1-下キー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[左]が押されている
◆コモンイベント:1-左キー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[右]が押されている
◆コモンイベント:1-右キー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[上]が押されている
◆コモンイベント:1-上キー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[ページアップ]が押されている
◆コモンイベント:1-ページアップキー
◆ラベルジャンプ:end
◆
:分岐終了
◆条件分岐:ボタン[ページダウン]が押されている
◆コモンイベント:1-ページダウンキー
◆ラベルジャンプ:end
◆
:分岐終了
◆ラベル:end
◆注釈:--------------------------------------------------------
◆注釈:処理落ち軽減ウェイト
◆注釈:--------------------------------------------------------
◆ウェイト:1フレーム
このコモンイベントを使うことで、キーやボタンの入力判定を一か所でまとめて管理できます。
コモンイベント②~⑩:各種キーやボタン
◆注釈:--------------------------------------------------------
◆注釈:通常時
◆注釈:--------------------------------------------------------
◆条件分岐:操作シーン = 0
◆ラベルジャンプ:end
◆
:分岐終了
◆注釈:--------------------------------------------------------
◆注釈:イベント時
◆注釈:--------------------------------------------------------
◆条件分岐:操作シーン = 1
◆ラベルジャンプ:end
◆
:分岐終了
◆ラベル:end
このコモンイベントでは、各種キーを押した際の実行内容を記述します。
変数で場合分けすることで、通常時とイベント時で実行内容を異なる内容にすることもできます。
その一例として、キャンセルキーのコモンイベントをご紹介します。
◆注釈:--------------------------------------------------------
◆注釈:通常時
◆注釈:--------------------------------------------------------
◆条件分岐:操作シーン = 0
◆コモンイベント:3-自作メニュー
◆ラベルジャンプ:end
◆
:分岐終了
◆注釈:--------------------------------------------------------
◆注釈:イベント時
◆注釈:--------------------------------------------------------
◆条件分岐:操作シーン = 1
◆ラベルジャンプ:end
◆
:分岐終了
◆ラベル:end
このように、通常時にのみ「自作メニューを呼び出せるようにする」といった処理が可能です。
コモンイベント⑪:プレイヤー情報取得
◆注釈:--------------------------------------------------------
◆注釈:プレイヤーの情報を取得
◆注釈:--------------------------------------------------------
◆変数の操作:#0026 プレイヤーX = プレイヤーのマップX
◆変数の操作:#0027 プレイヤーY = プレイヤーのマップY
◆変数の操作:#0028 プレイヤー向き = プレイヤーの向き
◆指定位置の情報取得:プレイヤー地形タグ, 地形タグ, ({プレイヤーX},{プレイヤーY})
◆指定位置の情報取得:プレイヤーイベントID, イベントID, ({プレイヤーX},{プレイヤーY})
◆注釈:--------------------------------------------------------
◆注釈:プレイヤーの一歩前の情報を取得
◆注釈:--------------------------------------------------------
◆変数の操作:#0031 プレイヤー一歩前X = プレイヤーX
◆変数の操作:#0032 プレイヤー一歩前Y = プレイヤーY
◆条件分岐:プレイヤー向き = 8
◆変数の操作:#0032 プレイヤー一歩前Y -= 1
◆
:分岐終了
◆条件分岐:プレイヤー向き = 6
◆変数の操作:#0031 プレイヤー一歩前X += 1
◆
:分岐終了
◆条件分岐:プレイヤー向き = 4
◆変数の操作:#0031 プレイヤー一歩前X -= 1
◆
:分岐終了
◆条件分岐:プレイヤー向き = 2
◆変数の操作:#0032 プレイヤー一歩前Y += 1
◆
:分岐終了
◆指定位置の情報取得:一歩前イベントID, イベントID, ({プレイヤー一歩前X},{プレイヤー一歩前Y})
◆注釈:--------------------------------------------------------
◆注釈:プレイヤー位置変数の作成
◆注釈:--------------------------------------------------------
◆変数の操作:#0034 プレイヤー位置 = プレイヤーX
◆変数の操作:#0034 プレイヤー位置 *= 1000
◆変数の操作:#0034 プレイヤー位置 += プレイヤーY
◆条件分岐:プレイヤー位置 ≠ 前回のプレイヤー位置
◆コモンイベント:11-プレイヤー足音
◆変数の操作:#0035 前回のプレイヤー位置 = プレイヤー位置
◆
:分岐終了
◆注釈:--------------------------------------------------------
◆注釈:処理落ち軽減ウェイト
◆注釈:--------------------------------------------------------
◆ウェイト:1フレーム
このコモンイベントを使うことで、プレイヤー(操作キャラ)の情報を常時取得することができます。
現在いる位置の「座標」「地形タグ」「イベントID」などを取得できるので、他のさまざまなイベントで応用可能です。
コモンイベント⑫:プレイヤー足音
◆注釈:--------------------------------------------------------
◆注釈:連続再生の防止
◆注釈:--------------------------------------------------------
◆スクリプト:let adswitchId = 22;
: :$gameSwitches.setValue(adswitchId, !$gameSwitches.value(adswitchId));
◆条件分岐:連続再生の防止がOFF
◆注釈:--------------------------------------------------------
◆注釈:足音の切り替え(左足と右足)
◆注釈:--------------------------------------------------------
◆スクリプト:let adswitchId = 23;
: :$gameSwitches.setValue(adswitchId, !$gameSwitches.value(adswitchId));
◆注釈:--------------------------------------------------------
◆注釈:足音の再生(地形タグごとに変える)
◆注釈:--------------------------------------------------------
◆条件分岐:プレイヤー地形タグ = 1
◆条件分岐:足音左右切り替えがON
◆SEの演奏:Footsteps1-L (30, 100, 0)
◆
:それ以外のとき
◆SEの演奏:Footsteps1-R (30, 100, 0)
◆
:分岐終了
◆
:分岐終了
◆注釈:--------------------------------------------------------
◆条件分岐:プレイヤー地形タグ = 2
◆条件分岐:足音左右切り替えがON
◆SEの演奏:Footsteps2-L (30, 100, 0)
◆
:それ以外のとき
◆SEの演奏:Footsteps2-R (30, 100, 0)
◆
:分岐終了
◆
:分岐終了
◆
:分岐終了
このコモンイベントでは、プレイヤーの足音の再生を管理できます。
地形タグごとに足音を変えたり、左足と右足で音声の種類を分けたりすることも可能です。
コモンイベント⑬:プレイタイム計測
◆注釈:--------------------------------------------------------
◆注釈:プレイタイム計測
◆注釈:--------------------------------------------------------
◆ウェイト:6フレーム
◆変数の操作:#0042 0.1秒 += 1
◆条件分岐:0.1秒 ≥ 10
◆変数の操作:#0043 秒 += 1
◆変数の操作:#0042 0.1秒 = 0
◆
:分岐終了
◆条件分岐:秒 ≥ 60
◆変数の操作:#0044 分 += 1
◆変数の操作:#0043 秒 = 0
◆
:分岐終了
◆条件分岐:分 ≥ 60
◆変数の操作:#0045 時間 += 1
◆変数の操作:#0044 分 = 0
◆
:分岐終了
◆注釈:--------------------------------------------------------
◆注釈:その他、時間経過による値の増減
◆注釈:--------------------------------------------------------
名前のとおり、ゲームのプレイタイムを計測します。
また、時間の経過による演出やゲーム要素の作成などにも応用可能です。
コモンイベント⑭:自作メニュー
◆注釈:--------------------------------------------------------
◆注釈:メニュー画面の表示
◆注釈:--------------------------------------------------------
◆文章:なし, 透明, 下
: :
◆選択肢の表示:セーブ, ロード, オプション, タイトル, 閉じる (ウィンドウ, 中, #1, #5)
:セーブのとき
◆セーブ画面を開く
◆
:ロードのとき
◆スクリプト:SceneManager.push(Scene_Load);
◆
:オプションのとき
◆スクリプト:SceneManager.push(Scene_Options);
◆
:タイトルのとき
◆文章:なし, ウィンドウ, 中
: :タイトル画面に戻ります。
: :本当によろしいですか?
◆選択肢の表示:はい, いいえ (ウィンドウ, 中, #1, #2)
:はいのとき
◆タイトル画面に戻す
◆
:いいえのとき
◆
:分岐終了
◆
:閉じるのとき
◆
:分岐終了
ここでは、あなただけのオリジナルのメニュー画面を作成できます。
今回は簡単な例として、「選択肢の表示」を利用してメニュー画面を作成してみました。
コモンイベント⑮:イベントシーン開始
◆変数の操作:#0022 操作シーン = 1
◆スイッチの操作:#0005 イベントシーン進行中 = ON
このコモンイベントでは、イベントシーンに入る際に「いつも値を変更する変数」や「いつもON/OFFを切り替えるスイッチ」をまとめて管理できます。
マップイベントなどで呼び出すことを前提としたコモンイベントです。
こうすることで、変数やスイッチの状態を毎回変えなければならない手間をなくせます。
コモンイベント⑯:イベントシーン終了
◆変数の操作:#0022 操作シーン = 0
◆スイッチの操作:#0005 イベントシーン進行中 = OFF
このコモンイベントも⑮と同様です。
イベントシーンが終了する際に、いつも状態を変える変数やスイッチをまとめて管理できます。
まとめ
今回はRPGツクールにおける「コモンイベントの便利な活用法」を解説しました。
コモンイベントを上手に活用すれば、あなたはゲーム開発をさらにスピーディにこなせます。
また、複雑なゲーム要素を実現するのが楽になったり、操作やUIなどの拡張性を高めることもできます。
なので、これからRPGツクールでゲームを作る際は、コモンイベントを有効に活用してみてください。
すると、あなたのゲームの可能性が圧倒的に広がりますよ!
実は他にも、ゲームの開発を効率化したり、作りたいゲーム要素の実現を楽にする方法はあります。
ずばり、イベントコマンド「スクリプト」の使用です。
下記の記事で、ほとんどコピペで使える、簡単で便利なスクリプトをご紹介しています。
RPGツクールMV/MZを使いこなしたい場合は、ぜひご覧になってください。
»知っていると便利なスクリプト一覧【RPGツクールMV/MZ用】