名無しの旅人
2023/11/11 (土) 19:39:44
f82f0@de4ff
プログラミングをやってみたくてpythonのサイト見ながら、夜蘭のダメージ、期待値計算機作ってみたのですが、必ず十の位以下が合わないません。切り捨てによる誤差が考えられたので、全通りの切り捨てを試してみたのですが、どれも微妙にずれてしまいます。ここに書かれていない要素って他にもありますか?
通報 ...
夜蘭に限らず、原神には小数点以下の数値が存在する。聖遺物サブステータスは全て小数点以下が存在するし、各ステータスも小数点以下が存在すると思われる。砂場には細かく検証しているから、見てみると良い。
ありがとうございます。計算過程が面白かったです。態々ゲーム内で確認できる数値とは異なる数値が設定されているのは何か理由が考えられるでしょうか?
それは分かりませんね。
計算しやすい数字があるのかも知れないし、特に意味はないのかもしれないし、トラップストリートのようにデータを抜かれた時への対策かもしれない。
どれだけ考えても仮説の域をでない話だと思います。
浮動小数の仕様の問題だよ。コンピュータ上の小数計算は-∞~∞の無限個ある実数を高々2^64個の数値で代替しているので当然表現できない実数が存在し、計算過程で必ず誤差が生じる。この辺の記事を読むといい。もっと本格的に学びたければこの辺の本を読むといい。