「ゲームプログラミング/バランス調整」の版間の差分

削除された内容 追加された内容
Honooo (トーク | 投稿記録)
Honooo (トーク | 投稿記録)
855 行
勿論プログラムの方で、100%を超える値に意味を持たせて、なんらかの有利が与えられれば、意味を持ちますが、多くの古いゲームでは、100% が天井でそれ以上何もないようです。
 
=== ダメージ計算式 ===
さて、RPGの戦闘におけるダメージの計算式(「ダメージ計算式」といいます)に、アルテリオス計算式というのがあります。これは、昔のゲーム『アルテリオス』で採用された計算式なのですが、
攻撃側の攻撃力 - 守備側の守備力 = 守備側のダメージ
という計算式です
 
ドラクエやファイナルファンタジーのシリーズの計算式はもっと複雑なのですが、どのRPGでもダメージ計算式の基本的な設計思想・方針はアルテリオス計算式と同じです。
 
 
アルテリオス以外のダメージ計算式でも、たとえば
:1.3×攻撃側の攻撃力 - 0.75 × 守備側の守備力 = 守備側のダメージ
と、それぞれの項に定数をかけて、少しだけ発展させたものになることが多いようです。
というような感じの計算式である作品も多いです。
 
ダメージ式が簡単な方が、バランス調整もやりやすくなりますよね。勿論複雑にしようと思えばいろいろ考えられるでしょうが、結局出来るだけ単純にした方が、プログラム実行上のロスもないし、何かと意義があるでしょう。
せいぜい、変数の前に定数係数が掛かっている程度です。
 
さて、以下の式で、
なぜ、どの会社のRPGでも、この程度の中学校レベルの単純な計算式なのかというと、バランス調整が簡単だからです。
 
バランス調整するのは人間なので、もし、ダメージ計算式があまりに複雑な方程式であると(たとえば量子物理のシュレーディンガー方程式みたいなのだったりすると)、そもそもバランス調整担当の社員が理解できません。
 
 
そして、このアルテリオス式を見ると分かるのですが、
:攻撃側の攻撃力 - 守備側の守備力 = 守備側のダメージ
もし自軍の攻撃力が0の場合、敵にダメージを与えられないので(ダメージが0)、絶対に負けてしまいますよね、攻撃力が敵の守備力を下回る場合も、絶対に負けるのです
 
一方、「すばやさ」パラメータが戦闘の先攻/後攻の順番にしか影響しない場合、素早さが0であっても、勝つことは可能です。
882 ⟶ 876行目:
また、守備力が0であっても、勝つことは可能です。
 
だからパラメータはそれぞれ意義が大きかったりあまり無かったりして、ゲーム上の強さに対する特性がありますね。
このように、パラメータの種類ごとに、そのゲームにおいて重視・軽視の差があり、不公平になっている事が多いのです。
 
 
また、バランス型の能力値のキャラクターの場合、せっかく「ちから」を上げて攻撃力を上げても、守備側の守備力を下回っていると、ダメージ0になってしまい、絶対に負けます。
 
つまり、
自分の攻撃力 > 敵の守備力
でないと、アルテリオス式では必ず負けるのです。
 
 
一方、
:1.3×攻撃側の攻撃力 - 0.75 × 守備側の守備力 = 守備側のダメージ
のように係数を掛けた計算式の場合、
 
守備力を1ポイント増やしても、その効果は25%減少されます。(たとえばレベルアップの際に上昇パラメータを一種類選べるシステムの場合、守備力を選ぶと損になる場合が多い。最も守備力だけいつまでも上げなくていいのかという問題もあるけどね。)
 
いっぽう、攻撃力を1ポイント増やすと、効果は30%増しです。
 
だから当然と言えば当然だけど、各種パラメータの状態や有利不利にはむらがある。しかし一方、ゲーム上の有利不利は、ゲーム展開の全体像で判断すべきものだから、特定の数式だけで議論するのもやや不適だろう。
このように、計算式によって、有利/不利なパラメータという格差が生じます。
 
 
=== DPS (Damage Per Second) の概念 ===