Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
Disambig gray  本文章介紹的是用於生成遊戲世界的種子。關於其他含義,請見「種子」。
Clock
此條目需要更新。

理由:需要檢查版本間是否仍有其他不同之處。

種子(Seed)是用於生成Minecraft世界的一個整數。[1]

相容性[]

不同平台上的種子在某種意義上是相容的,同一種子在不同平台所生成的地形特徵生物羣落是一樣的,但生成結構的位置一般不同。

種子在同一平台上的不同版本之間可能相容:

Java版的種子在Alpha v1.2.0Beta 1.7.3期間基本一致。Beta 1.8版本完全變更了世界生成;1.2因為加入了叢林而變更了陸地上生物羣落的分佈;1.7.2再次重寫了世界生成;1.13變更了洞穴的生成,加入了新的水域生物羣落,以及調整了變種生物羣落和部分結構的位置;1.14加入了竹林生物羣落,同時變更了村莊和其他一些結構的位置;1.16變更了地獄的生成並加入更多生物羣落;1.18加入了多種新的山地和洞穴生物羣落,同時完全變更了世界生成;1.19加入了紅樹林沼澤深淵1.20加入了櫻花樹林。上面未提及每次更新加入的新結構,但它們通常不會伴隨整個世界生成的大變更。

基岩版中,Alpha 0.9.0是第一次徹底變更世界生成的更新。水域更新變更了海洋,村莊與掠奪變更了村莊等結構。1.18.0同樣加入了多種新的山地和洞穴生物羣落,同時完全變更了世界生成。

原主機版的種子更新大致和Java版的更新週期一致。

世界生成[]

當遊戲準備生成一個世界時,遊戲會調用一個被稱作Perlin雜訊的演算法,生成一個偽隨機數,這個數決定了世界的樣子。但由於偽隨機演算法的性質,若演算法初始輸入的數值(種子)是相同的話,算出的最終結果是相同的。這就是種子的意義:使用相同的種子可以生成出多個相同的世界。

當世界生成演算法更新(通常是加入新的生物羣落)後,相同的種子就不會生成相同的地形。這也是某些不同的遊戲版本中,相同的種子無法產生相同的地形的原因。

一個世界生成後,其種子便已經確定。預設情況下遊戲會自動選擇種子(使用系統時間)。但玩家也可以手動設定。使用相同的種子可以重複玩相同的世界,種子也可以用於與其他玩家分享世界。種子的設定可以用數字(包括負數)、字元等,非純數字種子會被自動轉換成一個32位元的整數。

如果將舊版本的世界匯入到新版本中,則新生成的區塊會基於新的種子,因此並不一定會與舊區塊吻合(這個現象在Java版Beta 1.81.7.2中非常常見)。被刪除的區塊會重新生成,但只要種子或生成演算法其中一個有所不同,區塊就會不同。

必須注意的是種子其實只是輸入到偽隨機演算法中的值,而不是世界真正的名字。根據某個種子生成的世界的特徵並不註定與種子的字面含義有關。例如,即使是使用一個生物羣落的名稱作為種子,生成的世界也並不會以此作為主要的生物羣落。

查看種子[]

想要確定一個世界的種子,在Java版中,玩家需要執行命令/seed。玩家也可以在重建世界的界面中找到種子,也可以用編輯世界界面中匯出的世界生成設定中找到它。

基岩版中,種子可於世界選項界面中查看。也有一個種子選擇器,為玩家提供預設的種子,以在重生點附近生成具有特定特徵的地形。此外,在搶鮮版中,熒幕頂端會顯示這個世界的種子碼。

而伺服器的種子需要到伺服器端的組態檔中的Seed欄找到。

技術細節[]

Realms[]

Java版中,玩家可以在聊天欄輸入/seed來查看種子。在基岩版中,種子在Realms Plus中是不可見的。

Java版[]

如果種子輸入框中的內容包含非數字字元(除非是數字開頭的一個+-)或大於等於20個字元(-9223372036854775808~9223372036854775807),那麼Java中的String.hashCode()函數會用來將其轉換為數字。由於輸出的數據類型為int,此函數將Minecraft能生成的種子數量限制為232(4,294,967,296)。為了達到完整的可能的世界數量(264,即18,446,744,073,709,551,616),必須輸入純數字種子或使用預設的種子碼。

基岩版[]

Java版一樣,基岩版中也有264,即18,446,744,073,709,551,616種可能的世界。如果種子輸入框中的內容包含非數字字元(除非是數字開頭的一個+-)或大於等於20個字元(-9223372036854775808~9223372036854775807),那麼遊戲將會將其轉換為數字[需要更多資訊]

版本間重疊[]

所有種子在Java版和基岩版會產生相同的地形和生物羣落分佈,但結構和結構位置、礦石分佈和生物生成等並不相同。

過時內容[]

Paeonia (texture) TU1
該段落所介紹的內容已從Minecraft中移除。

這些特性曾存在於遊戲中,但已被移除。

洞穴與山崖第二部分以前,Java版基岩版尚未實現地形同步。-231(-2,147,483,648)至231-1(2,147,483,647)間的種子在Java版和基岩版會產生相似的生物羣落分佈(但仍有區別),但地形特徵、結構位置、礦石分佈和生物生成等有明顯差異。

基岩版1.18.30以前,無論是使用數字還是字串,都有總共232(4,294,967,296)種可能的世界。這個結論對於64位元版本的Windows 10版同樣成立。

怪異生成[]

使用某些特定的種子可以觀察到許多奇特的生成。

變更地形而不變更結構[]

Java版1.17.1及以前的版本,世界生成的隨機數演算法使用java.util.Random類別的線性同餘演算法,而這一演算法在生成隨機數時種子只有後48個二進制位對隨機數有效果。因此,如果兩個世界的種子二進制後48位元相同,則它們部分結構有着相似的分佈,並具兩者有極為相似的終界和地獄。

平行種子[]

Java版1.17.1及以前的版本,將-7379792620528906219減去一個種子後得到的種子生成的主世界會有着和原種子除海洋群系外完全相同的生物羣落分佈,但地形並不一致。

重複[]

Clock
此段落需要更新。

理由:請明確該段落所指的版本。

Duplicate Caves

164311266871034旁觀模式下的地下,可見洞穴沿Z軸重複生成

某些種子會在遊戲內部中返回0,[2]引起洞穴和其他結構的無限生成。[3]Java版中,107038380838084種子會在第一次被調用時返回0,而164311266871034會在第二次被調用時返回0,而這兩個調用結果會分別與X座標或Z座標相乘,從而使生成結果與某一個方向的座標無關,導致洞穴、廢棄礦坑和水下峽谷等結構分別在X和Z軸上重複生成。[4]由於未知原因,4165936693698546884種子會在X軸上生成無限循環廢棄礦坑並在Z軸-250至-500左右的地下生成無限循環洞穴。388513357548740種子會在Z軸上生成無限循環廢棄礦坑。[5]由於未知原因,水下洞穴和常規峽谷的生成加入了,自Java版1.13後它們不在這個種子中受到影響。不過,如果上述兩個種子減去1,那麼水下洞穴和常規峽谷將會重複生成,但其他結構則不再重複。已有理論分析這些種子也會影響要塞中不同方塊類型的分佈和惡地中陶瓦的圖案,但尚無切實證據證實。

其他一些地物也會受到影響,例如裝飾性結構。它們通常沿對角線生成。[6]

基岩版中,種子2898490251669320484和由ddnqavbj生成的0會沿對角線重複生成洞穴、峽谷和一些裝飾性地物。[7]1000686894-1171867832的種子會導致在Z軸上無限生成廢棄礦坑。[8]任何計算為4294967296 × n + 1669320484的種子同樣會生成具有相同地形特徵的世界。[7]

歷史[]

Java版pre-Classic
rd-131655加入了一個簡單的世界生成器,會生成大小為256×64×256的雜亂地形。
rd-132211變更了世界生成器,現在只會生成由草地和石春組成的平坦地形。
rd-20090515地形不再是平坦的了,現在地形會有高低起伏。
世界頂部為一層草地,下面有幾層泥土,底層為石頭。
rd-161348懸崖生成得更頻繁了。
Java版Classic
0.0.3a現在地下會生成洞穴。
0.0.12a世界生成器更新。
2009年8月25日展示了再次進行更新的世界生成器。
現在會生成更多的懸崖。
Java版Indev
0.3120091223-2公佈了等軸距級繪製的熒幕截圖。
20100106現在可以在生成世界時選擇島嶼、浮空島、平坦或原始作為世界類型。
可以選擇正方形、長形或下深作為世界形狀。
可以選擇小、正常或大作為世界大小。
20100107下深浮空島地圖現在有多層島嶼。
現在可以選擇世界主題,有正常和地獄。
20100110現在島嶼生成更多的沙。
20100113海洋現在生成無限的水。
20100122水現在可以自然生成於海平面上和浮空島上。
減少洞穴被水淹沒的可能性。
Java版Infdev
20100227-1對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
世界生成已大大簡化(去除了沙、團簇等),以使無限世界生成的實現更易於使用。
20100227-2紅磚金字塔的生成發生了變化——它們現在總是會到達頂部的一個點,而不是有時會被截斷,從而產生「磚方形截錐體」。
20100313海洋現在比以前大得多。
20100320重新引入了團簇,其作為單個方塊零星生成。
重新實現了的生成。
20100325團簇生成變更為目前的類型。然而,團簇生成使用了浮點數,導致其在距離過大時生成失敗
加入了洞穴,會代替所有方塊生成而不只是地形方塊。
20100327對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
移除了洞穴。
移除了花隨機斑塊
33,554,432處的Infdev石牆不再生成。相反,邊境之地將會生成在12,550,824。
20100413樹現在是大型的樹
砂礫現在會在世界中再次生成。
20100420對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
世界生成時會考慮更少地生成山脈。
20100608所有的樹現在都是小樹,大樹不再生成。
20100611對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
現在會生成大型島嶼。
地形現在會生成得足夠高以至於達到世界高度限制,導致地形被截斷。
獨石柱現在會生成。
樹的生成量現在有所變化。
20100616-1對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
海洋中的地形生成現在是不同的。[需要驗證]
重新加入了洞穴。
花和蘑菇的隨機斑塊現在會生成。
湧泉現在會自然生成。
熔岩現在會自然生成,具體生成方式未知。
Java版Alpha
v1.2.0preview對世界生成的地形改變:在舊版本上使用任何給定的種子現在會生成一個不同的世界。
Java版Beta
1.3允許玩家自訂地圖種子。
1.8.1除錯熒幕現在顯示目前世界的種子。
Java版
1.2.1伺服器將不再向用戶端發送種子。
1.3.112w18a由於單人遊戲的實現方式與多人遊戲合併,世界的種子不再顯示在除錯熒幕上。
12w21a加入了/seed命令,用於顯示目前世界的種子。
1.7.213w36a世界生成演算法發生改變,這意味着使用一個舊版本存檔,原先未載入的區塊將生成不同地形。
1.1318w06a重寫了世界生成系統(未變更地形),並且移除了自訂世界類型。
1.18exp1重寫了世界生成系統。重製了洞穴山地以及地形高度系統。移除了巨大化世界大型生物羣落
exp2重寫了世界生成系統(未變更地形)。
21w41a更換了世界生成過程中所使用的隨機數生成器,導致地形與之前的版本不同。
21w43a再次被完全變更,新生成的世界不與之前快照的一致。
1.18.222w03a數字0的種子不再被遊戲解釋成48。
輸入的種子前後的任何空格現在都會被去掉。
攜帶版Alpha
0.1.0加入了種子。此時僅支援32位元種子用於地形生成。
0.9.0build 1變更了地形生成。
基岩版
1.17.301.17.30.23完全變更了世界生成,屬於實驗性玩法
1.17.401.17.40.20實驗性玩法中再次變更了世界生成。
1.18.01.18.0.20實驗性玩法中的生成變更應用到了預設世界中。
1.18.0.22更換了世界生成過程中所使用的隨機數生成器,導致地形與之前的版本不同。
1.18.0.24地形生成機制再次被完全變更,新生成的世界不與之前搶鮮版的一致。
1.18.301.18.20.21現在可以使用64位元種子建立世界,以同步Java版
遊戲現在支援數字-9至9的種子。

你知道嗎[]

  • 自Java版1.7.2至1.12.2的版本間,透過變更原始碼並將第6個genlayer的值[需要更多資訊]從2變更為0,可以在Java版中得到原主機版的生物羣落生成,除了蘑菇地。
  • Herobrine的最早截圖來自種子478868574082066804,在Alpha v1.0.16_02生成。

官方使用的種子[]

Java版中,下面這些種子在某些時候曾被官方地圖和資源使用過:

  • 演示模式的種子碼可以在完整版中輸入North Carolina(對應數字為-343522682)得到。
  • 主選單全景圖的種子碼如下:
    • Beta 1.8-pre118w22c使用的種子是21519015539683527458091867987493326313[9],需要Beta 1.6.6Beta 1.7間的版本來生成。
    • 1.13使用的種子是1458140401,即18w22a,在18w22a取得。
    • 1.14使用的種子是2802867088795589976,在18w48a取得。
    • 1.15使用的種子是-4404205509303106230,在19w40a取得。
    • 1.16使用的種子是6006096527635909600,在20w13a取得。
    • 1.18使用的種子是2151901553968352745,在21w40a取得。
    • 1.19使用的種子是-1696067516,即thewildupdate,在22w15a取得。
    • 1.20使用的種子是8554477380691140270,在23w14a取得。
  • 原始的預設資源包圖示(pack.png)顯示的種子碼是3257840388504953787,在Alpha v1.2.2生成。[10]此地形也可在Alpha v1.2.0Beta 1.7.3間的版本生成,不過會有細微差別。
  • Skull on Fire這幅的種子碼是-6984854390176336655-1044887956651363087,在Alpha v1.1.2_01或更早的版本生成。[11]

外部連結[]

僅Java版[]

參考[]

語言

Advertisement