まるちゃん 2020/04/07 16:22

固定ダメージのいいところが分かった

パーティー能力.txt (パーティー能力.txt) ダウンロード | VXace スクリプト 【 作成者:まるちゃん 】 | uploader.jp
https://ux.getuploader.com/Rpg_Maker_VXace_Maruchan_Uploard/download/73
ターゲット拡張.txt (ターゲット拡張.txt) ダウンロード | KGC rgss3 | uploader.jp
https://ux.getuploader.com/KGC_rgss3/download/8

バグがやっぱり有ったので修正しました
今はスキルをまた制作したりとかしていました
レベルアップが目的だからスキルをたくさん増やせばもっと面白いと思いました
なので、魔法をⅫまでつくってガンガンレベル上げるようにしました
今は敵を作っていてある問題に直面しました
魔法が強すぎる…
Ⅻまでつくって、それを固定ダメージではなく魔法力に依存したダメージ計算にしました
そしたら威力が 12 倍とかになりました
それに合わせて敵のステータスを作ればいいと思いました
敵の行動を決めるとき、どの魔法を使えばいいんだろう?ってなりました
敵の威力は味方の10%程度のダメージになるように設定したので
威力が 12 倍の魔法を使用すればワンパンで死にます
だから魔法って固定ダメージにしないといけないんだなぁと思いました

ダメージ計算や敵のステータスの算出は問題ないはずです
魔法を固定ダメージにすると威力に合わせてステータスを作る必要がないんので
逆に楽になったかもしれません

敵はⅠの威力の魔法やスキルを使うで問題ないと思うんですけど
ラスボスがⅠのスキルを使うってかっこ悪くないですか?
それはやりたくないなぁと思ったので魔法を固定ダメージにすることにして
レベルに合わせてたくさん作ることにしました
以前はそれが嫌いだったんですけど調整という面を考えると
そうするのが一番いいと思いました

もし魔法をⅫランクまで作らずに対応させると
ダメージ計算にレベルを参照するものを加えれば解決できます
しかし、そうすると威力がレベルが上がるごとに増していくのに
コストが一定なのでMPをレベルアップで上げる必要がなくなります
レベルアップでMPを増やしたいなぁと思ってるので…

文章にまとまりがないんですけど問題がまだ一つあります
敵をレベルに応じて能力が変化する形にしているので
スキルも変化させる必要があります
パーティーの平均レベルに応じてスキルの威力を決めるとき
レベルを参照してもらったほうが楽です
敵はそれでいいとしても、味方はそれだとコストが一定で困って…
敵の行動が大変なことになっていてどうしようかと…
インフレを起こしたので大変になったというか…

特技は減らすことにしようかなぁと思っています
強力攻撃というスキルもⅫまで作りましたが、どうしようかなぁと…


とりあえず計算

物理ダメージについて(敵のHPを作成)

a.atk * 4 - b.def * 2 = damage
通常戦闘の敵は防御力を持たないので
damage = (20 + 6/5 * level) * 1.5 * 4
damage = 120 + level * 7.2
魔法の威力とダメージ計算が同じだった
敵と味方のレベルが同値のときに成り立つ
多分これが敵のHPとなるような気がします
このダメージが 60% の割合がいいのかで変わると思いますが
今回は敵が沢山出現するので1発でいいきがします

魔法ダメージ作成

魔法を固定ダメージとして一度計算してみることにしてみます
敵のステータスは 120 + level * 7.2 と決定しました
アクターのステータスは 20 + level * 6/5 に装備を考慮します
固定ダメージを N としたとき
N + a.mat * 2 - b.mdf * 2 = 120 + level * 7.2
というダメージ計算を例として考えます
これはツクールのデフォルト計算と同じです
今回のゲームでは通常戦闘の敵に防御力と魔法防御は不要だと考えました
N + (20 + level * 6/5) * 3 = 120 + level * 7.2
ここではアクターのレベルと敵のレベルは同値として考えます

N + 60 = 120
N = 60 程度が妥当?でしょうか
level * 3.6 = level * 7.2
魔法力の成長より敵のHPの成長のほうが早いので
N = 60 として考えると敵のレベルより2倍ないと倒せません
それは魔法を使用する意味がないので固定値を大きくする事が必要です

N = 60 + level * 3.6
こうすることで魔法をたくさん作らなくても大丈夫なはずです
味方と敵のレベルを同値として考えました
能力開放という次の威力のスキルを習得する魔法を作成しました
もうこれ以上スキル考えられないし、何より好きなので
やっぱりスキルはたくさんあったほうがいい気がしますが
敵の行動を考えるとスキルがたくさんあると大変…
あちらをたてると、こちらがたたず


敵を一発で倒せると考えるて以下を計算します

level == 100 のとき

N + 140 * 3 = 840
N = 840 - 420 = 420

level == 50 のとき

N + 80 * 3 = 480
N = 480 - 240 = 240

N == 500 としたとき

500 + (20 + level * 6/5) * 3 = 120 + level * 7.2
560 + level * 3.6 = 120 + level * 7.2
440 = level * 3.6
level = 122.222
レベル 122 程度までは一発で倒せるという威力です


転職後について考える

a.atk = 20 + 8/5 * level
a.mat = 20 + 8/5 * level となるとき

ダメージ計算式はデフォルト通りとし、通常戦闘の敵は防御力を持たない
装備は攻撃力の半分の数値を取ると想定されるので 1.5 をかける
a.atk * 4 - b.def * 2 = damage
(20 + 8/5 * level) * 6 = damage
damage = 120 + level * 9.6

N + a.mat * 2 - b.mdf * 2 = damage
通常戦闘の敵は魔法防御を持たない
また装備は魔法力の半分の数値を取ると想定する
N = damage - a.mat * 3.0
N = 120 + level * 9.6 - (60 + level * 4.8)
N = 60 + level * 4.8

a.atk = 20 + 10/5 * level
a.mat = 20 + 10/5 * level となるとき
damage = a.atk * 6 = 120 + level * 12
N = 120 + level * 12 - (60 + level * 6)
N = 60 + level * 6

まとめると

1次職の魔法による固定ダメージ
N = 60 + level * 3.6
2次職の魔法による固定ダメージ
N = 60 + level * 4.8
3次職の魔法による固定ダメージ
N = 60 + level * 6

魔法がアップグレードすると考えると次以降の魔法は
下式が望ましいはず
N = 60 + level * 7.2
N = 60 + level * 8.4

一生懸命Ⅻまで魔法作ったんですけどやめようかなぁって
でも、レベルアップしてもスキルを習得しなくて面白みにかけるような…
一応装備によるアップグレードが面白い要素だと思って作ったのですが…
最初は魔法使いのスキルは能力開放ではなくて
味方全体のレベルを100上げるみたいなぶっ壊れスキルを考えていました
スキルを習得できるし能力値も上がるし…
しかし、スクリプトとして作るのは難しかったので諦めました
今思うとできなくも無いのかなぁと…
attr_accessor として level があってそれを参照しているので
def level を作って…


これが頑張って作ったマップです
テストマップのつもりなのですが、もうこれでいいかなぁって…

回復魔法のダメージ計算

1次職

2000 + level * 20 が1次職の戦士の最大HPとなっています
他の職業は狙われ率によって値を変動させています
僧侶の魔法力は
a.mat = 20 + level * 5/5 となっています
回復量が最大HPの半分程度になるように考えます
N + a.mat * 2 = MHP * 0.5
N = (2000 + level * 20) * 0.5 - (20 + level * 5/5) * 3
装備は能力値の半分程度の値を持つと想定されるので 1.5 倍します
N = 1000 + level * 10 - 60 - level * 3
N = 940 + level * 7

2次職

4000 + level * 20 が2次職の基礎最大HPとしました
a.mat = 20 + level * 6/5 が2次職の僧侶の魔法力です
N = (4000 + level * 20) * 0.5 - (20 + level * 6/5) * 3
N = 1940 + level * 6.4
となりこれはレベルが上がるほど1次職の回復魔法のほうが
威力が高い計算になってしまいます

なので2次職で習得する魔法は
最大HPの6割を回復するとして考えました
N = (4000 + level * 20) * 0.6 - (20 + level * 6/5) * 3
N = 2340 + level * 8.4

3次職

8000 + level * 20 が2次職の基礎最大HPとしました
a.mat = 20 + level * 7/5 が2次職の僧侶の魔法力です
N = (8000 + level * 20) * 0.5 - (20 + level * 7/5) * 3
N = 3940 + level * 5.8

3次職では7割を回復すると考えます
N = (8000 + level * 20) * 0.7 - (20 + level * 7/5) * 3
N = 5540 + level * 9.8

まとめ

魔法力が上がっていくと固定値が下がっていく?
60 の減算が邪魔なので無視します

全ての回復魔法を最大HPの半分程度回復すると考えると
1000 +level * 7 > 4000 + level * 5.8
となるような場合はどれくらいのレベルなのか考えます
3000 < level * 1.2
level > 2500
レベルが 2500 を超えると1次職の魔法の威力のほうが強くなります
これはいいのか?
僧侶の魔法力を上げても固定値のほうが大きくなるので
魔法力の意味がなくなるのでこれはいいのか…?

割合の回復量が増えるとして考えると下式が良さそう?
5割:N = 940 + level * 7
6割:N = 2340 + level * 8.4
7割:N = 5540 + level * 9.8

次以降を想定すると…
8割:N = 5540 + level * 11.2
9割:N = 5540 + level * 12.6

それだったら回復魔法は
a.mhp * 0.5 みたいにしたほうが良さそうな…
回復魔法ってすごく難しい
それだったらいないほうが?

魔法を固定にして3つ程度を作ることを想定すると
能力開放や宝具といったもので2段階上がるように想定しています
攻撃力依存のスキルもほしいので攻撃力は以下のように考えました
MPを消費せず使用できるものとして考えました

・会心が発生しない 1.5 倍ダメージ(会心は 2.0 倍ダメージ)
・2回攻撃 0.5 * 2 = 1.0
・全体攻撃 0.5
これをパワーアップさせると
・会心が発生しない 2.0
・3回攻撃 0.5 * 3 = 1.5
・全体攻撃 1.0
2段階目のパワーアップが
・会心が発生しない 3.0
・4回攻撃 0.5 * 4 = 2.0
・全体攻撃 1.5

これと同じように回復魔法を考えて
回復魔法にはランクが1~3までとして、魔法力を考慮しない?
・1000 + level * 10
・2000 + level * 10
・4000 + level * 10
MP消費じゃなくてTP消費として回復魔法を作ったほうがいいような?
そして割合回復か全体回復みたいな感じで…

これは、能力値に比べてHPが大きすぎるのが原因かもしれませんね
上の式もまるっと見直す必要があるかもしれません
最大HPを 99999 としました
それは能力値が 9999 が限界値だからです

最初は回復魔法も魔法力依存にしていました
そしたらダメージとらくべて回復量が小さすぎてしまいました
ヒーラーを毎ターン回復させてもいいのですが
戦闘が終了してメニュー画面で回復するときに
何回も回復させる必要があってそれが面倒でした
魔法の威力を固定値にすればいいと気づいたのはこれが最初でした

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索