ページ 11

ダメージが大きくなりすぎるのを抑えたい

Posted: 2018年5月31日(木) 14:01
by つちくら
質問させていただきます。

ターン経過とともにダメージが大きくなる技を作っています。
ですが無限に大きくなりすぎると強くなりすぎるので、
対数(log)を使ってダメージの上昇をある程度まで抑えたいのですが、
使うことができませんでした。
どうにか他の方法でダメージをいい塩梅まで落とすことはできないでしょうか?

どなたか答えてくださると嬉しいです。

Re: ダメージが大きくなりすぎるのを抑えたい

Posted: 2018年5月31日(木) 14:21
by しぐれん
logを使うとしたらMath.log(100)などの書き方になりますが、試してみましたか?
また、現在ダメージ式にはどのような数値が指定されていますか?

Re: ダメージが大きくなりすぎるのを抑えたい

Posted: 2018年6月01日(金) 11:03
by つちくら
返信ありがとうございます。

現在の式は $gameTroop.turnCount()*100 となっております。
教えていただいた通りの書き方をすると Math.log($gameTroop.turnCount()*100) で、
2ダメージとかになってしまいます。

できれば、100 180 244 295 335 367  と
ダメージは増えつつも徐々に小さくなるような式を作りたいです。
加算する値が0.8を掛けていくような減り方をすると嬉しいです。
ex.100→80→64→51→40→32

よろしければご教授ください。

Re: ダメージが大きくなりすぎるのを抑えたい

Posted: 2018年6月01日(金) 11:26
by 剣崎 宗二
お望みの式に一番近いのは以下かと思われます。

コード: 全て選択

Math.round(100 * (1 - Math.pow(0.8, $gameTroop.turnCount())) / 0.2);
この式になった理由は説明すると長くなります為、
「exponential sum」(指数関数の和)で興味がある場合はどぞ。
(数学的な話となります)

Re: ダメージが大きくなりすぎるのを抑えたい

Posted: 2018年6月02日(土) 11:32
by つちくら
返信ありがとうございます。

丁度いいダメージになりました。
ゲームで使わせていただきます。