ページ 11

【解決済み】自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月19日(日) 21:27
by こうこう
最近プラグインの質問ばかりですいません。
私自身JavaScriptの知識は皆無です。
今回はアイテムに消費期限を設定するプラグインの相談です。
消費期限を設定できたのですが、メニュー画面やイベント中、タイトル画面でも時間が進んでしまいます。これらの時に、時間が進まないように設定したいのですが、命令を何度やっても進んでしまいます。

時間が進む:マップ移動、戦闘画面
時間が停止する:メニュー画面やイベント中、タイトル画面
このように設定したいです。
プラグインを添付します。
プラグインの手直し、コードの書き換える場所の回答をよろしくお願いします。

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 10:15
by くろうど
添付ファイルを見るのは他の方にお任せするとしまして、私はAIを触ったことがないので単純な疑問なのですが、
時間が進む:マップ移動、戦闘画面
時間が停止する:メニュー画面やイベント中、タイトル画面
このように設定したいです。
というのをAIに指示すれば良いのではないでしょうか?

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 12:30
by こうこう
くろうど様、返信ありがとうございます。

AIに対しては
時間が進む:マップ移動、戦闘画面
時間が停止する:メニュー画面やイベント中、タイトル画面
この文章のまま命令をしています。

経験上たぶん、惜しい所まではやってくれているはずですが……
コードを読んでも解らないので、どういう風に命令を変えたらいいか解らないです。

ChatGPT 4oの登場で今までより、格段に自分の欲しいプラグインを作れるようになりました。
しかし、まだ完璧に使いこなせず皆様のお手を煩わせています。
申し訳ありません。

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 12:56
by くろうど
なるほど、そうなんですね。

ちなみに、『アイテムに消費期限を設定する』ってどういう機能を求めているんですか?(いわゆる要件)
期限が切れるとどうなるのか?や、期限の長さって何日くらいなのか?などなど。

話によると、あなたとAI間では認識が合っているようなのですが、他の人はまだ知らないと思うので……。

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 13:09
by こうこう
添付したプラグインを見てもらうこと前提でプラグインの仕様の説明が全然足りていませんでした。申し訳ありません。

/*:
* @target MZ
* @plugindesc アイテムに消費期限を設定するプラグイン
* @help
* アイテムのメモ欄に <time:x> と記入することで消費期限を設定できます。
* 例: <time:30> と書くとそのアイテムの期限は30分になります。
* アイテムの説明欄に [expire] と記入すると、現在の期限が表示されます。
* 期限が過ぎると、アイテムが一つ無くなります。
* アイテムを使うと、期限はリセットされます。
*
* プラグインコマンドはありません。
*/

ここまではできています。
後は時間が進行する、停止する状況を設定するだけです。

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 13:28
by くろうど
なるほど~。

一応、添付ファイルをチラ見したんですが、Date っていう機能で時間を計っていると思われます。

Date っていうのは日付や時間を扱う機能なので、パソコンやスマホの時計が動いていると時間が進みます。

なので、やり方は以下のどちらかになると思いますのでAIに指示してみてください。

1. Date を使わない方法にして、時間を進めたいシーンだけ計る。
おそらく、シーンのupdate時にカウントアップすることになると思います。

2. Date を使いつつ、時間を進めたくない時間も計って計算する。

Re: 自作(ChatGPT 4o作)プラグインの質問

Posted: 2024年5月20日(月) 15:48
by こうこう
解決しました!

命令
Dateを使わずに別の機能で時間をはかることはできますか?
それでもう一度
時間が進む:マップ移動、戦闘画面
時間が停止する:メニュー画面やイベント中、タイトル画面
このように設定してください

回答
了解しました。Date オブジェクトを使用せずに時間を測るために、ゲームのフレームレートを基に時間を測定する方法を試みます。RPGツクールMZのデフォルトのフレームレートは 60 フレーム毎秒(fps)ですので、これを利用して時間を管理します。

これでゲームを動かして一通り確認した所、問題なさそうです。
問題解決に導いていただき、大変ありがとうございます。