【マイクラ1.19】タイトル画面に使われているワールドのシード値が「thewildupdate」だったという話。
2022/06/24
バージョン 1.19のタイトル画面に使われているワールドのシード値が発見されました。
今回もまた「Minecraft@Home」のメンバーが独自の手法によりシード値を割り出したようです。
バージョン 1.19にアップデートされて変わったものと言えば何でしょう?
地下バイーム? ゲームの難易度? スライムをペロリと食べてしまうカエルと呼ばれる謎の生き物?
確かにそれらも変わったかもしれません。
しかし、誰もが目にする最も大きく変わった部分と言えば何でしょう?
そう、タイトル画面ですね。
タイトル画面と言われれば、そう、皆さんご存じ「Minecraft@Home」ですね。
Minecraft@Homeというのは、前身となるブログの「まいんくらふとにっき」でも何度か紹介しましたが、各バージョンのタイトル画面に使われているワールドや、へロブラインが写り込んだ画像のワールドを発見しているチームです。
そのチームが今回、バージョン 1.19のタイトル画面に使われているワールドのシード値を発見しました。
バージョン 1.19、もとい「ワイルドアップデート」のタイトル画面に変わったのは2022年4月13日、バージョン 1.19のテストバージョンであるスナップショット 22w15aからでした。
タイトル画面が変更されるやいなや、Minecraft@Homeチームは即座にワールドのシード値を探しにかかったようです。
ワールドのシード値を探す方法はチーム内で既に確立されているようで、まずマインクラフトのゲームファイルからタイトル画面を構成する6枚の画像を抽出し、この画像を参考にして同じ景色を実際のブロックで構成し、構成した景色をもとにワールドを探しだすのです。
チームは手始めに空に浮かぶ雲のパターンを使用して、タイトル画面の大まかな座標を絞り込もうとしました。
しかし雲のパターンを使用しての絞り込みは思うようにいかず、別の方法で絞り込むことにします。
今回のタイトル画面で最も理想的となる座標の絞り込み方は、スイレンの葉が置かれている位置を使用するというものでしたが、この方法に関してはまだ効率的に調べる手段が確立されていません。
チームに残された手段はただ1つでした。
効率は捨てて、「総当たり」で調べることです。
……しかし、「スイレンの葉ブルートフォース」は実行に移されることなく、作業は全て止まってしまいました。
それからしばらくして、バージョン 1.19がリリースされた翌日の(現地時間で)6月8日、チームの1人である「アンドリュー(Andrew)」がタイトル画面のシード値を発見し、皆を驚かせました。
興味深いことに、彼がシード値を発見した方法は実行に移されることのなかった「スイレンの葉ブルートフォース」だったのです。
にもかかわらず、彼が作成したプログラムではこの「スイレンの葉ブルートフォース」を実行するのに1秒もかかりませんでした。
何故これほどまでに時間を短縮できたのでしょうか。
答えは驚くくらいに単純なものでした。
アンドリューは今回のワールドのシード値について、いくつかの仮説を立てて、その仮説にのっとって「スイレンの葉ブルートフォース」を行いました。
そのうちの1つが見事に当たっていたのです。
その仮説というのが、「シード値はランダムナンバーではない」というものでした。
バージョン 1.19のタイトル画面に使われているワールドはランダムなシード値で作成されたものではなく、特定の文字列によって作成されたワールドだったのです。
ワールド作成時のシード値の欄に文字列を入力すると、マインクラフト側の技術的な理由により、ランダムに生成されたシード値よりも短い数値に変換します。
前提として「特定の文字列で作成されたワールド」とすることで、通常のランダムシードよりもはるかに少ない数のワールドを総当たりできたというわけです。
結果的にこの仮説が当たり、タイトル画面のワールドが発見された、というお話でした。
以下のページがこのお話の全てとなります。
そして、皆さんが気になっているであろう、バージョン 1.19のタイトル画面に使われているワールドのシード値についてですが、その文字列は「thewildupdate」です。
シード値:-1696067516
シード値(文字列):thewildupdate
バージョン:Java版スナップショット 22w15a
座標:X=3820.872 Y=67.868 Z=553.455
……冗談のようですが、この文字列をシード値の欄に打ち込むと、本当にタイトル画面のワールドが作成されます。
バージョン 1.19の開発時に、タイトル画面に使うワールドはアップデート名の「thewildupdate」で作成するか、と考えたスタッフがいたという事実が面白いですよね。
そして、灯台下暗しと言いますか、案外答えはすぐ近くに隠れていたわけです。
次回からはまず総当たりをする前に、アップデート名でワールドを作成することになりそうですね。
地下バイーム? ゲームの難易度? スライムをペロリと食べてしまうカエルと呼ばれる謎の生き物?
確かにそれらも変わったかもしれません。
しかし、誰もが目にする最も大きく変わった部分と言えば何でしょう?
そう、タイトル画面ですね。
タイトル画面と言われれば、そう、皆さんご存じ「Minecraft@Home」ですね。
Minecraft@Homeというのは、前身となるブログの「まいんくらふとにっき」でも何度か紹介しましたが、各バージョンのタイトル画面に使われているワールドや、へロブラインが写り込んだ画像のワールドを発見しているチームです。
そのチームが今回、バージョン 1.19のタイトル画面に使われているワールドのシード値を発見しました。

バージョン 1.19、もとい「ワイルドアップデート」のタイトル画面に変わったのは2022年4月13日、バージョン 1.19のテストバージョンであるスナップショット 22w15aからでした。
タイトル画面が変更されるやいなや、Minecraft@Homeチームは即座にワールドのシード値を探しにかかったようです。

ワールドのシード値を探す方法はチーム内で既に確立されているようで、まずマインクラフトのゲームファイルからタイトル画面を構成する6枚の画像を抽出し、この画像を参考にして同じ景色を実際のブロックで構成し、構成した景色をもとにワールドを探しだすのです。
チームは手始めに空に浮かぶ雲のパターンを使用して、タイトル画面の大まかな座標を絞り込もうとしました。
しかし雲のパターンを使用しての絞り込みは思うようにいかず、別の方法で絞り込むことにします。

今回のタイトル画面で最も理想的となる座標の絞り込み方は、スイレンの葉が置かれている位置を使用するというものでしたが、この方法に関してはまだ効率的に調べる手段が確立されていません。
チームに残された手段はただ1つでした。
効率は捨てて、「総当たり」で調べることです。
……しかし、「スイレンの葉ブルートフォース」は実行に移されることなく、作業は全て止まってしまいました。

それからしばらくして、バージョン 1.19がリリースされた翌日の(現地時間で)6月8日、チームの1人である「アンドリュー(Andrew)」がタイトル画面のシード値を発見し、皆を驚かせました。
興味深いことに、彼がシード値を発見した方法は実行に移されることのなかった「スイレンの葉ブルートフォース」だったのです。
にもかかわらず、彼が作成したプログラムではこの「スイレンの葉ブルートフォース」を実行するのに1秒もかかりませんでした。
何故これほどまでに時間を短縮できたのでしょうか。
答えは驚くくらいに単純なものでした。
アンドリューは今回のワールドのシード値について、いくつかの仮説を立てて、その仮説にのっとって「スイレンの葉ブルートフォース」を行いました。
そのうちの1つが見事に当たっていたのです。
その仮説というのが、「シード値はランダムナンバーではない」というものでした。

バージョン 1.19のタイトル画面に使われているワールドはランダムなシード値で作成されたものではなく、特定の文字列によって作成されたワールドだったのです。
ワールド作成時のシード値の欄に文字列を入力すると、マインクラフト側の技術的な理由により、ランダムに生成されたシード値よりも短い数値に変換します。
前提として「特定の文字列で作成されたワールド」とすることで、通常のランダムシードよりもはるかに少ない数のワールドを総当たりできたというわけです。
結果的にこの仮説が当たり、タイトル画面のワールドが発見された、というお話でした。
以下のページがこのお話の全てとなります。
1.19 Panorama - Minecraft@Home
The 1.19 Minecraft menu panorama.
シード値:-1696067516
シード値(文字列):thewildupdate
バージョン:Java版スナップショット 22w15a
座標:X=3820.872 Y=67.868 Z=553.455

……冗談のようですが、この文字列をシード値の欄に打ち込むと、本当にタイトル画面のワールドが作成されます。
バージョン 1.19の開発時に、タイトル画面に使うワールドはアップデート名の「thewildupdate」で作成するか、と考えたスタッフがいたという事実が面白いですよね。
そして、灯台下暗しと言いますか、案外答えはすぐ近くに隠れていたわけです。
次回からはまず総当たりをする前に、アップデート名でワールドを作成することになりそうですね。