LPモンスターを解剖する
ロードスには、徹底的にLPを追い求めているパラさんが居る。現在、標準的な装備で、バフなし最大LP 5581。その装備を教えてもらった。
基本スペック
82 パラ
生命力 28 (デフォ13, 秘薬10, 指輪2, パぺ3)
軌跡 LP+297
称号 LP+110
ギルドスキル LP+100
GP LP+400
防具習熟 LP+520
職業技能(頑強) LP+10%
装備
頭 LP+50, LP+15%
肩 LP+10%, 瑞々しいLv10 LP+16.5%
胴 LP+100, 瑞々しいLv10 LP+16.5%
足 LP+100, 盛んな Lv10 +50が2つ
首 LP+100
指輪 LP+50, LP+60
上衣 LP+12
下衣 LP+100
腰装備 LP+50, LP+60%
装身具 LP+10%
コス
コス(胴) LP+200
宝石 LP+50が1つ, LP+100が2つ
ここで、LP+?%は「基本最大LP+?%」のこと。LP+?は「最大LP+?」のこと。
検証
以前の日記で、パラの基本最大LPがこんな式で表されると書いた。
(基本最大LP) = (30 + 6*Lv)*(1+0.05*n) の四捨五入
パラの基本最大LP - お茶の国 プリ日記 ロードス島 調査兵団
ここで、nは生命力。上に書いた装備からLPモンスターの最大LPがきちんと計算できるか検証してみる。まず、上の計算式から
(30+6*82)*(1+0.05*28)=1252.8
で、基本最大LPは1253とわかる。次に、装備のLP+?%をすべて足し合わせると
10+15+10+16.5+16.5+60+10=138%
LP+をすべて足し合わせると
297+110+100+400+520+50+100+100+50+50+100+50+60+12+100+50+50+100+100+200=2599
となるので、基本最大LP+138%、最大LP+2599となる。なので、最大LPは
1253*2.38+2599=5581.14
となり、5581の値がきちんと求まった。
シフの職業加算値
シフの職業加算値を測定してみた。
測定
40シフでは25.3とでた。また、75シフでは、28.8 or 28.81 or 28.82 とでた。
職業加算値はLvの一次関数で比較的きれいな式で書かれているはず。
しかし、75シフの職業加算値が28.81や28.82だときれいな式にならない。
なので、28.8と思ってよさそう。とすると、職業加算値の計算式は
0.32*(Lv+15)
となる。
まとめ
念のため、過去に測定した職業加算値も表にまとめておくとこんな感じ
職 | 加算値 |
---|---|
パラ | 0.24*(Lv+20) |
モンク | 0.26*(Lv+20) |
ソサ | 0.28*(Lv+30) |
シフ | 0.32*(Lv+15) |
エレ | 0.36*(Lv+30) |
何となくだけれど、実装が遅かった職ほど職加算値の係数が大きくなる傾向が見て取れる。まだ測っていないけれど、アベマセはさらに大きいのかも
シフのスキル
シフのスキル倍率を調べた。スキル倍率は百分率表記。
マローダ
Lv | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 195 | 200 | 205 | 210 | 215 | 220 | 225 | 230 | 235 | 240 |
スキル加算値 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
Lv | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
スキル倍率(%) | 245 | 250 | 255 | 260 | 265 | 270 | 275 | 280 | 285 | 290 |
スキル加算値 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 |
Lv | 32 | 33 | 34 | 35 | ||||||
スキル倍率(%) | 295 | 300 | 305 | 310 | ||||||
スキル加算値 | 34 | 35 | 36 | 37 |
コンファインメント
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 120 | 150 | 180 | 210 | 240 | 270 | 300 | 330 | 360 | 390 |
スローイング・ダガー
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 140 | 145 | 160 | 165 | 180 | 185 | 190 | 195 | 200 | 205 |
Lv | 11 | 12 | 13 | 14 | 15 | 16 | 17 | |||
スキル倍率(%) | 210 | 215 | 220 | 225 | 230 | 235 | 240 |
メイルブレイカー
Lv | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|
スキル倍率(%) | 200 | 230 | 260 | 290 | 320 | 350 | 380 |
シャドウスティッチ
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 150 | 180 | 210 | 240 | 270 | 300 | 330 | 360 |
ミューティレイト
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 180 | 200 | 220 | 240 | 260 | 280 | 300 | 320 | 340 | 360 |
スクープアウト
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|
スキル倍率(%) | 300 | 330 | 360 | 390 | 420 | 450 | 480 |
アウトオブサイド
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 250 | 275 | 300 | 325 | 350 | 375 | 400 | 425 | 450 |
シャドウスラッシュ
Lv | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 125 | 132 | 139 | 146 | 153 | 160 | 167 | 174 | 181 | 188 |
スキル加算値 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 | 22 | 24 |
Lv | 16 | 17 | 18 | 19 | 20 | |||||
スキル倍率(%) | 195 | 202 | 209 | 216 | 223 | |||||
スキル加算値 | 26 | 28 | 30 | 32 | 34 |
ディレイドスロー
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 120 | 130 | 140 | 155 | 170 | 185 | 200 | 215 | 230 | 245 |
Lv | 11 | 12 | 13 | |||||||
スキル倍率(%) | 260 | 275 | 290 |
ツイストダガー
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 180 | 190 | 200 | 215 | 230 | 245 | 260 | 275 | 290 | 305 |
Lv | 11 | 12 | 13 | |||||||
スキル倍率(%) | 320 | 335 | 350 |
ソウルスラッシュ
Lv | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 170 | 180 | 190 | 200 | 210 | 220 | 230 | 240 | 250 | 260 |
スキル加算値 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 | 22 | 24 |
Lv | 15 | 16 | 17 | 18 | ||||||
スキル倍率(%) | 270 | 280 | 290 | 300 | ||||||
スキル加算値 | 26 | 28 | 30 | 32 |
デルージョン
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 150 | 170 | 200 | 230 | 260 | 290 | 320 | 350 | 380 | 410 |
Lv | 11 | 12 | 13 | 14 | 15 | |||||
スキル倍率(%) | 440 | 470 | 500 | 530 | 560 |
デュアルピアッシング
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 220 | 240 | 260 | 290 | 320 | 350 | 380 | 410 | 440 | 470 |
Lv | 11 | 12 | 13 | |||||||
スキル倍率(%) | 500 | 530 | 560 |
ドレインスラッシュ
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 160 | 180 | 200 | 230 | 260 | 290 | 320 | 350 | 380 | 410 |
スキル加算値 | 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 |
Lv | 11 | |||||||||
スキル倍率(%) | 440 | |||||||||
スキル加算値 | 22 |
ターミネーター
Lv | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 550 | 625 | 700 | 775 | 850 | 925 | 1000 | 1075 | 1150 |
エグゾースト
Lv | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|
スキル倍率(%) | 220 | 250 | 280 | 310 | 340 | 370 | 400 | 430 | 460 |
スキル加算値 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 | 60 |
MPの境界テスト
いま、プリのおまけ回復の計算式を見つけようとしている。
おまけ回復の計算式 (暫定) - お茶の国 プリ日記 ロードス島 調査兵団
その一つの候補がこの式。
0.0011*(Lv+50)*m+0.66
ここで、Lvはレベルで、mは精神の値。けれど、この式がどこまで正しいかは、まだよく分からない。もし、この計算式が正しいとすると、レベル85でのおまけ回復はこうなるはず。
精神13のとき、2.5905
精神16のとき、3.036
今日は、この二つの値の正しさを検証してみたい。
境界テスト
そこで、今日はMPの境界テストをしてみる。MP残量の表示は切り捨てということが昨日の日記で分かったので、理論値が切り捨ての境界ぎりぎりになるように調整する。もし実際の値が理論値と異なっていたら、切り捨ての境界をまたいでしまうはず。
精神 13
例えば、精神13で考えてみる。
表示上のMP自然回復が16、おまけ回復が2.5905とすると、5秒間で18.5905回復するはず。
一方、ファストキュア(デフォルトMP消費は19)をMP消費減10%の状態で打つと19*0.9=17.1消費する。そこでMP834の状態から、
ファストキュアを19回打ち、10回分自然回復を待ったとすると
834 - 19*0.9*19 + (16+2.5905)*10 = 695.005
となるはず。また、ファストキュアを15回打ち、11回分自然回復を待ったとすると
834 - 19*0.9*15 + (16+2.5905)*11 = 781.9955
どちらも、理論上のMP量が整数値に非常に近い値になるところがポイント。
もし、実際の回復量が理論値通りなら、MP残量の表示は前者では 695、後者では 781となるはず。ところが、もし実際の回復量が理論値より少しでも少なければ、前者で694となってしまうはずだし、逆に少しでも多ければ後者で782となってしまう。
なので、この2つの実験で、695, 781という結果が出れば、「おまけ回復が2.5905」という仮説がかなり高い精度で確かめられたことになる。
そして、実際に確かめてみると、期待通り 695, 781という結果が得られた。ここから逆算してLv85、精神13でのおまけ回復 c は
25.9 <= c < 2.59091
という範囲にあることが分かる。
精神16
精神を16にして、同じ実験をしてみる。このとき最大MPは932となる。また、おまけ回復は 3.036 というのが今の仮説。
ファストキュア25回、自然回復14回だと
932 - 19*0.9*25 + (16+3.036)*14 = 771.004
ファストキュア14回、自然回復11回だと
932 - 19*0.9*14 + (16+3.036)*11 = 901.996
となるので、理論値はどちらも整数に近い値となる。実際に実験してみると
771, 901と期待通りの値が得られた。ここから逆算するとおまけ回復cは
3.0357 <= c < 3.0364
の範囲に絞れた。
結論
攻撃力の調査では「境界テスト」が重要な役割を果たしたけれど、MPのおまけ回復の測定でも、境界テストは役に立った。その結果として、Lv85プリのおまけ自然回復cは
精神13のとき 25.9 <= c < 2.59091
精神16のとき 3.0357 <= c < 3.0364
と分かった。また、この結果は
0.0011*(Lv+50)*m+0.66
という予想ともマッチしているので、この式の信憑性が少し高まった。
MP表示の丸め処理
MPの残量は、内部的には端数でもっているはずだけれど、表示上は常に整数値になっている。ここで使われる丸め処理が何なのか調べてみる。
実験
最大MPを決める計算式は過去に調べた。
最大MP(昨日の分析) - お茶の国 プリ日記 ロードス島 調査兵団
この結果から「基本最大MP+?%」が0なら、最大MPは内部的にも整数値になる。
Lv=85、精神 13だと基本最大MPは
(65+2*85)*(1+0.05*13)=387.75 の四捨五入で388となる。
ここから、基本最大MP+0%で、最大MP+446だと、388+446=834となる。
なので、最大MPは計算上834で、実際にも834になっていた。この値は、端数なしでぴったり834。
ここで、MP消費減30%でファストキュアLv24を打ってみる。
デフォルトのMP消費は19なので、実際の消費量は、19*0.7=13.3。
ファストキュアを3回打ったときのMPの変化がこちら。
834 → 820 → 807 → 794
MPの減少量だけ見ると, 14, 13, 13となっている。つまり、内部的には13.3ずつ減っているはずと考えられる。そして、そう考えて、内部値と表示値を比べると
834 | 820 | 807 | 794 |
834 | 820.7 | 807.4 | 794.1 |
となり、MP表示の丸め処理は切り捨てと分かる。
さらに、最大MPの計算式が四捨五入だったことを考えると、最大MPは常に端数なしで整数値なことも分かる。
結論
まとめると
MPが最大のときは端数なしで常に整数値
MPが最大でないときは、内部的には端数を持っており、切り捨てた値が表示される。
という事が分かる。このことが分かると、おまけ回復の量を測定するのがとても簡単になるのだけれど、その辺の話はまた後日。
おまけ回復の計算式 (暫定)
いま、MPおまけ回復の量を決定する計算式を探ろうとしていて、そのために何回かおまけ回復を測定した。
一つの候補
そして、今考えている計算式の候補がこれ
0.0011*(Lv+50)*m+0.66
ここで、Lvはレベルで、mは精神の値。この計算式で計算した理論値と、実験で測定した実測値を比較してみるとこんな感じ
レベル(Lv) | 精神(m) | 実測値下限 | 実測値上限 | 理論値 |
---|---|---|---|---|
84 | 13 | 2.57575757 | 2.5762711 | 2.5762 |
84 | 16 | 3.01818 | 3.01851 | 3.0184 |
82 | 13 | 2.54736 | 2.54775 | 2.5476 |
82 | 13 | 2.69158 | 2.69299 | 2.6928 |
81 | 13 | 2.5294 | 2.5334 | 2.5333 |
確かに、実測値で確認できた範囲に理論値がおさまっている。
けれど、データが少ないので決定的なことはまだ言えない。
実験の手間
なぜ、実験データが少ないのかというと、現状のおまけ回復の測定法がすごく大変だから。
攻撃力やダメ値の実験ではすぐに結果が得られたけれど、回復実験では回復を5秒間待たねばならず。しかも、回復1回分では丸め誤差にまみれてしまう。そこで、精度を出すために、実はいま10分間分の回復量を測定している。かなり大変。なので、この手間を大幅に減らす方法を考えないと、多くの実験データを集めることができない。
そのために、ネックになっているのがMP量の丸め方。
つまり、MP量は内部では小数点で持っているはずだけれど、表示の際にそれが、切り捨てられているのか、四捨五入されているのか、切り上げられているのか分からない。
この辺が何とか分かれば、もう少しおまけ回復の測定の手間が減ると思うのだけれど、その辺の話はまた後日。