Minecraft-Bedrock-Edition
我的世界的雜湊方法是什麼?
聽說如果你在種子框中輸入一個非數字(或大於 2⁶⁴ 的數字),它會使用雜湊方法把它變成一個數字(小於等於 2⁶⁴)。我的問題:
Minecraft 使用的雜湊方法是什麼?(我用的是基岩版)
根據Minecraft wikia,使用的雜湊函式是 Java
String.hashCode()
,計算如下:s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
(哪裡
$$ i $$是字元串的第i個字元,n是字元串的長度,^表示取冪) 這顯然是一種 Java 方法。然而,考慮到種子在不同版本之間有些兼容,這個算法可能適用於 Java 和 Bedrock。