見出し画像

プラグイン紹介1〜時間の概念を生み出す〜

こんにちは。ROTTAです✨

このシリーズの記事では、
ゲーム制作に入れさせていただいているプラグインと、
そのプラグインの中で
使わせていただいている機能・使わせていただき方について
ご紹介したいと思います。

以前プラグイン紹介の記事は一度書いたのですが、
広く浅く……という感じでしたので、
今回から、一つ一つ改めてご紹介するかたちで投稿していきます。

今回ご紹介したいプラグインはこちら
『Chronus』
作者:トリアコンタンさま
https://triacontane.blogspot.com/2015/12/rpgmv-yyyy-mm-dd-hh2424-hh12-am-or-mi.html

ゲーム内に時間の概念を生み出してくれるプラグインです。
年月日、天候、時間、時間帯、曜日などを設定することができます。

このゲームで使わせていただいている部分
時間、時間帯、曜日、(天候)といったものを
どう使わせていただいているかご紹介していきますが、

その前に時間周りに関して、
作っていく上で基準となることを書いておきたいと思います。

目標

なるだけ私たちが送っている「日々」に近いものを表現したい。

プレイしてて、
「やるべきことをやったりやらなかったりしつつ、
なんやかんやしていたら1日が終わり、
気づいたら結構な日が経ってていつの間にか成長してる」

という感覚になってもらえるのがベストと思ってます。

そのために、

・やることがなく暇な状態は極力できないように
 =時間が経つ早さは、気持ち早いかなくらい
 その日中に終わらないタスクが残り続けた方がいい

・時間帯とか曜日とかで色々変えて、
 なるだけ「この世界にも人々の毎日が存在する」感じを出したい

これらを意識していきたいと思います。

・1日が何時間か
・ゲーム内の1分が現実時間のどれほどか
・戦闘時、ターン経過でどれほど時間が経つか
・イベント中(会話中とか)には時間は経つか
・何時から何時の間が朝で、昼で、といった時間帯の定義と、
 時間帯ごとの画面の色調

など調整しながら決めていきます。
この「調整しながら決める」のに、
先ほど書いた目標とか「こうしたい」という思いが大事になってきます。

目標・指針がはっきりしていない
基準がはっきりしていない
ということになるので、
そういった状態だといい感じに決めることができないし、
無理に決めようとすると精神的につらくなるかと思います。

時間帯の調整は、直接プログラムに手を加えていきます
デフォルトでは

となっていますが、このゲームでは早朝は必要なさそうでしたので、
ゴリ押しになりますが


このように変更しました。
時間を変更したのと、
「早朝」も「朝」にしたかたちです。

画像に「TimeId」という項目がありますが、
このidが、その時間帯に割り当てられた変数です。
時間帯は変数として使用でき、
例えば「時間帯が朝であれば○○」というイベントを作るときは、
条件分岐のところで
「時間帯と定義した変数=2のとき……」という感じで使っていきます。

次に曜日について触れていきます。

・曜日の個数
・曜日の名称

を設定することができます。
デフォルトでは現実世界と同じように曜日7個で月〜日になっており、
このゲームは現代ものですので、
特に変更はなしで使わせていただいてます。

曜日にも変数を割り当てることができて、
0〜6で日曜〜土曜に対応してます。

またテクニック?ですが、
曜日の変数0または6なら「休日」スイッチON
1〜5なら「平日」スイッチONとしておくと、
(スイッチは自分で作ります)
曜日一つ一つの処理を組まなくてもよくなることもあり、
キャラのスケジュールを組むときとかに少し楽できます。

▲こんな感じでイベントの出現条件に使うことが多い。

ちょっとポイント

デフォルトでは日曜(曜日変数=0)から始まりますが
「水曜日にあのイベントがきちんと起こるか見たい」
とかのときに、
ゲーム内のイベントで
変数の操作で「曜日の変数=3」
とやっても水曜日にはなってくれません。

順当に時間を経過させ
任意の曜日まで行く必要があります。

デバッグ用に時間経過のコマンドを用意してます。
例えば「今月曜だが水曜に行きたい」場合、
「6時」を2回実行し、
火曜日の6時→水曜の6時
て感じでショートカットはしつつ、時間の経過を踏む必要があります。

天候について

今のところこのゲームでは天候は関係ない(=常に晴れ)の予定ですが、
それはそれで処理が必要ですので、
ご紹介しておきます。

このプラグインは、デフォルトで
マップが変わるごとに天気が変わる仕様です。
「天気の概念はない」とする場合、マップそれぞれのメモ欄に

<C_Weather:OFF>と書き込む必要があります。

天候の概念のあるゲームでも、室内とかだと
この処理はいりそうですね。

よく使うプラグインコマンド

C_STOP  時間を止める
C_HIDE  時間のウィンドウを隠す
この二つは、長めのイベントや会話の直前によく使います。

C_SHOW  時間のウィンドウを表示
C_START  止めていた時間を動かす

C_ADD_TIME 60  60分経過させる(数値は任意。分単位)
C_SET_TIME  7 00  7時00分にする

例)
4/1の1時のとき、C_SET_TIME 7 00実行
→4/1の7時になる

4/1の8時のとき、C_SET_TIME 7 00を実行
→4/2の7時になる

まとめ

プラグインの機能としてはまだまだあるのですが、自分が使わせていただいているもので言うと、主にこんな感じでしょうか。

このプラグインは『七色の要』を作り出して
はじめに入れたプラグインで、
「無から大地を作り、時間という概念を作り、生き物を作り出すなんて、天地開闢みたいでかっこいー」とか思っていました笑

長い時間、ものすっごくお世話になっているプラグインです。
ありがたいです😭

それでは、また次回の記事でお会いしましょう!

この記事が気に入ったらサポートをしてみませんか?