ゲーム制作日記<11> TP式

みなさん、こんばんは。
ネコタです。


ツクールMVには、戦闘中にいくつかのパラメーターが用意されています。

デフォルト設定で、3つのゲージが用意されているのがわかるのがわかるかと思います。

tc12.png


HP、MPは言わずもがな。

・・・で、TPって、なんぞや?


このTPというのは、正式にはタクティカルポイントと呼びます。
用途は特に決まっていません(笑)


ただ、デフォルト設定でいくつか仕様が決まっています。

0~100の範囲で変動する。
戦闘開始時に0~24でランダムに設定。
HPの減る割合に応じて、TPを獲得する。(最大HP100%ダメージで50獲得)


更に詳しくは、下のサイトを参考にしてください。
MVでも仕様はVX aceと同じなようなので。

昨日の全体回復魔法の制限としてTPを使うのはどうか、ということを書いたので今回はRPGツクールVXAceのTPの仕様を調べてみました。簡潔にまとめるとⅠ.TPが増えるとき・・・  
ツクールVX Ace TPのデフォルト仕様研究



このTPシステムですが、一般的な使い方は、スキルの使用に制限をつけるために用いられることが多いと思います。

例えば、MPの代わりとしてTPを使用する。あるいは、強力なスキルがあり、TPがある程度溜まらないと使えないようにする、など。


他にも、考えてみると幾つか面白い使い方があるかと思います。
私もアイディアはいくつか考えてみましたが、今回制作しているゲームのために開発した使い方をご紹介します。


私のゲームでは、戦闘での基本ダメージ計算式にTPを組み込んでみました。

名付けて、TP式です。

式の内容は、

a.atk * ( a.atk + a.tp ) / ( b.def + b.tp )

a.atk = プレイヤーキャラの攻撃力
a.tp = プレイヤーキャラのTP
b.def = 敵の防御力
b.tp = 敵のTP



どういう式かというと、まず、基本のダメージはa.atkです。
つまり、プレイヤーの攻撃力ですね。これが、そのままダメージになります。

これに補正値をかけてダメージを変動させるわけですが、
その補正値が ( a.atk + a.tp ) / ( b.def + b.tp )となります。

これは、プレイヤーの攻撃力にTPを足した値と敵の防御力にTPを足した値のになります。


例えば、プレイヤーの攻撃力が100として、現在のTPが50としましょう。敵も同様に防御力100に現在のTPが50である場合、


(100+50)/(100+50)=1


となります。a.atk=100ですから、最終的なダメージは、


100×1=100


というように、お互いの条件が同じであれば与えるダメージは攻撃力そのままとなります。



しかし、状況は刻一刻と変化していきます。
TPは敵の行動、味方の行動によって常に変化していく値です。

敵からの集中攻撃を受け、プレイヤーのTPが80、敵のTPが55くらいになったとしましょう。

すると、先ほどと状況は変わり、


(100+80)/(100+55)=1.16
100×1.16=116


このように、与えるダメージが大きくなりました。



また、極端な状況を想定してみましょう。

プレイヤーのTPが100、敵のTPが0の場合。
理論上の最大ダメージとなりますが、


(100+100)/(100+0)=2
100×2=200


最大2倍のダメージとなります。
スキルも使ってないのに。


これが、もっともっと序盤で、プレイヤーの攻撃力が20、敵の防御力が20といった、数値が小さい場合は、どうなるでしょうか。
理論上の最大値を考えてみると、


(20+100)/(20+0)=6
20×6=120


最大で6倍のダメージとなります。


このように、攻防がまだ低いゲームの序盤においては、TPがかなり物を言う仕様となります。


TPの性質上、ダメージを受ければ受けるほど、TPはすごい勢いで溜まっていくことになります。

そうなると、プレイヤーが運悪く総攻撃を受けて一瞬で瀕死になったとしても、これだけ攻撃力が上がると一撃で逆転のチャンスが出てくる。そういう仕様となります。



ところで、ゲームの終盤になってくると、攻撃力が高くなってきます。
すると、式からはTPの影響力は少なくなってくるように見えます。


例えば、味方の攻撃力1000、敵の防御力1000としましょうか。
理論上の最大ダメージは、


(1000+100)/(1000+0)=1.1
1000×1.1=1100


それでも、10%くらいは上乗せされますが、最初に比べるとかなりインパクトは小さいですね。


しかし、ゲーム終盤ともなれば、ステータスUP&DOWN系のスキルも頻繁に出てくる時期です。

大抵のRPGでは中盤以降贔屓にしていたステータスUP系も、終盤ではそれほど威力を発揮しないことが珍しくありません(他のスキルが圧倒的に強かったりするため)。

しかし、この式ではこの手のスキルが猛威を振るいます


例えば、攻撃力を20%増しにしてみましょう。
敵と味方のTPは50とします。


(1200+50)/(1000+50)=1.19
1200×1.19=1428


ダメージは1.4倍になりました。



今度は、敵の防御力を20%下げてみましょう。


(1000+50)/(800+50)=1.24
1000×1.24=1240


ダメージは1.2倍くらいになりました。
これくらい上がれば、スキルを使ったことによる効果も実感できるでしょう。


このように、ステータスUP&DOWN系にも対応した式となっています。



さらに、まだあります!
この式は、もう一段階奥が深くなっている仕様なんです。


究極に攻撃、防御を操作した時
つまり、攻撃力をとんでもなく上げたり、防御力を1にしてみたりということをした時。

ものすごいインフレが起きるのが、この式の面白いところです。
なんと、ダメージインフレにも対応しています。


仮に、攻撃力を10倍にしてみましょう。

(10000+50)/(1000+50)=9.57
10000×9.57=95700

攻撃力10倍にしたら、ダメージは95倍になりました(笑)


今度は、防御力を1にしてみましょう。

(1000+50)/(1+50)=20.6
1000×20.6=20600

ダメージは20倍です(笑)


防御力を極端に低くすると、最初のTPによる補正が復活してきます。
ということは、防御力1にするスキルなんか使用したものなら、ひとつの戦闘内でとんでもないダメージの振れ幅になってきます。

究極の状況として、プレイヤーのTP100、敵の防御力1、TP0の状況を考えてみると、

(1000+100)/(1+0)=1100
1000×1100=1100000

110万ダメージになりました(笑)
多分、ここまでくると(敵のHPが)カンストしているので、瞬殺されます。プラグインで最大値を増やさないといけなくなりますね。


この状況で、敵のTPが10増えるだけで、計算上はダメージが10分の1になります。

防御力が小さい状況でのTPは非常に重要な意味を持ちます。
この手のスキルが横行する戦闘では、TPの重要性が一気に高まることになりますね。



以上が、TP式となります。

序盤から終盤まで、さらに戦闘中というリアルタイムにも対応した、幅広い戦術を扱えるようにした式です。



TPの使い道はほかにもたくさんありそうです。
みなさんも、特徴を理解して色々試してみてください。



ではでは、今日はこの辺で。
ネコタでした。





↓お役に立ちましたら、クリックをお願いします↓
にほんブログ村 ゲームブログへ
にほんブログ村

にほんブログ村 ゲームブログ ゲーム制作へ
にほんブログ村

ブログランキング・にほんブログ村へ
にほんブログ村





スポンサーサイト

コメント

Secret

こんにちわ。

いつもありがとうございます。
いつもアイデアをいただきすごいと思ってましたが、TPをダメージ計算に入れる発想はすごいですね。変動するTPを考慮に入れながらの戦闘はダメージの振れ幅から察するにかなりスリリングになると思います。
これにより行動制限がメインだったややネガティブなイメージの「TP」の価値も上がるし、攻防の補助スキルの価値も上がり(ちょっとインフレがすごいですがw)戦闘に緊張感が増すポジティブなシステムだと思います。
よろしければブログにおいてご紹介させていただいてよろしいでしょうか。

またアイデアいただきにきます。

Re: こんにちわ。


こんにちは。紹介は全然OKですよ。
扱いはちょっと癖がありますが(不必要なインフレを起こさないように気を付けて設定しないといけないので)。
私のゲームでは、うまいことバランスをとっているつもりで進めています。

またいらしてください(^O^)
プロフィール

猫民のんたん

Author:猫民のんたん

ネコタ:ゲーム作りが趣味の薬剤師。本職とゲーム作りの2足の草鞋を履きこなそうと日々奮闘。

毎週曜日と曜日or曜日に更新予定。


ミノン:ゲーム作り初心者で1児の母。前職はSE/PG。子育てをしながらゲーム作りを行おうと、日々奮闘中。

毎週曜日にブログ更新予定♪

最新記事
最新コメント
月別アーカイブ
カテゴリ
フリーエリア
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR