2015年12月5日土曜日

ゲーム内時間の導入プラグイン

RPGツクールMVで使用可能な自作プラグイン「ゲーム内時間の導入プラグイン」の紹介です。


プラグインの説明

ゲーム内で時刻と天候の概念を表現できるプラグインです。自動、マップ移動、戦闘で時間が経過し、時間と共に天候と色調が変化します。これらの時間は調節可能で、またイベント中は時間の進行が停止します。また日付や曜日も記録し、曜日の数や名称を自由に設定できます。現在日付はフォーマットに従って、画面左上に表示されます。

日付フォーマットには以下を利用できます。

YYYY:年 MM:月 DD:日 HH24:時(24) HH:時(12) AM:午前 or 午後 MI:分 DY:曜日

スクリーンショット

プラグインのデモ

☆開始☆

※各種音量は初期状態で0に設定されています

ダウンロード

プラグインファイルはGithubで公開しています。

ダウンロード(Download)

利用規約

当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。ただし、ヘッダのライセンス表示は残してください。

http://opensource.org/licenses/mit-license.php

更新履歴

  • 2016/01/10 カレンダーウィンドウの表示位置をカスタマイズできる機能を追加
  • 2015/12/29 日の値に「1」を設定した場合に日付の表示がおかしくなる不具合を修正
  • 2015/12/01 天候と時間帯をゲーム変数に格納できるよう機能追加
  • 2015/11/27 初版

60 件のコメント:

  1. はじめまして。
    こちらのプラグインをダウンロードさせて頂きました。
    表現に大きく幅が出来、素晴らしく思うと同時に、このプラグインを公開して頂いていることに、感謝申し上げます。

    使用させて頂いている中、ひとつ気になる点があり、僭越ながら投稿させて頂きます。

    ヘルプ内での記述は下記で全てでしたが
    「C_ADD_TIME [分] : 指定した値(分単位)だけ時間が経過します。
     C_ADD_DAY [日] : 指定した値(日単位)だけ日数が経過します。
     C_SET_TIME [時] [分] : 指定した時間に変更します。
     C_SET_DAY [年] [月] [日] : 指定した日付に変更します。
     C_STOP : 時間の進行を停止します。
     C_START : 時間の進行を開始します。
     C_SHOW : カレンダーを表示します。
     C_HIDE : カレンダーを非表示にします。
     C_DISABLE_TINT : 時間帯による色調の変更を禁止します。
     C_ENABLE_TINT : 時間帯による色調の変更を許可します。
     C_DISABLE_WEATHER : 時間経過による天候の変化を禁止します。
     C_ENABLE_WEATHER : 時間経過による天候の変化を許可します。
     C_SET_SNOW_LAND : 悪天候時に雪が降るようになります。
     C_RESET_SNOW_LAND : 悪天候時に雨もしくは嵐が降るようになります。
     C_SET_SPEED [分] : 実時間1秒あたりの時間の経過速度を設定します。」

    拝見させて頂いたサンプルゲームでは、天候を命令で自由に変更することが出来ました。
    (話しかける→雨にする→雨が振る 晴れにする→晴れになる)

    これを、自分のツクール内で再現したいのですが、
    「天候の変化を許可」「悪天候時になったときは雪」という命令文しかなく、再現することが出来ません。

    サンプルゲーム内では、どのようにして天候の操作を行っているのでしょうか?
    よろしくお願い致します。

    返信削除
  2. こんにちは。この度はプラグインのダウンロードありがとうございます。天候を変化させるには通常のイベントコマンドから天候を設定すればOKです。意外と盲点だったかもしれませんね。。

    返信削除
    返信
    1. なるほど…………!ありがとうございます。

      削除
  3. はじめまして、こんにちは。
    トレトレと申します。
    プラグインダウンロードさせていただきました。
    そこで質問なのですが、カレンダーを表示するにはどうしたら良いのでしょうか?
    プラグインコマンドで、C_SHOWとしたのですが、左上に()みたいに、枠の画像だけが表示されて、日付などが表示されない状態です。
    何か他に必要なコマンドとかあるのでしょうか?
    初心者的質問で申し訳ありません。
    ご教授いただければ幸いです。

    返信削除
    返信
    1. こんにちは。トリアコンタンです。ご利用ありがとうございます。カレンダーはプラグインパラメータの日付フォーマットに基づいて日付と時間を表示しています。まずここを確認して頂いて値が入っていなければ説明に従って入れてみてください。

      削除
    2. 早速のご返信ありがとうございます。
      プラグインパラメータ内の日時フォーマットの1と2には、値が入っているようです。
      日付フォーマットと日時フォーマットは違うのでしょうか?
      何度も申し訳ありません。
      教えていただけないでしょうか?

      削除
    3. ご確認ありがとうございます。
      日時フォーマットで大丈夫です。うーん、だとすると根が深そうですね。。

      お手数をお掛けしますが、追加で2点ご確認をお願いします。
      ・当ブログのデモで正しく表示されているかどうか
      ・再度、プラグインをダウンロードして正しく表示されるかどうか
      ・その他の動作(時間経過で画面の色調が変わるなど)に問題はないか
      ・通常のメッセージ(文章の表示)が正しく表示されるかどうか

      申し訳ありませんが、よろしくお願いいたします。

      削除
    4. すみません。「追加で2点」ではなく「追加で4点」です。

      削除
    5. 何度もありがとうございました。
      JSファイルの名前を変更して、新しくダウンロードし直した所、動くようになりました。
      その後プラグインを入力しても、時間が進まず困っていましたが、日時フォーマットの記述方法が、どうやら間違っていたみたいです。
      日時フォーマットの記述を、一つ一つ確認しながら動かしてみた所、無事動くようになりました。
      お手数をおかけしました。
      本当に素敵なプラグインを、ありがとうございます!
      それでは、取り急ぎ用件のみにて失礼いたします。

      削除
  4. トリアコンタン様、初めましてideotと申します。
    プラグイン非常に助かっております。

    質問なのですが
    1:C_SHOWでカレンダーを表示する。
    2:C_SET_DAY 256 4 1に 指定した日付に変更する。
    すると 256年3月32日(火) と存在しない日付になるのですが
    仕様でしょうか?

    もう一点質問なのですが

    @param 年のゲーム変数
    @desc 指定した番号のゲーム変数に「年」の値が自動設定されます。
    @default 0

    これは例えば200を指定すれば、ゲーム変数200番に256年の256が格納されるのでしょうか?

    師走の忙しい中しょうもない質問で申し訳ありませんが
    可能であれば返信願います。

    返信削除
  5. はじめまして、ideotさん。
    プラグインのご利用ありがとうございます。

    1点目ですが、どうやら日の値に「1」を設定すると発生するバグのようです。
    こちらで引き続き調査してみます。ご不便をお掛けします。

    2点目ですが、ご推察の通りで問題ありません。
    指定された番号の変数に「年」の値が常に格納される状態となります。

    返信削除
  6. プラグインを修正しました。お手すきの際にでもご確認ください。

    返信削除
    返信
    1. トリアコンタン様、ideotです。
      修正ありがとうございます、非常に助かりました。

      削除
  7. トリアコンタン様、初めまして
    みずきと申します。

    時間プラグインについての質問なのですが、変数で昼で行動するイベントを製作できますが、夜から深夜(或は朝)まで現すイベント(敵とか)をどうやって設定すればいいでしょうか?自分の理解限りに、もし変数を5すれば深夜に現せない。

    忙しい中質問で申し訳ありません。
    ご返信いただければ幸いです。

    返信削除
  8. こんにちは。プラグインのご利用ありがとうございます。
    イベントページの出現条件は、変数が~以上しか設定できないのが厄介ですね。

    以下のように設定すれば一応可能です。
    1ページ目:無条件:出現
    2ページ目:変数が1以上:空のページ
    3ページ目:変数が5以上:出現

    もしくは「定期的に並列処理」のコモンイベントで変数が0が5のときにスイッチ「夜」をON

    お試し頂ければと思います。

    返信削除
  9. トリアコンタン様、初めまして。
    この度は素敵なプラグインのご提供、ありがとうございます。

    早速DLさせて頂き、使用をしているのですが、
    ゲーム内時間の設定を『REAL TIME』設定にしたままセーブを行うと、次回ロード時に『Type Error』が発生してしまいます。
    プラグインの競合も疑い、新規プロジェクトにこちらのプラグインのみを導入して実験もしてみたのですが、同じエラーを吐きました。
    『VIRTUAL TIME』に設定している場合は特にエラーは発生しないようです。

    トリアコンタン様のデモ版でもセーブデータを作ってみたところ、同様のエラーが発生してしまいました。
    解決策などお教え頂けますと幸いです。

    お忙しい中恐縮ではございますが、宜しくお願い致します。

    返信削除
    返信
    1. はじめまして!
      こちらでも現象を確認しました。

      お手数をお掛けして申し訳ありません。
      修正したしたので動作をご確認ください。

      削除
    2. こんにちは!
      素早いご対応をありがとうございます。

      無事に動作確認が完了しました。
      何事も無くロードをすることができました。

      この度は本当にありがとうございました!

      削除
  10. 素晴らしいプラグインをありがとうございます。DLさせていただきました。
    質問なのですが、このプラグインでゲーム内時間が夜の場合に出現するモンスターや起こるイベントを変更すること、表示している遠景画像を非表示にしたりは出来ますか?

    返信削除
    返信
    1. こんにちは。ダウンロードありがとうございます。
      「時間帯IDのゲーム変数」というパラメータ(プラグイン管理画面で指定できます)で指定した番号の変数に以下の値が格納される仕様になっています。

      0:深夜 1:早朝 2:朝 3:昼 4:夕方 5:夜

      基本的にはこの変数の値によってイベントを作り込めば実現できるかと思いますが、
      出現モンスターについては、並列イベントをうまく使って自作のエンカウントを作る必要があります。
      (マップの設定画面で指定するエンカウントは条件の指定ができないので)

      削除
  11. お世話になっております。
    ゲーム内時間の導入プラグインを導入してみたのですが
    cannnot read property meta of undefined というエラーが起きて先へ進みません。
    どうしたらエラーを回避できるでしょうか?

    返信削除
    返信
    1. こんにちは。プラグインのご利用ありがとうございます。
      お手数ですが、以下をお試しください。

      1. 最新版(1.2.4)を再ダウンロードして適用してみる
      2. エラーが発生しているのがコンティニューからであれば、ニューゲームでも同様の問題が発生するか試してみる
      3. 他のプラグインを適用している場合、一旦OFFにしてみる
      4. 新規プロジェクトでも同様の問題が発生するか試してみる

      よろしくお願いします。

      削除
  12. 素敵なプラグインのご提供ありがとうございます。
    カレンダー機能も時刻表示機能も現在創作しているゲームに必要なものだったのでとても助かっています。

    あまりスクリプトには詳しくないのでこれが不具合かどうかは分からないのですが、曜日配列部分に半角の「y」もしくは「Y」を入力すると、「N」と表示されます。(例:Monday→MomdaN)
    ちなみに他のアルファベットや全角の「y」や「Y」はそのまま表示されるようです。

    返信削除
    返信
    1. こんにちは。ご利用ありがとうございます。
      プラグイン側の問題だったので修正しました。(1.2.6)

      削除
  13. はじめまして、プラグインありがとうございます。
    時間プラグインについてですが、限定的な時間(例:正午から1時間の間)のみ動くイベントの設定は可能でしょうか?

    返信削除
    返信
    1. はじめまして。プラグインのご利用ありがとうございます。

      プラグイン管理画面の設定により現在の時間を任意の変数に格納することができます。
      あとはイベントの出現条件にその変数を指定すれば可能なはずです。

      削除
  14. はじめまして、こんにちは。私はつい最近、ツクールを始めた者です。
    天候の変化や時間の経過を表現できる素晴らしいプラグインのご提供、ありがとうございます。
    早速、導入させていただいたのですが、ゲーム内では「夜」のままで変化がありません。
    プラグイン管理画面に登録・自然時間加算を操作したのですが、他にも設定することがあるのでしょうか?
    ネットなどで調べてみたのですが、自分では解決できませんでした。
    お手数をおかけして申し訳ございませんが、お教えいただけないでしょうか。
    どうかよろしくお願いします。


    返信削除
    返信
    1. はじめまして! プラグインのご利用ありがとうございます!
      初期状態では、時間の経過が止まった状態になっているので
      まずゲーム開始直後にプラグインコマンド「C_START」を実行する必要があります。

      削除
    2. 早速のご回答ありがとうございました。
      ご指示通りにしましたところ、無事に時間・天候の変化が始まりました!
      本当にありがとうございました!<(_ _)>

      削除
  15. 素晴らしいプラグインをありがとうございます。
    早速導入してみましたが、プラグイン管理の画面文字化けが発生してしまいます。
    使う以前の問題で非常に申し訳なく思っておりますが、文字化けを直す方法を教えていただけないでしょうか?

    返信削除
    返信
    1. すみません!自分で解決できました!
      お恥ずかしいです・・・

      削除
    2. こんにちは。
      プラグインのご利用ありがとうございます!
      また何かありましたらご相談ください。

      削除
  16. このコメントは投稿者によって削除されました。

    返信削除
  17. プラグインの提供ありがとうございます。
    導入してバグ?のようなものを発見したので報告させていただきます。
    日時などを変数に代入するよう設定した時、なぜか変数に代入されていないようです。
    新規プロジェクトでも試してみたので競合ではないと思います。

    返信削除
    返信
    1. こんにちは!
      プラグインのご利用ありがとうございます!
      改めて確認してみましたが、こちらでは正常に各変数に値が格納されていました。
      念のため、以下をご確認ください。

      1. ダウンロードに失敗している可能性があるので、配布元から再ダウンロードしてみる。
      2. 他の機能(左上の時刻や時計表示、色調の変更等)が正常に動作しているか確認してみる。

      よろしくお願いします。

      削除
    2. このコメントは投稿者によって削除されました。

      削除
    3. 再ダウンロードしましたが、結局同じ状況です。
      他の機能はしっかり動いていますが、指定した変数の番号「2」に時間が代入されないままです。
      他の番号でも同じです。
      \V[2]とすると必ず0と表記されます。

      削除
    4. 返信が遅れてしまい、申し訳ありません。
      可能であれば最終手段としてどこかに現象の再現するプロジェクトをあげて頂ければ、こちらで確認します。
      よろしければご検討ください。

      削除
  18. 素敵なプラグインをありがとうございます!
    どうしてもこちらのプラグイオン導入したくて落としたんですが
    ほぼ同じ状況にいます・・・・一時はWindow表示しらでなくなったんです。でもそれはなんとかなりまして
    でも変数の数字が全く反映させなくて・・・・スクリプトでってやり方も通用しない感じです。

    ちなみに変数の設定はどうなるかわからないのでバーンと500までとって
    492から500まで使用しています。

    それと曜日名のゲーム変数にどうやって文字列を入れたら良いのかもわかりません
    カタカナで設定してるので入れようとしても数字しか入れられません。

    お手数ですが回答お持ちしております。
    あ、 Chronus.jsのバージョンは1.3.2です。

    返信削除
    返信
    1. 大変申し訳ありません。文字列に関しては解決いたしました

      削除
  19. イベントP1
    ◆プラグインコマンド:C_SET_TIME 7 00
    ◆プラグインコマンド:C_START
    ◆セルフスイッチの操作:A = ON

    イベントP2
    セルフスイッチA = ONの時
    ◆プラグインコマンド:C_START

    として運用したら一応その時間から稼働してくれました。
    カレンダー表示にすると気持ちが焦るので切りましたが・・・・
    うまく時間帯IDのゲーム変数を使えばイベントもなんとかなるかもしれないのでもう少し頑張ってみます。

    返信削除
    返信
    1. こんにちは。
      プラグインのご利用ありがとうございます!

      とりあえず今は、変数の取得も含めて正常に動作している……ということでよろしいでしょうか?
      また問題が発生しましたらご相談ください。お手数をお掛けしました。

      削除
    2. こんばんは。トリアコンタン様

      いえ、取得してくれてるのは強制的に設定した時間と時間帯だけです。
      【念のため空けすぎなのが行けないのかと思ったので492から500までではなく21から29までを使用することにしました。】

      天候は微妙なとこで晴れてる状態でスタートするはずなのに
      雨が降ったりします。(晴れてる時もあるんです。)

      デフォでテストプレイ中にスイッチや変数がいじれるようになってるのですが
      そちらでいじっても反応しない有様です。

      強制的に◆プラグインコマンド:C_SET_TIME 7 00と設定した26:時のゲーム変数、27:分のゲーム変数には
      設定した数字が代入されてくれたおかげか28:時間帯IDのゲーム変数も正常な状態ではあります。

      後の年、月、日、曜日(ID、曜日名)は全く何をしても反映してくれません。

      一度、MVをアンインストールしてアップデートもし直しては見ましたが
      新規Projectでも同様の結果でした。

      削除
    3. こんばんは。
      可能であればプロジェクトをどこかにアップロードしてください。
      こちらで現象を確認してみます。

      なお、天候については時間設定した時点でランダムに再設定される仕様になっています。
      また、念のための確認ですが、変数設定は、内部で保持している現在の時刻情報を指定した番号の変数に格納するもので
      その変数に手動で値を入れても、時刻が変更されるわけではありませんのでご注意ください。

      削除
  20. こんにちは。トリアコンタン様

    早々の返信有り難うございます。

    内部で保持している現在の時刻情報を指定した番号の変数に格納するということは
    どこかで変数に代入しておかないといけないんですよね?
    変数代入だとうまくいかないんですよね・・・・

    ・・・・∑あ、C_SET_DAY [年] [月] [日]で解決できました!
    何で気が付かなかったんだろう・・・・すみません。

    後は曜日を任意のには変えられない問題が残ってますが・・・・
    もしかしてC_SET_DY [曜日]にしたら変えられたりしますか?

    返信削除
  21. 早速試したらダメでした。

    返信削除
  22. トリアコンタン様こんにちは。
    素敵なプラグインをありがとうございます。

    とても楽しく利用させていただいています。
    そこで一つお聞きしたいことがあるのですが、MAPのメモ欄にを入れるなどして
    色調変更を禁止してしまうと通常イベントの色調補正をしてもメニューを開いたりするとすぐに色が戻ってしまうのは仕様なのでしょうか?
    洞窟などの特定のMAPで強制的に暗くするなど色調を補正したかったのですがうまくいきません。
    それとも私の方の設定に何か問題があるのでしょうか。基本的にはMAPのメモ欄にをいれるかMAP移動時のイベントにC_DISABLE_TINTをプラグインコマンドで呼び出した後に色調を補正しています。

    何かとお忙しいとは思いますがお答えいただけるとうれしいです。

    返信削除
    返信
    1. こんにちは!
      プラグインのご利用ありがとうございます。

      現象を確認、対応しました。
      お手数ですが、最新版のダウンロードをお願いいたします。

      色調変更を禁止しているときにイベントで色調変更した場合、すぐにリセットされてしまう問題を修正(ver1.3.3)

      URLはブログに掲載しているものと同一ですが念のためこちらにも掲示します。
      https://raw.githubusercontent.com/triacontane/RPGMakerMV/master/Chronus.js

      削除
    2. 丁寧な対応をしていただきありがとうございます。
      とても嬉しいです、早速ダウンロードし導入させていただきます。
      おかげさまでゲーム内の表現や演出が大幅に広がります。
      本当にありがとうございました。

      削除
  23. はじめまして、すてきなプラグインをどうもありがとうございます。
    カレンダーに表示される月を、数字ではなく文字列(英語や旧暦の月名など)にできたら
    表現の幅が広がっていいなあ、と思ったのですが
    プラグインのどこを書き換えたらいいものかすらわからず…。
    大変申し訳ないのですが、ご助力いただけますとさいわいです。

    返信削除
    返信
    1. こんにちは! プラグインのご利用ありがとうございます!
      ご要望について了解しました。やり方を検討してみます!

      削除
    2. ご要望の機能を追加しました! 記事のURLより再ダウンロードをお願いいたします。

      カレンダーに月名を表記する書式「MON」を追加(ver1.5.0)

      削除
    3. 素早い対応をどうもありがとうございます!!
      思った通りの表示ができとてもうれしいです。
      これからもありがたく使用させていただきます!

      削除
  24. こんにちは。
    不具合かもしれないので報告致します。
    バージョン1.4.0の新規プロジェクトで確認した現象です。

    C_DISABLE_WEATHERで天候を無効化していても、色調が雨の時のように暗くなることがあります。
    その時、雨のエフェクトはありません。色調だけです。

    イベントコマンドで天候を雨にしても、10秒足らずでエフェクトが消えてしまいます。
    その時、色調は暗くなったままです。

    お手隙の際にでもご確認よろしくお願い致します。

    返信削除
    返信
    1. こんばんは!
      プラグインのご利用ありがとうございます!

      1点目ですが「C_DISABLE_WEATHER」は天候のみを無効化するコマンドなので
      色調を無効化するコマンド「C_DISABLE_TINT」が別にあります。

      また、2点目について、天候が無効化されている状態では、イベントコマンドで雨を降らせても、
      プラグイン内部では天候は無効化扱いのままになっているので、場所移動もしくは時間経過で無効化される仕様です。
      (本来であればイベントコマンド自体を無効にした方が分かりやすいかもですね……)

      時間経過による天候変化自体を無効化するコマンドは今のところ実装していません。
      もしそのコマンドで問題が解決するのであれば比較的簡単に実装できるので、よろしければご検討ください。

      削除
    2. お返事ありがとうございます。そして申し訳ありません!
      C_DISABLE_WEATHERは天候を完全に無効化すると勘違いしていました。
      必要にあわせてC_DISABLE_TINTとの使い分けを試してみます。

      素敵なプラグインを公開してくださって、ありがとうございました!

      削除
  25. こんにちは、いつもありがとうございます!
    「悪天候の時は雪にする」設定を、コマンドの他にもマップのメモ欄でも行えるとありがたいのですが
    お願いできますでしょうか?

    というのも、「雪山」「雪原」など常に特定のマップでだけ雪にしたい場合、
    「扉や門でマップを出た時・入った時」「ワープやイベントで出た時・入った時」それぞれを考慮して
    雨←→雪を切り替えるスクリプトを随所に配置するより
    「このマップでは常に雨以外」という設定ができればだいぶ楽になると思いまして…

    よろしくお願いします!

    返信削除
    返信
    1. こんばんは!
      おそらく可能かと思いますので、やり方を検討してみます。

      削除
    2. こんばんは。
      機能を追加しました。記事のURLより再ダウンロードをお願いします。

      降雪マップをマップ単位、タイルセット単位で設定する機能を追加(ver1.6.0)

      削除
    3. ありがとうございました!
      これでさらに捗ります。お手数をおかけいたしました。

      削除

注: コメントを投稿できるのは、このブログのメンバーだけです。