目次
物理技とは?
特殊技とは?
能力の略称
三値とは?
種族値とは?
個体値とは?
努力値とは?
努力値関連の用語
能力値計算の式
Lv050のステータス算出方法
Lv100のステータス算出方法
S最速実数値表
ダメージ計算の式
指数計算とは?
指数計算の使い方
HBDの理想配分(耐久値の最大化)
HBDの理想配分の活用
◆物理技とは?
攻撃技の種類の1つ。攻撃(よく“A”と略します)と防御(同じくB)に依存してダメージが決定
接触する技は物理技であることが多い(例外:“くさむすび”など)
◆特殊技とは?
攻撃技の種類の1つ。特攻(C)と特防(D)により決定
接触しない技は特殊技であることが多い(例外:“じしん”など)
※技の分類は仕様変更前後で異なります
・第三世代(FRLG、RSE)以前まではタイプごとに決定。
(たとえば炎タイプの技は全て特殊技など)
・第四世代(DPPt)以降は個々の技ごとに決定。
(“かえんほうしゃ”は特殊技、“かえんぐるま”は物理技など)
本作では現行の後者の仕様に従っています。技ごとに決まっているので分類が不明な場合はその都度然るべき場所で各自調べて下さい
◆能力の略称
体力→H
攻撃→A
防御→B
特攻→C
特防→D
素早→S
◆三値とは?
種族値、個体値、努力値の総称。非公式用語。
上の3つ全てはポケモンの能力の実数値(ゲーム内で直接見れるステータス)の導出に関わる隠しパラメーター(ゲーム内で直接的に確認できない数値)であり、HABCDS全てに三値が存在
(例えばAの種族値、Bの個体値というような表現をする)
◆種族値とは?
ポケモンの種類(カントーなら151種類)により定められた値
これを参照すれば種類ごとの強さの目安になる
下限は1。上限はなし。200を超える場合もある
合計種族値は700を超えるものもいる
「~族」は種族値の数値を指している(Ex.130族、600族)
◆個体値とは?
ポケモンの個体により定められた値
同じレベル、同じ種類のポケモンを捕まえても能力が異なるのは個体値が異なるため
対戦では能力は高いべきなので個体値も高いものが好ましい(→「個体値厳選」)
個体値は0~31の32通り
最高値31は「V」、30は「U」と言う。0は「逆V」とも言う
6つの能力のうち3つに個体値Vがあれば「3V」、全てVなら「6V」のように表現する
Uなども同様に「5U」、「4V2U」のような言い方をする
◆努力値とは?
ポケモンを育てることで後天的に変化する値
トレーナーの手で関与できる唯一の部分なので、普通「育成」といえば努力値の獲得のことを指す(個体値厳選などを含める場合もある)
努力値の獲得を努力値を「振る」といい、育成のことを「努力値振り」ということがある
努力値はポケモン(野生、トレーナーの手持ち問わず)との戦闘により経験値とは“別に”得られる
“努力値を「2」もらった”というようなメッセージは出ないので注意
メッセージがなくても獲得できる状況であればきちんと獲得できている
得られる努力値は戦闘する相手により異なり、基本的に相手の一番高い種族値の努力値がもらえる
(例えばパルシェンならBに「2」もらえる)
例を見ましょう
例えば「ビクティニ」を倒すとHに「3」努力値がもらえます
これは蓄積するので10回倒せば「30」もらえます
どのビクティニを倒しても(ビクティニのレベルが異なっても)一回にもらえるのは一律「3」です
但し蓄積する努力値は上限が2つ存在
・1つの能力には上限252まで
・全ての能力には合計510まで
これを超える場合努力値はそれ以上増えません
なので、無残にもビクティニを1000回倒してサンドバッグにしても、Hには「252」までしか蓄積しません
このあと別の努力値、例えばバスラオを10000回倒せばSに「252」まで蓄積します
つまり過剰分は「+0」としてカウントされますので合計の制限に響くことはないです
※努力値獲得の手段は戦闘以外にも様々な道具や方法があります
本作で名前が出る道具だけ少し紹介
・ドーピング
「タウリン」など、使うと基礎ポイント(努力値のこと)が上がるという説明書きの道具の総称(非公式用語)
使えば対応する努力値が10増えますが、既に100以上振っている場合は使用できません
本作は仕様変更して100以上振っていても使えるようにしています
・努力値下げのきのみ
「ザロクのみ」など、使うと基礎ポイントが下がるという説明書きの“きのみ”の総称、便宜的な呼び方
使えば対応する努力値が10減りますが、既に100以上振っている場合は世代によっては最初の一回で努力値を100まで減らし、その後10ずつ減る場合もあります
本作は区別なく一律で10ずつ減る仕様にしています
一応使うとなつきやすくなる効果もあります
◆努力値関連の用語
ポケモンの育成は苦手な部分は手持ちの他のポケモンに任せればいいので、得意な部分を限界まで伸ばすのが基本です
例えばゲンガーはCとSが高いので
C252
S252
ずつ最初に振り分けて、余りはどこか(Hが多い、偶数を嫌えばBかD)に振ればいい
努力値を最大まで振ることを「極振り」といい、これに性格補正を加えれば「特化」とか「最高」のような言い方をします。0振りは無振りとも言います
特に素早さなら
最速 (252振り個体値Vかつ性格上昇補正)
準速 (252振り個体値V)
無振り(0振り個体値V)
最遅 (0振り個体値0性格下降補正)
などの呼び方があります
普通は育成の話では特に言及しなければ6V個体前提です(→「理想個体」)
“めざめるパワー”使用時などはめざパに対応した最高値を前提にします(→「めざパ理想個体」)
素早さでは最遅にもメリットが存在します
トリックルームや特性の発動順序(天候の上書き等)などを考慮する場合遅いと優位に立てます。
混乱による自傷ダメージや相手のイカサマのダメージを考慮すると特殊技主体のポケモンならAは低い方が好ましいです。これはどちらも自身の攻撃力を参照するためです。
場合によっては育成の際、個体値0も選択肢の1つとなります
◆能力値計算の式
三値を使って実数値を求めます
種族値を種、個体値を個、努力値を努、レベルをL、αを定数としてその式は次の通り
(種*2+個+努/4)*L/100+α=(その能力の実数値) ――➀
※性格補正がある場合は上の式の値を求めた後、最後に1.1か0.9をかけてコンマ以下切り捨てです。簡潔化のため式からは省きます
αの値は
ABCDSは α=5
Hのみ α=L+10 (Lはレベルの値)
つまりレベル1で左の掛け算の頂がゼロに近くても、Hは11,ABCDSは5が最低値となります
(そこからαの値は忘れても逆算できる)
◆Lv50のステータス算出方法
能力値はLv50時のみ知りたいのでL=50,個体値はV(=31)前提、ABCDSは代表でSを使うとして、そのときα=5、コンマ以下切り捨てに注意して➀の式にこれらを代入して計算します。具体的にはL=50と100を約分して()のなか全て2でわって()外します
L=50
個=31
α=5
を代入して、
S=種+31/2+努/8+5
S=種+20 +努/8+1/2
努力値が000なら S=種+20
努力値が252なら S=種+52
Hはα=60なので、同様にして
H=種+31/2+努/8+60
H=種+75 +努/8+1/2
努力値が000なら H=種+75
努力値が252なら H=種+107
個体値が奇数だと必ず式の中に1/2が残ります。なので努力値の余りの4/8とあわせて「1」実数値が増えるので、奇数個体値には努力値の「4振り」がお得です
また、努力値は4の倍数しか有効ではないこともわかります。つまり508のみ有効で、残りの2はどこに振っても影響しません
結局、ステータスは種族値に状況に応じた数を足すだけで求まることがわかります
中途半端な努力値でも似たようにして求まります
例えば、種族値100に116振りすると、(理想個体前提)
116=8*14+4
努力値は8振りごとに実数値「+1」、奇数個体値なので4振りで「+1」、合わせて14+1で「15」上がります
無振りは「20」足すので、合わせて「35」上がるので、実数値は「135」となります
結論としては、無振りのときの実数値が種族値にいくつプラスになるか覚えていると便利です
S → +20
H → +75
これならあっさりしていて覚えやすいです
これを使って実際にステータスを求めてみます
上の結果が反映されていることを確かめてください
ガブリアスの能力をHABCDSの順に並べて載せておきます
種族値 無振り ようきAS252D6
108 183 183
130 150 182
095 115 115
080 100 090
085 105 106
102 122 169
◆Lv100のステータス算出方法
サンムーンだと王冠システム導入でレベル100まで育てることが多いですね。実数値を50換算で知りたい場合や、努力値の振り直しで計算が必要になることがあるので追加で考察します
基本的に実数値はレベルに比例するのでレベル50時の2倍になりますが、それでは少しだけ誤差があります
逆にその誤差がいくつかを把握できれば調整して暗算で確認できます
なので新たにレベル100の式を覚えるより、既知レベル50の式を利用する方がスマートです
導出の手順はレベル50の時と同様です
V個体前提で確定値を代入してレベル50時の2倍と比較しましょう
()内はレベル50時の2倍の値です
αは5と110(60ではない)になることに注意
S=2種+31+努/4+5
S=2種+36+努/4
努力値000なら 2種+36 (2種+040) ……マイナス4
努力値252なら 2種+99 (2種+104) ……マイナス5
H=2種+031+努/4+110
H=2種+141+努/4
努力値000なら 2種+141 (2種+150) ……マイナス9
努力値252なら 2種+204 (2種+214) ……マイナス10
レベル100になってもαは倍にならないので、そこでややマイナスになっていますね
005と05*2の差でマイナス05
110と60*2の差でマイナス10
この2つは導出が簡単ですね
マイナスが4や9になるのは個体値の端数が原因です
努力値に4振りがない場合、レベル50では切り捨てられた0.5がレベル100の式では1になるのでマイナスが縮まります
マイナスは必ずSなら4か5、Hなら9か10になります
これさえ覚えていれば使い分けは簡単です
換算する際、必ず2倍してから引き算するので偶奇で判断できます
レベル100で実数値が奇数なら2で割れるように奇数を足して半分、偶数なら偶数を足して半分にすればレベル50に換算できます
性格補正を含む場合は補正後の差で考えるのはかなりややこしいので必ず補正前に両方戻して比較します
以上より結論をまとめると
S → 2倍-05 (or-04)
H → 2倍-10 (or-09)
シンプルですね
ではこれを使って実際にステータスを求めてみましょう
上の結果が反映されていることを確かめてください
ガブリアスの能力をHABCDSの順にレベル50と並べて載せておきます
種族値 Lv50無振り Lv50AS252D6 Lv100無振り Lv100AS振り
108 183 183 357 357
130 150 182 296 359
095 115 115 226 226
080 100 090 196 176
085 105 106 206 207
102 122 169 240 333
※性格補正後の実数値の比較について
上の表では下降補正のC、上昇補正のS、どちらの補正後を比較しても上記の結論通りで一見補正後の比較もできそうに思えます
しかし性格を「いじっぱり」に変えると共に1.1倍の切り捨てで200と394になりマイナスは「6」です
このように実数値が「1」だけ誤差でずれる場合があります。理由を説明しましょう
上昇補正から考えます
努力値は252を想定してマイナスは5とします
まず補正前の値をⅩ(ガブならA182やS154に相当)とおくと、正しい手順での実数値は
(2Ⅹ-5)*1.1=2.2Ⅹ-5.5
先に1.1倍してからだと
2(1.1Ⅹ)-5=2.2Ⅹ-5
先に補正すると正しい手順よりも0.5多いです
実際の数値、例としてⅩ=182では394.9と395.4となり395を跨ぎます
要するにⅩの一の位が
「0」「1」「2」「5」「6」「7」
のいずれかなら正しい手順でくり下がりが「発生して」誤差が出ます
上の表、Ⅹ=154の場合は一の位が「4」なのでこれに当てはまらず誤差がありませんでした
下降補正も同様に比較します
努力値は0を想定してマイナスは4とすると
正しい手順 1.8Ⅹ-3.6
先に補正 1.8Ⅹ-4
今度は0.4少ないです
この時、Ⅹの一の位が
「1」「2」「6」「7」
のいずれかなら正しい手順でくり下がりが「発生せず」誤差が出ます
上の表、Ⅹ=100の場合は一の位が「0」なのでこれに当てはまらず誤差がありませんでした
この結論は4振りするか否かなどでも変化しその都度考慮するのは難しいです
おとなしく補正前を考えるのがベターですね
◆S最速実数値表
有名どころの特化の値は覚えていると便利
準速は52足すだけなので覚える意味は薄い気がします
それでも100族や96族など、準速がメジャーな場合もあり知っていて損はないですが
メジャーなポケモン、最速がいそうなポケモンなどを中心にします
S050→112 ラッキー メガクチート
S060→123 ギルガルド ジバコイル
S061→124 バンギラス テッカグヤ
S070→134 キノガッサ パルシェン メガラグラージ ニョロトノ (パルガッサライン)
S071→135 メガバンギ
S077→141 ヒードラン
S080→145 マンムー カイリュー フワライド オニゴーリ バシャーモ (害悪ライン)
S081→146 ギャラドス ミロカロス
S085→150 スイクン ジャラランガ レヒレ
S086→151 FCロトム
S090→156 ポリゴンZ ゲンシグラードンなど伝説多数
S091→157 霊獣ランドロス
S095→161 グライオン テテフ ウインディ
S096→162 ミミッキュ
S100→167 メガル、メガリザ、サンダー、ウルガモス、ミュウなどいっぱい
S101→168 霊獣ボルトロス
S102→169 ガブリアス
S110→178 メガグロス (メガ)ラティ二種 ゲンガー
S120→189 メガマンダ アルセウス
S121→190 アーゴヨン
S122→191 ゲッコウガ
S125→194 ダークライ
S130→200 メガゲンガ コケコ サンダース プテラ
S135→205 メガミミ メガライボルト
S150→222 メガプテラ メガフーディン
S151→223 フェローチェ
性格補正なしの場合、種族値の差はそのまま実数値の差になります
例えば同じ振り方なら必ずギャラドスはマンムーより1多いわけです
準速なら132と133になります
性格補正ありの場合、基本的に極振りして特化までいくことが多いですが、特化の値は種族値の一の位が8近辺でない場合には種族値の差がそのまま実数地の差になります
例えばアーゴヨンは121族なので189+1で190、ゲッコウガは122族なのでさらに+1して191になっていますね(上の表を確認)
ところが、上の表を見てヒードランとマンムーを比較すると種族値の差は3ですが実数地は4違います
S78をまたいで準速時の十の位の数字が変わるので性格補正の増分が異なるためです
変わり目さえ理解していれば120族などキリの良い値だけ覚え、それに近い値は121族の例のように自分で調整して暗算できますね
◆ダメージ計算の式
物理技で考えます。特殊技はAをCに、BをDにすれば同様です
当たり前ですが、Aは技を使う側の攻撃力、Bは技を受ける側の防御力を参照します
※途中出てくる式は計算、表記しやすいように一般に知られる式から若干同値変形している部分があります。ご了承ください
技の威力をW,レベルに依存する比例定数をK,「乱数」をRと各々おくと、次の式で与えるダメージが決定します(*は掛け算、/は割り算のつもりで書いてます)
(W*A*K/B+2)*(相性その他の倍率)*R=(与ダメージ実数値) ――➁
・R、つまり「乱数」について
Rは0.85~1.00の間の数(0.01刻み、16通り)
この数字は全く同じ状況で同じ技を使ってもダメージにバラつき、つまり幅を持たせる役割があります
どの値になるかは毎回完全にランダムで、16通りの乱数は全て出る確率が一緒です
これは戦闘に関する乱数で、その他にも乱数というのはゲームの成立のためあらゆる場面で用いられています
「乱数調整」という言葉をポケモンで聞いたことがあるかもしれませんが、あの乱数はまた別物です
・Kについて
Kは、“攻撃する側のレベル”によって変動する変数です。呼び方は比例定数でも係数でもなんでもいいです。便宜的に筆者がそう呼んでいるだけで、今後もそういう呼び方を本作ではします
変数と言いつつ定数と表現したのは、全てのポケモンが同じレベルになる対戦環境では定数になるからです
Kを求める式は、依存するレベルをLとおけば
K=(L*0.4+2)/50
K=(L*0.8+4)/100
レベルを0.8倍して4足した後コンマを2つずらせば求まります
特に、L=50→K=0.44
※Kはほぼレベルに比例していますね。これがあるおかげで攻撃側と防御側共にレベルに比例する数値が2つずつ(AとK、HとB)になるのでレベルが変わっても極端に確定数が変わることはないわけですね
もしKが式の中にないとレベルが上がる程倒すのに要する攻撃回数は増加していきます
➁の式に戻ります。手計算でダメージを求める場合は、2/H<<1と近似すれば➁の式の「+2」の頂を無視できます
「+2」の頂は計算ではウザイだけですが、小数点切り捨てで最小ダメージを1以上にする役割があります
以上を踏まえると、乱数と倍率は最後に考えればいいので、結局➁の式は
W*A*K/B=(与ダメージ実数値)
と簡単に表せます。
もし「効果抜群」ならダメージを2倍、「こだわりハチマキ」を持っているならこれを1.5倍、乱数が最低なら0.85倍、というように考えます
当たり前ですが、“掛け算”ですから掛ける順序は計算結果に影響しませんのでご安心ください
Lv50フラットの対戦(ポケモンのレベルの上限をLv50にして、それ以上のレベルのポケモンはLv50に換算して行う対戦)なら次のようになります
W*A*0.44/B=(与ダメージ実数値) ――➂
だいぶスッキリしました。基本的にダメージ計算式を用いて手計算で計算する場合は、この➂式を用いることになるので、この結果だけ覚えておけば十分です
さらにこの➂式を考察します
ダメージ計算は加減でなく乗除で行われるのがミソです。
比例計算なのでいろいろ工夫できます。
たとえば
(与ダメージ実数値)=H*(ダメージ割合)
を用いて➂式を変形すれば
W*A*0.44/(H*B)= (ダメージ割合)
つまり、
W*A
H*B
の比が肝要になることがわかると思います
「ダメージ割合」というのは、たとえばHPの半分なら0.5(50%)、1割なら0.1(10%)となります
これが次の話につながります
◆指数計算とは?
ダメージ計算の方法のひとつ。
W*A,H*B、このふたつの積の比でダメージ割合を考える方法
本質的にやっていることは上で紹介したダメージ計算の式と同じ
まず、比較する指標ふたつを
火力指数 (W*Aの方)
耐久指数 (H*Bの方)
と呼びます。非公式用語なので多少呼び方のバラつきはあるかも
もちろん、係数のKはどっちにくっつけて比較しても良いわけですが……
筆者は火力指数に“掛け算”してくっつけることを推奨します
たまに指数計算のとき0.44という係数を“割り算”して使う人もいますがおすすめできません
理由は途中経過の数字が大きくなるからです。計算がしんどくなるだけ。何の得もありません
※筆者の計算のモットーは「途中経過は小さく簡単に」です。これは今後の計算全てで意識しています
抜群その他の補正は当然指数に考慮します。
タイプ一致なら火力指数1.5倍。“しんかのきせき”持ちなら耐久指数に1.5倍など
係数は今述べたように(レベル50なら)0.44を火力の方に掛け算します
◆指数計算の使い方
指数の見方を少し触れておきましょう
まず指数を各々次のように略します
火力指数→火
耐久指数→耐
単純に「火≧耐」なら受ける側がひんしになります。(ダメージが最大HPを超える)
ただし、乱数で最後に0.85~1.00かけるのを踏まえれば、実際にはこれより火力はしょっぱくなりますね
なので、「火=耐」なら乱数は1.00のときのみ倒れます
つまり低確率でしか倒せません
これを「低乱数1」(で倒せる)といいます
特にこの場合は乱数が「1.00」の1つのみ対応なので超低確率のため、「超低乱数1」あるいは「超低乱1」みたいな言い回しをします
逆に技を受ける方からはすれば高確率で耐えるので「超高乱耐え」といいます
これがもし、0.85*火=耐であれば、どの乱数を引いて火にかけても耐を上回ります
つまり必ず倒せますね。これを「確定1発」といいます
同様にこれらの表現は「高乱数2」、「確定3発」、のように使います
では指数計算の結果を使って何回で倒せるか考えてみます
たとえば、乱数抜きで火が耐の丁度15%だったら、乱数を考えて与えるダメージは
12.75~15%
なので乱数7発(7回か8回で倒せる。6回では絶対無理)とわかります
このようにダメージ割合から倒すのに要する回数を特定できます。
※上の確定数の計算は「きゅうしょ」「技の命中率」を考慮していません
極端な話、命中が100でない技は何回使っても全て外れることもあるので確定~発とは言えないですよね。それらは確率計算をかなり複雑にするので専用のツールで計算しないと求めるのは厳しいです。一応ご注意を。
実際の例でもいくつか試しましょう
・化身ボルトvs珠ルカリオ
“でんじは”「けしんボルトロス」を上から叩き潰したいので勇者「ルカリオ」を召喚します
「けしん」は「けしんフォルム」を指しています
まず耐久から。H4振りのみとして、
H79 → 155
B70 → 90
指数は13950
ルカリオは珠剣舞しんそく型のいじはAS(いじっぱりAS252振り)として、
A110 → 178
しんそく → 80
「いのちのたま」は1.3倍
“つるぎのまい”を積んでいるとすると2倍
K=0.44として、全てかけると、16290.56
もし最低乱数を引くと、0.85倍なので、13846.976
13846.976 < 13950 < 16290.56
13950と比較するとだいたい倒せそうですが乱数次第で耐えることがわかります
つまり高乱数1発。いわゆる「乱1」。気分悪いですね
「珠ハッサム」もそうですが(筆者がよく使っていた)、ルカリオは指数でみると少しだけ火力が足りないことが多いです
なので“ステルスロック”を先にまくと全抜き(一匹で相手三匹を全て倒すこと、フルバトルなら六匹)をしやすいです。相手より素早く一撃で倒していけるようになるからです。
先に“ステルスロック”を使うことを前提にして考え直してみましょう
ボルトロスはいわ弱点なのでHPの1/4減るので、耐久指数も約1/4減ります
このダメージを受ければ当然、計算するまでもなく耐久指数が最低乱数時の火力指数を下回ります
また、“しんそく”は特性「いたずらごころ」込みの“でんじは”の上から先に技を出せます(優先度2と優先度1)
つまりまとめると、“しんそく”は“でんじは”より先に発動し、かつ、ステロ込みで確定1発、いわゆる「確1」ですので、無抵抗のままボルトロスは倒れます
相手より速く一撃で倒せていますね
悪は滅びました
・化身ボルトvsメガルカリオ
珠は化石なので、「ルカリオナイト」を持たせて「メガルカリオ」にします
圧倒的にこっちの方が強いです
S112族(ボルトロス+1!)なのでようき一択
AS252振りで計算すると
A145 → 197
交代際に積むなり起点を他で作るなりして剣舞(つるぎのまい)したとしましょう
攻撃力2倍
技は“でんじは”がウザイので“しんそく”一択。そのためのルカリオです
しんそく → 80
以上の数値を用いて、同様に計算すると13868.8
乱数込みで11788.48
ステロダメは38(最大HPの1/4切り捨て)
これを引いたらボルトの耐久指数は10530(<11788.48)
確定1発!
やはり悪は滅びました
“れいじゅうフォルム”も化身と耐久面の種族値は同じなので耐久に努力値を振ってなければ倒せます。実際はこっちの方が多いですね(PGL調べ)
この計算でなぜメガルカリオにカバルドンなどがよく一緒にいるかわかると思います
ステロ撒きとつるぎのまいを使うための起点づくり(“あくび”が使える)の両方ができるからですね
手持ちのメンバー編成の時点から指数計算は大事ですね
ちなみにメガルカリオは、
・特性「てきおうりょく」で威力80の先制技3種類
・S勝っていれば威力240のインファ
・剣舞を覚える
・両刀もできる、技範囲広い(ハッサムは無理)
これは珠ハムの再来ですね(メガルカリオを使ったことはない)
◆HBDの理想配分(耐久値の最大化)
よく勘違いされる内容で、先に結論だけいうと、
H:B:D=2:1:1
に近いほど耐久値は高くなります
BとDは和がHと同じなら1:1でなくてもよいというのはよくある「誤り」です
実戦で気にするレベルはないですが一応1:1の方が効率がいいのは確かです
ランクルスぐらいしかできた記憶はないですしそれも耐久型ならHB特化とかの方が動かしやすいですのでこれに従うことは皆無ですが……
以下、指数計算を使って検証します
耐久値(耐久指数の和を以後こう名付けます)は
H*B+H*D=H*(B+D) ――➃
で表されます
また、HBD3つの能力値の合計が同じ場合に、➃の値が最大となる能力値配分を考えたいので(この表現で伝わりますよね?)、当然前提として
H+B+D=K(=一定) ――➄
とおけます
つまりKは定数です
条件は以上なので➃と➄を使えば最大化の条件が求まるはずですね
B+D(=K-H)を代入できるのでHの二次関数に持ち込めて、そこから頂点を求めることもできますが、どうせB+DをまとめるならB+D=G(Guardのイニシャル)とおけば、
➃⇔H*G (⇔は同値、つまり本質的に同じ式という意味のつもりです)
➄⇔H+G=K
となり、見事に相加相乗が使えるので
H+G≧2√HG
等号はH=Gのときで、このときH*Gは最大になります
つまりGを戻せば
H=B+D(=1/2K) ――➅
が最大化の条件となります
※相加相乗平均の関係
足し算の平均は必ず掛け算の平均(積の累乗根)以上になるという関係
左辺に寄せて因数分解すれば証明できる
※数学が嫌なら算数っぽく長方形の面積を考えるとわかりやすいかも
周囲の長さの和を同じに保ったまま面積を広くすることを考えます
周囲の長さの和が2K(これも定数なのでKと本質的に同じ)、縦が「H」、横が「B+D」
面積は縦かける横で「H*(B+D)」となりうまく対応します
細長い長方形より正方形の方が面積は広くなりそうなのは直感的にイメージできますね
つまり縦と横の長さ(「H」と「B+D」)が等しいか、それに近いほど面積は広いです
(図形は基本円に近いほど広くなる)
よくある間違いはここで考察がおわっています
実はひとつ見落としがあります
今までは耐久指数の和の最大を考えました
ですが、耐久指数は最後火力指数に“割る数”なので、「ダメージの最小化」を考えるなら、耐久指数は逆数を考えないといけないです
つまり
1/(H*B)+1/(H*D)=B+D/(H*B*D)
の最小を考えないといけないです
➅をふまえればH,B+Dは定数なので無視できて、変数だけ考えると結局
1/B*D
の最小を考えればいい
いいかえればB*Dが最大になればよく、B+Dが定数ですからまた相加相乗が使えます
同様にして、
B=D ――➆
という条件が得られます
なので➅と➆を合わせて冒頭の結論が得られます
努力値いくつ振るとかは実数値から逆算すればいいので問題ないですね
努力値を計算に絡めるとアホみたいに面倒な式になるので上記のやり方が一番楽な証明でしょう
※B=Dはややこしく考えなくても例を考えればすぐわかります
HBDの合計が400として、火力指数10000が飛んできたとします
理想配分は「200,100,100」で、物理特殊に一回ずつ攻撃を受けるとダメージは
100+100=200
次に、BDを1:1から離すため、「200,1,199(約200)」とすると、ダメージは
10000+50=10050
どう見ても増えてますね(50倍)
この結果を見れば
「H=B+DならBDの配分は何でもいい」
なんて口が裂けても言えないはず
以上から、耐久はラッキーみたいにBとDが偏っても効率悪く、ツボツボのようにHだけ低いのはそれよりもさらに効率悪いとわかります
(ラッキーのついては偏ってるからこそ特殊受けになれるとも言えますが)
➅と➆の重要度を比較すると➅、つまり、H=B+Dの方が圧倒的に重要です
試しにツボツボは種族値H20、BD共に230なのでHB振りずぶといだと
127-310-251
が最大で耐久値は71247
効率よくすると
344-172-172
で耐久値は118336まで上がります
(BD振りのずぶといきせきラッキーが106762.5)
◆HBDの理想配分の活用
散々式を弄繰り回して説明しましたが一番大事なのは考え方です、結果ではない
上記の結論をどう生かすか例で見ましょう
Ex.1 ロトム
H50 B107 D107
典型的なHが際立って低いパターン
➅に従いH252振りだけで耐久は著しく上がります
Ex.2 ソーナンス
H190 B58 D58
典型的なHが際立って高いパターン
➅に従いBDに252振りすると耐久は著しく上がります
Ex.3 カビゴン
H160 B65 D110
典型的なBDに偏りがあるパターン
➆に従いB振りから入ると効率良く総合の耐久力をあげられます
Ex.4 バンギラス すなおこし(D1.5倍)
H100 B110 D100
能力に補正が入るパターン
耐久値の計算がややこしくなります
➅に従いまずH振りから入りたいところ
BDはBの方が低くなりますが、➆を考えてBに振るよりDに振って能力値の合計を増やす方が耐久値は高くなります(特殊受けにもなれる)
ちなみにH振りだけとD振りだけ(性格補正なし)を比べるとギリギリH振りだけの方が合計は高いです(64170>62650)
➅は有効ですね
要するに効率を考えるより能力の和そのものを増やす方が効果的なこともあるということです
(参考)
理想配分にすることでアップする指数は「差の二乗」で求まります
「200,100,100」と「300,70,30」なら指数の差は
200*200-300*100
合計が同じなので、H同士の差とB+Dの差は必ず同じですから、次のように変形できます
200*200-(200+100)*(200-100)
後ろの掛け算は和と差の積なので二乗の差になり、先に展開すると
200^2-100^2 (「^2」は二乗のつもりです)
200の二乗は相殺するので、結局100の二乗、つまり差の二乗が指数の増加分になります
※この結果は➅に従うことによる増分のみを考えています
➆に従うことで減るダメージはかなり少ないです
努力値だけでどうこうできないことの方が多いですし、あまり考える意味はないです
これを見て筆者の印象は「案外少ないな」という感じです
100も差があって25%しか違わないので、20や30の差ならほぼ誤差です(1%と2.25%)
Hの「16n-1」調整などもそうですが、効率化による増分は思ってるより少ないです
例えば162→159とすると元取るには3回定数ダメージを受けないといけないなど
あまり数字にとらわれ過ぎると、かえって結果は悪くなります(経験談)
“みがわり”の回数とかに直接関わる場合の奇数調整など、かなり大事な場合もありますが、そうでなければ「できたらしよう」ぐらいにしておきましょう
大事な式まとめ
◆レベル50のステータス導出
無振りで
S → +20 (ABCDも同様)
H → +75
極振りなら、さらに「+32」
◆ダメージ計算の式
W*A*0.44/B=(与ダメージ実数値)
相性その他の補正と乱数は最後にかければいい(かける順序は不同)
◆指数計算
(W*A)/(H*B)=(ダメージ割合)
指数が同じならHPは丁度なくなる
0.44の係数は火力、相性その他の補正と乱数は然るべき方に掛けて二つの指数を比較する
◆HBDの理想配分
H:B:D=2:1:1
これに近いほど効率がいい
H=B+Dから離れると「差の二乗」分合計指数が減る
(差とは理想配分のH実数値と実際のH実数値の差を指す)