種族値、個体値、努力値を使いこなす・・・再びステータス計算式 (中学生以上向け)

ステータス計算式に立ち返って種族値、個体値、努力値を「数字」に着目して定量的に考えよう。
※この章を読まなくとも次の章以降は読めるように作っています。飛ばしてもOK。

さあてミツル殿、まずお主が気になるのは・・・
お主のエルレイドの個体値と今の努力値、で良かったですかな?
はい。
こいつの個体値によっては、技構成などを変えた方がベターかもしれませんから。
まずステータス計算式を復習しますぞ。
HP = { ( 2×種族値 + 個体値 + 努力値/4 )×Lv/100 } + 10 + Lv
HP以外 = [ { ( 2×種族値 + 個体値 + 努力値/4 )×Lv/100 } + 5 ]×性格補正(1.1or0.9)
※計算の途中で小数点以下が出るたび切り捨て
さて、はっきり申し上げて・・・
「個体値」も「努力値」もどちらもわかっていない場合、どちらも求めることはできませぬ
なので、お主のエルレイドには「まっさらバッグ」等、
「努力値を0にする」道具を使ってもらいますが、構いませんかな?
わかりました。
どの道、努力値は振り分け直すつもりだったので、問題ありません。
ではまずは素早さの個体値から求めてみますぞ。
このステータス計算式に、「種族値」はエルレイドなので「80」を代入。
「レベル」はお主のエルレイドのレベルである「81」を代入。
「性格補正」はお主のエルレイドは「むじゃき」ですので「1.1」を代入。
そして「努力値」は今「まっさらバッグ」で0にしましたので、「0」を代入。
最後に左辺の「ステータス」に実際のお主のエルレイドのステータスである「169」を代入すると・・・
169 = [ { (2×80 + 個体値 + 0/4)× 81/100 } +5 ]×1.1
あっ!
ステータス計算式が「個体値を求める1次方程式」になったというわけですね!
ご名答。正確には小数点以下の切り捨ての処理があるので
実際には1次不等式になることに注意して解いてみると・・・(個体値をiとする)

169 = [ { (2×80 + i + 0/4)× 81/100 } +5 ]×1.1
まずは1.1で切り捨て処理が起きているのでそれを解決するために不等式にしておきますぞ!
169 ≦ [ { (2×80 + i + 0/4)× 81/100 } +5 ]×1.1 < 170
153.6 ≦ { (2×80 + i + 0/4)× 81/100 } +5 < 154.5
真ん中の辺は整数であるはずなので154ですな。
実はここは単に1.1で割った153.6を切り上げるだけで構いませんぞ。
154 = { (2×80 + i + 0/4)× 81/100 } +5
149 = (160 + i)× 81/100
149 = (12960 + 81i)/100
149 = (12960 + 81i)/100
149 = (12960 + 81i)/100  この次も不等式にして
149 ≦ (12960 + 81i)/100 <150
14900 ≦ 12960 + 81i < 15000
1940 ≦ 81i < 2040
23.9 ≦ i < 25.1 iは整数なので
i = 24 または 25

候補が二つ出てきてしまいましたな・・・ふしぎなアメでレベルを上げて
もう一つ不等式を立てて同様に解くしかないようですな。
レベル82で再計算を行うと
i = 23 または 24
ムゥ、どうやらお主のエルレイドの素早さ個体値は「24」のようでござるな。
すばやさに関してはかなり良いと言えますな。
他の能力も求めてみると、HP9、攻撃20、防御21、特攻17、特防8、素早さ24。
まあ、野生の一発勝負ならこんなものですな。
吾輩としてはタマゴから新たなラルトスをゲットするのをおススメしますが・・・
うーん・・・
でも僕、こいつと一緒に戦っていきたいんです!
ヌグゥ、お主の熱く滾る思い、確かに受け取った!
ならば、そうですな、メガエルレイドとして戦うのならば・・・
ムッ・・・この素早さ個体値なら・・・できる!
「メガシンカ時に100族抜き」・・・いや、「メガシンカ時にガブリアス抜き」をしますぞ!
「100族抜き」というのは
「素早さ種族値100のポケモンより素早さのステータスが1高くなるようにする」
ということでしょうか。
確かに素早さ100のポケモンは多い上にリザードン、メガガルーラと重要なポケモンもたくさんいますね。
ガブリアスはその少し上の102だったでしょうか、確かにガブリアスは非常によく見るので良いですね。
素早さ105まで抜かないのは残った努力値を他に回す目的でしょうか。
お主は察しが良すぎますぞ〜。その通りでござる。
レベル50で最も速いガブリアスの素早さは169ですな。
ではこれより1高い170にするために努力値がどの程度必要かをステータス計算式から求めますぞ。
224必要みたいです。じゃあ残りを振り分けて・・・
HP11、攻撃252、防御11、特攻0、特防10、素早さ224でどうでしょうか?
素早さと攻撃に振り分けると32余ったので、耐久に均等に分けてみました。
ふむ。自明な問題点は2つ。

まず、「個体値が奇数なら努力値は8n+4」「個体値が偶数なら努力値は8n」(nは整数)
で振り分けるのが大前提ですな。
ステータス計算式を見るとわかりますが、割り算の際に小数点以下を切り捨てる関係上、
レベルが50の場合、努力値は8ごとでしか効いてこないですからな。

もう一つの問題はダメージ計算式も見る必要もありますな。ダメージ計算式は簡単には以下の形。

ダメージ = (22 × 威力 × 攻撃側の能力値 ÷ 防御側の能力値 ÷ 50 + 2 )
※これに0.85〜1.00で16段階の一様乱数をかけることでダメージに振れ幅が出る

のようになっており、ほぼ掛け算のみで構成されていることがわかりますな。
防御と特防を1ずつ上げると元の防御力がエルレイドのように113なら防御力は0.88%上がり、
ダメージ計算式から言ってダメージは約0.88%下がると言えます。
この代わりにHPを2上げると元のHPがエルレイドのように132ならHPは約1.5%上がり、
最大HPに対するダメージの比率は1.5%下がると言えます。
同じ努力値16ですが、防御と特防に振り分けるより
HPに集中して振り分けた方が耐久力が上がるというわけですな!
よってステータス計算式に立ち戻ると、HP種族値が圧倒的に高いポケモンでない限りは
総合耐久力を上げたければなるべくHPに多く振り分けるのが基本ですな。
反例としてマリルリなどはHPに全て振り分けるより防御と特防にも分けた方が耐久力が上がりますが。
確かに。自力で気づくべきでしたね。では
HP28、攻撃248、防御4、特攻0、特防0、素早さ224でどうでしょうか。
素早さ、攻撃、HPと振り分けてみたら4余ったので、4でもステータスの上がる防御に振り分けました。
筋がいいですぞボーイ!
実はこれらの計算は手計算をする必要は無く、
ステータス計算機」「個体値計算機」などと調べれば先人の知恵を借りることができますな。
吾輩は「ポケモントレーナー天国」殿の計算機を愛用していますぞ〜。
よしっ、じゃあ僕エルレイドを育てなおしてきます!
またよろしくお願いします!


・・・というような話、ユウキさんにした方がいいんですかね?

ユウキ君にはしなくていいんじゃないかな・・・
机に5分座ってられないような人だし・・・
おーい何話してんだよ、早くポケモン育てようぜ!!


戻る  進む
メニューに戻る
トップページに戻る