RO の最大ダメージ
https://ro-mastodon.puyo.jp/@marto/104096966046852700
の続き。
しかし、LA(レックスエーテルナ)を掛けた敵はこの制限である
21,474,836を超えて42mくらいまでダメージを伸ばすことができる。
これは、このスキルがダメージを常に「2倍」にするため、割り算を挟まない為だとと考えられる。
RO の最大ダメージについて
ギルメンの予想:
負の数ありの32bitのint(整数)型
つまり、-2,147,483,648 ~
2,147,483,647の間の値をとると思われる。
しかし、現実は21,474,836を超えるとダメージが入らない。
これは計算式が小数点以下を許さないためであると思われる。
計算式は
ダメージ = 基本ダメージ × 倍率
と考えられるが
この「倍率」が問題となる。
属性倍率がわかりやすいと思うが
1倍、1.25倍、1.5倍、
1.75倍、2倍となっている。
しかし、計算式の都合上小数点を含む計算が認められない。
なので、
ダメージ = 基本ダメージ × 1.25
ではなく
ダメージ =
基本ダメージ × 125 ÷ 100
となっていると思われる。
この、基本ダメージ × 125の時点で2,147,483,647を超えるとオーバーフローするため、実際に与えるダメージは2,147,483,647を100で割った21,474,836(小数点以下切り捨て)になると思われる。
Olrun鯖で活動する一般人
2018年3月2日RO丼始めました。