スポーンチャンク(英:Spawn chunks)は、ワールドのスポーン地点周辺にあるチャンクの集まりを指し、通常のチャンクとは異なりメモリから解放されることがない。スポーンチャンクはLegacy Console Editionでは存在しない。Bedrock Editionでは、ティック領域と呼ばれる類似の仕組みが存在する。
振る舞い
通常、描画範囲外の古いチャンクはメモリから解放され、新たなチャンクがメモリに読み込まれる。よって、古いチャンク内に作られたレッドストーンの装置やアイアンゴーレムなどのトラップは機能を停止してしまう。一方、スポーンチャンクはメモリから解放されないので、たとえプレイヤーが付近に居ない場合でも、それらの装置が停止することがなくなる。したがって、/setworldspawn
コマンドを使用して、クロック回路が大量にあるなどでラグの生じやすい場所にワールドのスポーン地点を変更してしまうと、ワールド全体でラグが生じることになる。
他のディメンション
スポーンチャンクはメモリから解放されないが、全てのプレイヤーがオーバーワールドに15秒を越えて居なかった場合、スポーンチャンク内の処理は停止してしまう。しかし、このタイマーはエンティティがオーバーワールドへ出入りをするとリセットされる。例えば、オーバーワールドに設置したディスペンサーから矢を繰り返し発射しネザーポータルを通過させた場合、たとえ全てのプレイヤーがオーバーワールドに居ない場合でも、スポーンチャンク内の処理は継続される。
処理
進行するもの
以下の処理は、スポーンチャンク内であればプレイヤーの位置にかかわらず実行される。
- ブロック
- エンティティ
- ドロップアイテムは落下し、水流で動かされ、溶岩で焼失し、プレイヤーが拾わずホッパーで回収されなければ5分後にデスポーンする。
- 動物や村人などの友好的なMobは、大人へと成長する。
- 真下のブロックが移動または破壊された砂と砂利は落下する。
- 村人は、条件を満たしていれば繁殖する。
- アイアンゴーレムは村の中にスポーンする。
- 着火されたTNTは、落下し爆発する。
- TNTがメモリから解放されたチャンク内に入ると、TNTは固まって爆発せず、そのチャンクが読み込まれるまではメモリから解放されたチャンクのブロックは影響を受けない。
- 装置
進行しないもの
一部の処理は、チャンクの更新範囲に入るまで処理されない。この範囲は、シングルプレイの場合は描画距離によって異なり、マルチプレイの場合はオペレーターによって制御される。
- ブロック
- エンティティ
- プレイヤーから128ブロックを越えて離れた場所にスポーンした敵対的なMobは、即時デスポーンする。
- 友好的はMobは、プレイヤーの周囲240×240ブロックの範囲外には自然にスポーンしない。
- これらのMobのスポーン数の上限は、メモリに読み込まれた友好Mobの数によって制限される。つまり、スポーンチャンクに存在する友好的なMobはすべて制限数にカウントされ、通常はワールド内の他の場所に自然にスポーンするのを防止している。唯一の例外として、友好的なMobが新たに生成されたチャンクの一部として生成される場合はスポーンする。
場所
スポーンチャンクは通常、ワールドのスポーン地点を中心として23×23チャンクの範囲からなっている[要検証]。正確なルールでは、中心が両方の軸に沿ってワールドのスポーン地点から184ブロックまで離れているチャンクが含まれる。[要検証] 稀にワールドのスポーン地点がチャンクの境界に正確に配置される場合があり、その場合はチャンクが24つ読み込まれ、そのうち20個でエンティティがアクティブになる。エンティティは、周囲の5×5チャンクのエリア内のすべてのチャンクで読み込まれ、それがワールドのスポーン地点周辺の19×19チャンクの「effective area(有効エリア)」に制限されている場合にのみアクティブになる。これにより、スポーンチャンクの外側に2チャンク幅の境界線が残る。このエリアではエンティティは処理されないが、レッドストーンやその他のブロックは更新され続ける。これは多くの場合「lazy chunk loading(遅延チャンク読込)」と呼ばれる。
ワールドのスポーン地点を特定するには、いくつかの方法が存在する。
- コンパスは常にスポーン地点を指す。
- ベッドでリスポーン地点が変更されていない場合には、以下の方法も可能である。
- コマンドで、
/gamerule spawnRadius 0
の後に/kill
を実行する。 - プレイヤー以外のエンティティがジ・エンドの出口ポータルに入ると、スポーン地点に出現する。このため、投げ込まれたアイテムがオーバーワールドでの地点の目印となる。プレイヤーは通常通りスポーンするため、上記のことを死なずに行うことが可能である。
- ワールドのスポーン地点を
/setworldspawn
を使うことで新たに設定できる。座標を入力しなければ、プレイヤーが現在居るブロックの北西の角がワールドのスポーン地点になる。ただし、これだけでは新たなスポーンチャンクは読み込まれず、単にメモリから解放されるのを防ぐだけである。スポーンチャンクの範囲に近づいたり、サーバーを再起動することで、スポーンチャンクが再読込される。これらのチャンクは、スポーン地点が再度変更されるまで読み込まれ続ける。 - Modや外部ツール(NBTExplorerやMCEditなど)を用いてワールドのスポーン地点を見つけたり、設定したりすることもできる。
ティック領域と /forceload
の比較
スポーンチャンクの代わりに、Bedrock Editionではティック領域と呼ばれる同様の目的を果たすゲームの仕組みが存在する。また、同様の目的を果たす /forceload
コマンドも存在する[Java Edition限定]。しかし、これらにはいくつかの違いがある。以下の表は、それらの違いを比較したものである。
特性 | スポーンチャンク | ティック領域 | 強制読み込みされたチャンク |
---|---|---|---|
領域の数 | 1 | 10 | 256 |
位置 | ワールドのスポーン地点を中心とする | プレイヤーの /tickingarea により指定される |
プレイヤーの /forceload により指定される
|
大きさ | 最大17×17(289チャンク) | プレイヤーが1から100チャンクの間で指定する | プレイヤーが1から256チャンクの間で指定する |
利用可能なディメンション | オーバーワールド | どこでも | どこでも |
作物の生長 | しない | する | しない |
葉の崩壊 | しない | する | しない |
草や菌糸の広がり | しない | する | しない |
氷の生成・溶解 | しない | する | しない |
プレイヤーから128ブロック離れた場所に敵対的なMobがスポーン | しない | する | する[要検証] |
プレイヤーから240ブロック離れた場所に友好的なMobがスポーン | しない | する | する[要検証] |
爆発が付近のチャンクを破壊 | しない | する | する |
デモ版 | |||||||
---|---|---|---|---|---|---|---|
開発 |
| ||||||
技術的情報 |
| ||||||
マルチプレイ | |||||||
ゲームのカスタマイズ |