【解決済】戦闘で使用できるアイテムを制限するプラグイン

Default
記事: 23
登録日時: 2019年11月20日(水) 22:58

【解決済】戦闘で使用できるアイテムを制限するプラグイン

投稿記事by Default » 2022年2月08日(火) 10:09

ご確認ありがとうございます。
いつもお世話になっております。

戦闘で使用できるアイテムを制限するプラグインを探しています。
具体的には、
①所持しているアイテムをメニュー画面から専用のリストに登録(40個ほど)
②バトル画面ではリストに登録したアイテムがランダムに数個だけ表示され、使用できる。(1個使うとまたランダムに1個補充される)
というものです。

どなたか作っていただけますでしょうか?
あるいは、類似プラグインがあれば教えていただけると幸いです。
宜しくお願い致します。
最後に編集したユーザー Default on 2022年2月18日(金) 20:48 [ 編集 1 回目 ]

basu

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by basu » 2022年2月12日(土) 23:36

Default さんが書きました:ご確認ありがとうございます。
いつもお世話になっております。

戦闘で使用できるアイテムを制限するプラグインを探しています。
具体的には、
①所持しているアイテムをメニュー画面から専用のリストに登録(40個ほど)
②バトル画面ではリストに登録したアイテムがランダムに数個だけ表示され、使用できる。(1個使うとまたランダムに1個補充される)
というものです。

どなたか作っていただけますでしょうか?
あるいは、類似プラグインがあれば教えていただけると幸いです。
宜しくお願い致します。


仕様があいまいなところが多いのでもう少し詳しく書いて頂けると良いかもしれないです。
とりあえず読んで不明なところを記載します。

1. 40個ほど専用のリストに登録とありますが、ランダムなどで登録個数が変動したりしない?
2. バトル画面でランダムに数個だけ表示とありますが、これも個数は変動せず固定?
3. 1個使うとランダムに1個補充とありますが、使用したアイテムの残数が残っている場合は再度補充候補に含める?
4. 使用したアイテムの残数が0になった場合は登録リストから削除する?
  それとも登録だけ残してバトルでは表示しないようにする?
5. 複数のパーティーメンバーが同じアイテムを使用した場合、補充処理はどのような動きになる?
  例えばメンバーAとメンバーBが同じターンにポーションを使った場合など・・・

ざっと現在不明な点を上記に記載しました。
現状は不明な点が多いため作成できるかの判断は難しいです・・・(すみません
また、上記の返答を頂けても作成できる保証はありません。

宜しくお願いします。
Default
記事: 23
登録日時: 2019年11月20日(水) 22:58

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by Default » 2022年2月13日(日) 12:45

basuさん
ご確認ありがとうございます。
ご指摘に回答致します。

1. 40個ほど専用のリストに登録とありますが、ランダムなどで登録個数が変動したりしない?
> 専用のリストは最大数は変動しない形でお願いします。
> 可能であれば、
> ①最低でも10個とか最低数を登録しないといけない仕様
> ②同一アイテムはアイテムごとに登録できる最大数があり、アイテムのメモで設定
が出来たらと考えています。

2. バトル画面でランダムに数個だけ表示とありますが、これも個数は変動せず固定?
> 基本的には固定で問題ありません。
> 可能であれば、装備品で変動が出来たらと考えています。

3. 1個使うとランダムに1個補充とありますが、使用したアイテムの残数が残っている場合は再度補充候補に含める?
> 専用のリストとアイテムの補充に関してですが、
> まず、リストは以下のようなイメージを考えています。
> アイテムごとで登録するのではなく、アイテム1個ごとを登録するイメージです。
----------------------------------------------------------------------------------
| 所持アイテム       | 登録アイテム(リスト)  |
----------------------------------------------------------------------------------
| 回復薬      ×15 | ---------------        |
| 魔法薬      ×10 | ---------------        |
| 投げナイフ    × 1 | ---------------        |
|              | ---------------        |
|              | ---------------        |
|              | ---------------        |
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
| 所持アイテム       | 登録アイテム(リスト)  |
----------------------------------------------------------------------------------
| 回復薬      ×12 | 回復薬          |
| 魔法薬      × 8 | 回復薬          |
| 投げナイフ    × 1 | 回復薬          |
|              | 魔法薬          |
|              | 魔法薬          |
|              | ---------------        |
----------------------------------------------------------------------------------


> そして、バトル中もアイテムは同一アイテムも個別に扱って頂きたいです。
> アイテム名のリストを表示、選択したらそのアイテム名のアイテムを使用。のようなイメージでしょうか。
----------------------------------------------------------------------------------
| >回復薬  回復薬  魔法薬  投げナイフ  爆弾  |
|                            |
|                            |
|                            |
----------------------------------------------------------------------------------

>アイテムの補充に関しては、以下のように考えています。
> 「専用リスト、バトル用リスト、表示リスト、使用済みリスト」の4つのリストを使用し、
> メニュー画面で専用のリストにアイテムを格納し、(実際はIDを格納して、名前を表示でしょうか)
専用リスト [ 回復薬 回復薬 回復薬 魔法薬 魔法薬 投げナイフ 爆弾 爆弾 石 石 石 石 ]

> バトル開始時にランダム化(戦闘用のリストにランダム化したものを格納でしょうか)
バトル用リスト [ 石 回復薬 魔法薬 投げナイフ 石 石 回復薬 石 爆弾 爆弾 回復薬 ]

> 先頭から決められた数個を表示リストに移動
バトル用リスト [ 石 回復薬 石 爆弾 爆弾 回復薬 ]
表示リスト [石 回復薬 魔法薬 投げナイフ 石 ]

> 使用したアイテムは表示リストから削除。ターン開始時に消費分補充
(投げナイフを使用。石を補充。使用したアイテムは使用済みリストに格納)
バトル用リスト [ 回復薬 石 爆弾 爆弾 回復薬 ]
表示リスト [石 回復薬 魔法薬 石 石]
使用済みリスト[ 投げナイフ ]

> バトル用リストが空になったら、使用済みリストからバトル用リストに戻して補充
バトル用リスト [ ]
表示リスト [回復薬 石 爆弾 爆弾 回復薬 ]
使用済みリスト[ 投げナイフ 石 回復薬 魔法薬 石 石 ]
↓回復薬使用!
バトル用リスト [ 石 魔法薬 回復薬 石 投げナイフ 回復薬 ]
表示リスト [ 石 爆弾 爆弾 回復薬 石 ]
使用済みリスト[ ]

4. 使用したアイテムの残数が0になった場合は登録リストから削除する?
  それとも登録だけ残してバトルでは表示しないようにする?
> 登録だけ残してバトルでは表示しないようにお願いします。
> ただ、ゲームの仕様上アイテムは消費しない(厳密に言えば消費はするが、使用時に同一のアイテムを獲得する)つもりなので、バトルで表示しない必要もないかと思っています。

5. 複数のパーティーメンバーが同じアイテムを使用した場合、補充処理はどのような動きになる?
  例えばメンバーAとメンバーBが同じターンにポーションを使った場合など・・・
> アクター1人以外はアイテムを使用しないつもりだったので、考えていませんでした。
> そのため、特に問題がなければそのような事象は発生しないという想定でお願いします。

また、上記のような仕様の場合、登録している数未満になるようにはアイテムを売れないようにすることは可能でしょうか?

説明が下手で申し訳ありません。
ご確認をお願い致します。
basu

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by basu » 2022年2月13日(日) 14:06

ご回答ありがとうございます。

1. リストは固定ということで承知しました。
  また、最低登録数やアイテムの最大数はパラメータで設定できるようにすることが可能です

2. こちらも基本固定ということで承知しました。
  装備品での変動もパラメータで設定できると思います

3. アイテムは1個ごとの登録承知しました。
  ちょっと自分が想定していた動きとは違っていました。
  ただ、バトル側ではかなり改修をしないといけないので難易度はかなり高いように思われます・・・

4. 補充と消費をループという流れは3の説明で承知しました。
  因みにバトルでいくら消費をしても所持品の個数は減らないという認識で合っていますか?

5.メンバーの動きは特に考慮する必要がないということで承知しました。


結構自分が想定していた動きとは違っていました。
一応作ってはみますが、バトルシステムの改修など難易度が高く感じるので出来るかはちょっとわかりません。
時間もそれなりにかかると思うので出来れば類似のプラグインがあれば良いのですが・・・
もし長期間反応がなければ申し訳ないのですがグダっていると思ってください・・・

因みにメニュー画面のアイテムはそのまま残して、新たに登録用のメニュー項目を追加してそこで登録をする認識で合っていますか?
また、登録できるのは通常のアイテムだけで武器や防具などは登録しないという認識で合っていますか?
(ツクールのデータベースではアイテム、武器、防具がそれぞれ別々で登録されているため)

宜しくお願いします。
Default
記事: 23
登録日時: 2019年11月20日(水) 22:58

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by Default » 2022年2月13日(日) 18:54

ご確認ありがとうございます。

4. 補充と消費をループという流れは3の説明で承知しました。
  因みにバトルでいくら消費をしても所持品の個数は減らないという認識で合っていますか?
> バトルでいくら消費をしても所持品の個数は減らない認識で合っています。

因みにメニュー画面のアイテムはそのまま残して、新たに登録用のメニュー項目を追加してそこで登録をする認識で合っていますか?
また、登録できるのは通常のアイテムだけで武器や防具などは登録しないという認識で合っていますか?
(ツクールのデータベースではアイテム、武器、防具がそれぞれ別々で登録されているため)
> 登録用のメニュー項目を追加、で合っています。
> 武器や防具は登録しない認識で合っています。

ややこしいプラグインを求めてしまっているので、ある程度妥協することは考えております。
もしどこか実装できない部分があれば、何らかの変更も考えています。

宜しくお願い致します。
basu

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by basu » 2022年2月13日(日) 22:29

ご回答ありがとうございます。
まだ開発中ではありますが、アイテム登録画面はこんな感じでよろしいでしょうか?

メニュー画面
画像
※メニューの項目名はパラメータから変更可能です

アイテム設定画面
画像

アイテム設定時
画像
※設定されているアイテムは黄色で表示されます

同一アイテム最大数登録時
画像
※最大数登録したアイテムは赤色で表示され、そのアイテムは登録が出来なくなります
 また、最大数登録数はパラメータからアイテムごとに設定することが出来ます

バトルアイテム最大数登録時
画像
※バトルアイテムを最大数登録すると全てのアイテムが赤色で表示され、登録が出来なくなります
 また、最大数登録数はパラメータから設定することが出来ます

登録アイテムの解除
画像
※右側の登録画面から登録しているアイテムを解除することが出来ます
 (左右キーで設定画面(画面左)と登録画面(画面右)を切り替えることが出来ます)
 また、解除したアイテムは所持数が加算され登録前に戻るようになっています

現在は登録画面を閉じたタイミングで設定しているアイテムは登録されるようになっています。
※ゴールドや所持アイテムなどを保持・管理している$gameParty(Game_Party)オブジェクトで保持・登録を行うようになっています

また、最低登録数ですが下記の問題があるため実装はしていません

問題1 所持アイテムが最低登録数を満たしていない場合登録が出来なくなります
問題2 最低登録数を満たさないで設定(登録画面を閉じた)した場合の処理内容はどうするか
    ・登録画面を閉じられないようにする
    ・警告メッセージを出して閉じても保存されないようにする
     また、その場合はどこに警告メッセージを出す?(ヘルプメッセージのところ?)


宜しくお願いします
Default
記事: 23
登録日時: 2019年11月20日(水) 22:58

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by Default » 2022年2月14日(月) 00:37

ありがとうございます。
まったくもってイメージ通りです。

----------------------------------------------------------------------------------------------------------------------------
また、最低登録数ですが下記の問題があるため実装はしていません

問題1 所持アイテムが最低登録数を満たしていない場合登録が出来なくなります
問題2 最低登録数を満たさないで設定(登録画面を閉じた)した場合の処理内容はどうするか
    ・登録画面を閉じられないようにする
    ・警告メッセージを出して閉じても保存されないようにする
     また、その場合はどこに警告メッセージを出す?(ヘルプメッセージのところ?)
----------------------------------------------------------------------------------------------------------------------------

こちらについてですが、所持アイテムの個数表示が減るということは、
リストに登録したアイテムは実際の所持数からも減るのでしょうか。
(3個所持で3個登録した場合は通常のアイテムリストでは表示されなくなりますか?)
裏を返せば、リストに登録されているアイテムは所持していることになるのでしょうか。

その場合、ゲーム開始時の初期登録リストを設定させていただけないでしょうか?
つまり、最初から最低登録数分のアイテムを登録しておくことで、
・通常のアイテムリストには表示されないので、登録したアイテムは売れない
・最低登録数が登録されていないと登録画面が閉じられないので、所持アイテムを最低登録数未満にすることができない。
という形になるのではと考えています。
もしこの形で問題がなさそうであれば、登録画面を閉じられないようにする(警告メッセージをヘルプメッセージに表示する)という仕様でお願いしたいと思います。

宜しくお願い致します。
basu

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by basu » 2022年2月14日(月) 20:03

ご回答ありがとうございます。
ゲーム開始時に必要分のアイテムを所持している前提でしたら問題はありません。
アイテムを未所持でゲームを開始した場合は、最低必要数のアイテムが揃うまで
バトルアイテムの設定が出来なくなるのでそこが気になっていました。

また、質問の回答ですがバトルアイテムに設定するアイテムは所持アイテムから減少する仕組みになっています。
なので、バトルアイテムに設定して所持数が0になったアイテムはアイテム欄には表示されなくなります。
ただし、バトルアイテムから解除した場合は所持アイテムに戻るのでその時はアイテム欄に表示されるようになります。
アイテム欄とバトルアイテム欄で入れ替えをするというイメージです。

アイテム欄(所持アイテム) ⇦ ⇨ バトルアイテム欄

宜しくお願いします。
Default
記事: 23
登録日時: 2019年11月20日(水) 22:58

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by Default » 2022年2月14日(月) 23:49

ありがとうございます。

思っていた仕様で安心しました。

それでは、宜しくお願い致します。
basu

Re: 戦闘で使用できるアイテムを制限するプラグイン

投稿記事by basu » 2022年2月15日(火) 20:09

プラグインを作成してみました。
軽く動作確認は行っていますが不具合が残っている可能性があります。
機能の確認と併せてご確認をお願いします。

■ランダムバトルアイテム
https://raw.githubusercontent.com/basuka/RPGMZ/main/request/RandomBattleItem/RandomBattleItem.js

“MZ:プラグイン素材のリクエスト” へ戻る