四捨五入と切り捨て

端数処理

昨日の日記で、カーラのサテュ相手に与ダメの端数が切り捨てでなく四捨五入かもということを書いた。

大部分の人にとって、その違いはどっちでもいい事だろうと思うけれど、この日記ではきっちり調べておきたい。

ゲームとしては敵の防御力が決まっていて、それをもとに与ダメを計算し、端数を切り捨てるか四捨五入するかなので、違いは殆どない。
けれどこの日記では「与ダメを測定しその結果から防御力を逆算する」という事をしている。なので、端数処理がどうなっているかによって防御力の見積もりに結構大きな差が生じてしまう。

実験

端数処理の確認するために、かかしを叩いてみる。
かかしは防御力が 0 なので、与ダメの計算がとても簡単。例えば

攻撃力: 978
ダメ増(自然): 10%
クリダメ増(自然): 7%
クリダメ増(物理): 30%

となっていた場合

978*1.1*(1.5+0.07+0.3)=2011.746

が与ダメになる。そして実際に叩いてみると…

2012

になった。やはり、切り捨てではなくなってる。そこで、もう少し際どい端数でも実験してみると…。

1256*1.1*(1.5+0.3+0.07)=2583.592 → 実測 2584
1096*1.1*(1.5+0.3+0.07)=2254.472 → 実測 2254

となった。これは、端数は四捨五入と言って良さそうだ。

思い出してみる

ロードスでダメ値の計算式を探ろうと実験を始めたのが 2017年3月頃
同じ年の5月にダメ値の計算式を確定できた。
2018年1月には、ロードスでのダメ値の計算法をまとめた資料を作った。

この間、色んな装備で色んな敵を何度も何度も叩き、与ダメは下一桁まで完璧に
理論値通りだった。この時期に切り捨て計算だったのは間違いない。

思い返してみれば、2018年10月にカーラ危険で防御力調査をしたときに、ちょっと変な事があった。 カーラ危険でダメ値計算に使われるレベルが109らしいという結果になったのだけれど、エンプ、サテュがLv112なことを考えると、ちょっと変な感じだった。

今にして思えば、実はこの時すでに四捨五入に切り替わっていたのかもしれない。これ以降行った防御力の調査はやり直しが必要みたい。