ページ 11

【解決しました】回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 00:11
by リバース儲
初めまして、ツクールに慣れていない初心者ですがお願いいたします

回復呪文といえば、通常であれば割合回復や術者の能力値を式に組み込むと思うのですが、
こちらのレベルと相手のレベル差で回復量が変動するものにしようかと思っています。

これにより高難易度の戦闘や強敵との戦闘では回復量が上がるので、
戦闘に面白みが出るんじゃないかな、と思って作成しています。

一応敵のluc値をレベルとして扱うことで問題はないかと思ったのですが…

回復呪文だと味方間でのやり取りなので、敵の能力値を参照する方法が分からずに手詰まっている状態です。

$gameTroop.members().lengthが敵キャラ総数を表しているとのことなので、
これをいじればなんとかなるのかな…?と素人判断でやってみたものの、うまくいってないです。

説明が至らぬ点があるかと思いますが、ご助言いただきたいです。

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 00:29
by 虚構の城跡
計算式の応用でこういうのがあります。

$gameTroop.members().length
敵キャラ総数(まだ出現していない敵キャラは含まない)
$gameTroop.aliveMembers().length
生きている敵キャラの数
$gameTroop.deadMembers().length
倒された敵キャラの数
$gameTroop.movableMembers().length
眠りなどにかかっていない(動ける)敵キャラの数

こちらを参照
https://tkool.jp/mv/guide/004_006d.html

それにエネミーの能力値を計算式で組み込みたいのなら、変数の操作にあるゲームデータと計算式に変数を利用すればいいだけ。
変数1だったら、v[1]
200 + a.mat +v[1]

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 00:58
by リバース儲
返信ありがとうございます。
その式に敵の能力値を入れる場合はどういった式を書けばいいのでしょうか?

目標としては「戦闘時のみ使える、敵の能力値を計算式に入れた回復呪文」を作りたいのです。
$gameTroop.members().lukなどではダメみたいですので…すみません。

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 01:56
by 剣崎 宗二
大元の問題として、ツクールMVでは戦闘時複数の敵が出現する事があります。
参照したいのは出現した「どの敵の」能力値でしょうか?

尚、先頭の敵の能力値を参照したいのであれば、
$gameTroop.members()[0].luk
で試してみてください。

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 02:50
by リバース儲
剣崎 宗二さん、返信ありがとうございます。

書いてある通りの式で先頭の敵から参照できました、ありがとうございます!

参照先の敵については書くのを失念しておりました。
理想は「生存している敵の中で、最高のレベル(LUK)値」を参照する予定です。

あるいは「敵パーティのレベル(LUK)の平均値」のどちらかを採用しようかと。

この場合であればどうなるのでしょうか?
現状だと倒した敵の数字を参照し続けるので理想通りにならないので…重ね重ねすみません。



虚構の城跡さん、追記で変数について教えていただきありがとうございます。
変数で試してみましたが、私では理想の使い方ができなかったので、今回は違う方法を探ってみたいと思います。

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 10:48
by まっつUP
リバース儲様

能力の平均値でしたら以下のトピックのプラグインを導入すると
計算式に組み込みやすくなります。
ついでに味方のパーティと敵グループの平均の大小も評価できます。
viewtopic.php?f=5&t=3123&p=10311#p10311

最高値の場合はデフォルトではないのである程度自分で組むことになると思います。

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 20:03
by 剣崎 宗二
理想は「生存している敵の中で、最高のレベル(LUK)値」を参照する予定です。


こちらをお試しください。

コード: 全て選択

Math.max(...$gameParty.aliveMembers().map(function(x){return x.luk}, this))


但しご覧の通り相当に複雑な式となり、1ミスで動かなくなる可能性があります為、ご自分でプログラムを理解できて調整できる訳ではない場合は、あまりお勧めできる物ではないです…

Re: 回復呪文の計算式に敵の能力値を組み込みたい

Posted: 2019年4月28日(日) 23:27
by リバース儲
まっつUP様、プラグインの紹介ありがとうございます。
今回の件では平均値の採用は見送ることにしましたが、
他の要素でとても使えそうなプラグインでしたので使わせていただきます。



剣崎 宗二様、コードの制作ありがとうございます。
コードをそのまま式に入れて試してみたところ、うまく反映されませんでした。
私がプログラムを理解できないままとりあえず式に入れただけなので…

幸いにも前回の返信で教えていただいたコードで先頭の敵の能力値を参照することは可能なので、
こちらを使う方針で制作にとりかかろうと思います。
この度はお手数をおかけしました、ご助言ありがとうございました。