Minecraftのシード値の仕組み:数字からワールド全体まで
すべての Minecraft のワールドは、シード値という1つの数字から始まります。ゲームはこの数字をワールドジェネレーターに入力し、地形、バイオーム、洞窟、構造物を生み出します。同じシード値をもう一度使えば、同じワールドになります。
このガイドでは、シード値とは何か、テキストのシード値がどう数字になるのか、ゲームのバージョンが重要な理由、Java版と統合版でのシード値の扱いを説明します。また、シードマップがこの仕組みを使って、探索する前にワールドを表示する方法も紹介します。
シード値とは
シード値は、ワールドを作る乱数生成器の初期値です。Minecraft の生成は本当のランダムではありません。疑似乱数であり、同じ初期値からは、毎回同じ数列が出てきます。
Java Edition では、シード値は 64 ビットの符号付き整数です。つまり、-9,223,372,036,854,775,808 から 9,223,372,036,854,775,807 までの任意の整数になります。可能なシード値は約 18 京あり、誰も探索しきれないほど膨大です。
シード値はワールドを保存しているわけではありません。単なる鍵です。ゲームは、シード値とチャンクの座標から、必要に応じて各チャンクを生成します。保存したワールドが数ギガバイトになることもあるのに、シード値が短い数字1つで共有できるのはそのためです。
同じシード値、同じワールド
同じエディション、同じバージョンで同じシード値を入力すれば、次のものが同じになります:
- 地形の形、山、川、海
- バイオームの配置
- 洞窟システムと鉱石の位置
- 村、要塞、神殿などの構造物の位置
- ワールドのスポーン地点付近
シード値だけでは決まらないものもあります。モブのスポーン、天候、プレイヤーが建てたり壊したりしたものは、プレイ中の出来事によって変わります。
これがシードマップを可能にしている仕組みです。シードマップはゲームと同じ生成ルールを実行し、結果を描画します。SeedMapView のシードマップにシード値を入力すれば、まだ訪れていない構造物も含めて、ワールドを上から見渡せます。
テキストのシード値が数字になる仕組み
ワールドを作成するとき、シード値の欄には数字の代わりに言葉を入力することもできます。ゲームは、まずそのテキストを数字に変換する必要があります。
- テキストが有効な整数なら、Java版はそれをそのままシード値として使います。
- それ以外のテキストなら、Java版は Java の String hashCode 関数に通します。これでテキストが 32 ビットの数字になります。
- 欄を空にした場合、ゲームはランダムなシード値を選びます。
hashCode の結果は 32 ビットなので、テキストのシード値は、可能な 18 京のワールドのうち約 4.3 億にしか到達できません。異なる2つの言葉が同じ数字、同じワールドになることもあります。
テキストからシード値への変換を使うと、ある言葉がどの数字になるかが分かります。シードマップでテキストのシード値を読み込みたいときに便利です。シードマップには数値が必要です。
ゲームのバージョンが重要な理由
シード値はレシピの半分にすぎません。もう半分は生成コードで、アップデートごとに変わります。同じシード値でも、バージョンが違えば、まったく違うワールドになることがあります。
| アップデート | 変更点 |
|---|---|
| 1.13 | 新しい海の生成と海の構造物 |
| 1.16 | 新しいネザーのバイオームと砦 |
| 1.18 | 地形の全面刷新:より高いワールド、新しい洞窟、新しいバイオームシステム |
| 1.19 | ディープダークと古代都市 |
| 1.20 | サクラの林と古道の遺跡 |
| 1.21 | 試練の間 |
ワールドをアップデートしても、変わるのはアップデート後に生成されたチャンクだけです。探索済みの場所は古い地形のままです。シードマップでは、ワールドを作成したバージョン、または気になるチャンクのバージョンを必ず選んでください。
Java版と統合版のシード値
1.18 以降、Java版と統合版は一致する地形とバイオームの生成を使っています。両方で同じ数値のシード値を入力すれば、陸地、海、バイオームがほぼ一致します。
構造物は話が別です。各エディションは独自の構造物配置ルールを使うため、同じシード値でも、村、神殿などの構造物は通常、違う場所に現れます。シードマップでエディションの選択が必要なのはそのためです。
統合版は以前は 32 ビットのシード値を使っていましたが、現在のバージョンでは Java版と同じ 64 ビットのシード値を受け付けます。テキストのシード値の場合は、先に言葉を数字に変換すると、両方のエディションで同じワールドになるのが最も確実です。詳しくはJava版と統合版のシード値をお読みください。
シード値の探し方と選び方
すでにあるワールドのシード値を調べるには:
- Java版:チャットに /seed と入力します。シングルプレイでは使え、サーバーでも権限があれば使えます。
- 統合版:ワールドの設定を開きます。シード値は「ゲーム」ページに表示されます。
詳しい手順はシード値の調べ方にあります。
スポーン地点に村がある、近くにキノコ島があるなど、特定の特徴を持つ新しいワールドが欲しいなら、おすすめシードのリストを見るか、シード検索で条件に合うシード値を探しましょう。
シード値の誤解とよくある質問
シード値は多くの混乱を招きます。よくある誤解を紹介します:
- 「シード値はワールド全体を保存している」これは違います。シード値は初期値にすぎません。ゲームは、チャンクが読み込まれるたびにそこからワールドを作ります。
- 「すべてのシード値は唯一無二」数値なら、そうです。各シード値は固有のワールドを生みます。テキストのシード値では、異なる2つの言葉が同じ数字にハッシュされ、同じワールドになることがあります。
- 「良いシード値はどのバージョンでも通用する」必ずしもそうではありません。1.16 の有名なシード値は、地形ジェネレーターが変わったため、1.18 以降では別物に見えることがあります。
- 「負のシード値は劣っている」そんなことはありません。負のシード値も正のシード値と同じように有効で、同じように多様です。
- 「シード値がモブのスポーンやドロップを決める」ほとんど違います。モブのスポーンやドロップは、ワールドのシード値ではなく、プレイ中のランダムな出来事で決まります。
オンラインで見たシード値と自分のワールドが違うのはなぜか、と疑問に思うプレイヤーもいます。よくある理由は、ゲームのバージョンが違う、エディションが違う、またはテキストのシード値の綴りや大文字小文字が違うことです。テキストのシード値は大文字と小文字を区別するので、「Minecraft」と「minecraft」は別のワールドになります。
シード値を共有するときは、必ずエディションとバージョンも添えましょう。そうすれば、誰でもまったく同じワールドを読み込んだり、シードマップで見たりできます。シード値をバージョンと一緒にメモしておくと、あとで同じワールドをやり直したいときにも役立ちます。JavaとBedrockで構造物が違う理由を知りたいなら、Java版と統合版のシード値をお読みください。
よくある質問
同じシード値なら同じワールドになりますか?
はい、同じエディションと同じゲームバージョンを使う限りは同じです。バージョンを変えると、地形や構造物が変わることがあります。
Minecraftのシード値はいくつありますか?
Java Edition のシード値は 64 ビットの数字なので、可能なシード値は約 18 京あります。テキストのシード値は、そのうち約 4.3 億にしか到達できません。
シード値に言葉を入力するとどうなりますか?
Java版は String hashCode 関数を使ってテキストを数字に変換します。その数字が本当のシード値です。
Java版と統合版のシード値は一致しますか?
1.18 以降、同じ数値のシード値なら、両エディションでとてもよく似た地形とバイオームになります。構造物の配置は異なります。
既存のワールドのシード値を変更できますか?
直接はできません。シード値はワールドの作成時に固定されます。別のシード値で新しいワールドを作ることはできます。