小屋創作

日誌2020-10-15 17:41

Minecraft 種子碼還原 (HololiveEN Minecraft Server)

作者:evanlin96069

解釋一下我昨天找到Hololive EN Minecraft 伺服器種子碼的方法好了

首先是種子碼
種子碼是一個亂數種子
用同樣的種子碼生成出來的兩個世界幾乎都會一模一樣
Minecraft種子碼有64bits (2^64種可能性)

要搜尋全部2^64種組合幾乎是不可能的
就算你有很好的電腦也會花上很長一段時間

以往的方法是用很多slime chunk的座標去搜尋

後來的新方法是用終界黑曜石柱的位置和高度去排除掉一定數量的種子碼
然後再用六個左右的遺跡座標去找
像是ScicraftSeedReverser就是用這個方法

去年PewDiePie生存的種子碼應該就是用很多遺跡的座標去找的
但是這兩種方法都需要花很多小時進行運算
而且需要輸入不少資料
要從Youtube上的影片找出所需的資料十分困難

目前的新方法是用地牢(Dungeon)去找種子碼
生成地牢用的是Structure Seed
和World Seed不同只有2^48種可能性
每8個區塊(這裡用的區塊和一般說的Chunk有點不太一樣)會有一個Structure Seed
遊戲會在每個區塊裡嘗試生成地牢
遊戲會在區塊裡隨機選一個x z 座標(0~15)
然後在0~255之間選一個y座標(高度)
然後決定要地牢的兩邊長各要是7還是9
最後每一個地板有1/4的機率會是鵝卵石(否則會是長青苔的鵝卵石)

但地牢不是在每個區塊都會生成
首先生成的地牢的天花板和地板的位置原本要都是實體方塊
然後和生怪箱高度一樣的那一圈邊緣要有1~5隔空氣方塊
(確保地牢會生成在洞穴裡而不會被完全埋住)

問題是我們不知道哪個區塊會成功生成地牢
所以我們就一一假設8個區塊裡哪一個會生成地牢
現在要搜尋的總數變為8*2^48
雖然比2^64好 但仍然太多了

幸好Java Random並不是真正的隨機而是偽隨機
我們可以透過地牢的y座標算出48bits裡的前8bits
剩下2^40組直接使用暴力解就行了

得到48bits的Structure Seed後
同樣是因為Java Random的性質
我們可以計算出完整64bits的World Seed(通常最多也只會算出兩組解)

整個過程只需要一個地牢的資料和幾分鐘的運算就行了
相較於以往的方法
這個方法好非常多
向是前陣子X's adventures的種子碼就是這樣找到的

以上資訊來自Matthew Bolan的影片
他還有3部關於裡面詳細數學運算的影片
雖然我都看完了不過沒有很懂


我用的是KaptainWutax寫的Dungeon Cracker
(KaptainWutax和他的朋友們就是找到pack.png種子碼的那群人)
(如果你的Dungeon Cracker 像我依樣不知道要怎麼build
可以用這個來代替)
(如果你會寫Java想自己做一個類似的程式 這裡有他們寫的library (Neil做的使用教學))


首先從Gura在10/11的連動直播中出現的地牢還原
從她在2:01:46時在地牢附近開啟的F3畫面推出生怪箱的座標
(其實如果她沒開也找的到座標 詳細請看這篇)

然後在Dungeon Cracker裡輸入生怪箱的座標和地牢地板的資料(鵝卵石,青苔,未知)
只要幾分鐘World Seed就跑出來啦 [3971198378293864095]

我用的那個地牢
她們蓋家的地方


12

14

LINE 分享

相關創作

【CTM地圖介紹】Xiphias ── 物品合成配方大風吹

【CTM地圖介紹】Seasonal Skies ── 季節更迭

【CTM地圖介紹】Scoured Sea ── 小巧雅致的開放世界

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】