ワールド境界(英:World border)は、デフォルトではMinecraftの各ディメンションの端に存在している、プレイヤーなどの通過を妨げることのできる壁である。
外観[]
ワールド境界は、動く斜めの縞のアニメーションのついた壁として表示される。
ワールド境界の色は、ワールド境界の状態によって変化する。ワールド境界のサイズが変化していない通常時は水色で表示されるが、境界が縮小している時には赤色に、拡大している時には緑色に表示される。
ワールド境界の見た目は描画設定の影響を受けるバグが存在しており、最高設定!になっている際に極めて暗く表示されることがある[1]。
大きさ[]
ワールド境界の形状は両底面のない巨大な正四角柱であり、デフォルトではその中心座標は x=0, z=0 、一辺の大きさは5999万9968ブロックである。
コマンドを使用することで境界のサイズと位置を変更できるが、たとえ非整数のサイズと位置を設定されても、ワールド境界はブロック単位で動作する。コマンドによる変更前のデフォルトのサイズは3つのディメンションとも全て同じサイズであるが、カスタマイズしたディメンションではワールド境界のデフォルト位置を自由に設定できる。
効果[]
エンティティに対して[]
ほとんどのエンティティは、弓矢や雪玉などのいくつかの発射物を除いて、ワールド境界を内側から外側へ通過することはできない。外側から内側へは何の問題もなく通過できる。
ドロッパーやディスペンサーの正面を境界に接させた状態で起動すると、アイテムや飛翔体、TNTなどのエンティティを境界の外へ発射することができる。ただしアイテムに関しては、発射された直後の位置で浮いたまま停止してしまう。なおプレイヤーのインベントリからアイテムを境界外へドロップした際は通常通り落下する。
ディスペンサーにスポーンエッグを入れて発射することでMobを境界外へスポーンさせることもできる。この際Mobは通常通り振る舞うが、一度境界の内側に入ると外側へ物理的に通過することはできない。なおクモは境界壁面を上ることができ、エンダーマンは境界を越えてテレポートできる。
プレイヤーは(クリエイティブおよびスペクテイターモードを除き)境界の外へ出ると継続的にダメージを食らう。このダメージの大きさは境界からの距離に依存して大きくなる。また境界外では画面の縁がぼんやりと赤くなり警告がなされる。
プレイヤー自身で境界を内側から外側へ物理的に通過することはできないが、以下の手段によってワールド境界の外側に行くことができる。
- ワールド境界を縮小または移動させ、自分が範囲外に来るようにする。
- ワールド境界に向けてエンダーパールを投げる。
- コーラスフラワーを境界の近くで食べて外側へテレポートする。
- リスポーン地点を境界外の位置に設定した状態で死ぬ。
境界の外ではエンティティはスポーンしない。またプレイヤー以外のエンティティは境界外でもダメージを受けない。
ブロックに対して[]
境界の外側に存在するブロックにはカーソルを当ててもターゲットすることができないため、そのブロックに対して別のブロックを設置したり、あるいはそのブロックのGUIを開いたりすることはできない。ただし境界外にブロックを設置すること自体は可能であり、境界に内側から接しているブロックをターゲットした状態でその面にブロックを設置すればよい。
プレイヤーが操作できない点を除いて、レッドストーン系ブロックを含め大半のブロックは通常通り機能する。TNTの爆発で境界外のブロックを破壊したり、光源ブロックを用いて境界外を照らすことも通常通り可能である。例外的に、落下中のブロックはアイテムとしてドロップし、ピストンやホッパーは機能しない。
液体は境界を越えて通常通り流れることができる。液体は境界外に手動で設置することはできない[2]。ただし、ディスペンサーを用いて液体を境界外に設置することができる。ディスペンサーで溶岩と水を接触させるとその液体の流れが何もないのに遮断されることがあるが、これは本来生成されるはずの丸石などのブロックを設置できないためと思われる。
無効な値を設定時[]
境界のサイズはlevel.dat
を編集することで手動で変更することもできるが、XZ座標3000万の位置に存在するワールド限界の都合上それ以上先へ進むことは通常できない。
- 非正数を指定した場合はワールド全体がワールド境界の外側と見なされるようになる。
- NaN(非数)を指定した場合もワールド全体が境界外と見なされるが、境界外ダメージと画面縁が赤くなる警告は発生しない。
- 無限大に設定した場合は境界がデフォルトの通り出現する。
コマンド[]
- サイズ設定
/worldborder set <sizeInBlocks> [timeInSeconds]
- 境界の一辺の長さを変更する。
sizeInBlocks
には一辺の長さをブロック単位で指定する。また必須ではないがtimeInSeconds
を指定することで、指定の時間(秒)を掛けてサイズを漸時的に変化させることができる。省略した場合はサイズが実行後即座に変化する。デフォルト値は59,999,968であり、ゲームをポーズしても縮小・拡大のアニメーションは継続する。
- 中心設定
/worldborder center <x> <z>
- ワールド境界の中心のXZ座標を変更する。実行地点を基準とした相対座標・ローカル座標も使用可能。デフォルト値は(0, 0)。
- サイズ加減
/worldborder add <sizeInBlocks> [timeInSeconds]
- 境界の一辺の長さに
sizeInBlocks
を加算する。sizeInBlocks
は正数でも負数でも良い。必須ではないがtimeInSeconds
を指定することで、指定の時間(秒)を掛けてサイズを漸時的に変化させることができる。
- ダメージ設定
/worldborder damage buffer <sizeInBlocks>
- ワールド境界からダメージが入るエリアの間に設定する安全地帯の幅を指定する。デフォルトは5ブロック。
/worldborder damage amount <damagePerBlock>
- プレイヤーの受けるダメージの倍率を指定する。プレイヤーが受けるダメージは、安全地帯の端からの距離×この倍率である。デフォルト値は0.2。またダメージの周期は1秒である。
- 警告
/worldborder warning time <timeInSeconds>
- 境界が縮小している際に、あと
time
秒以内に現在の位置が境界外になる場合に画面の縁が赤くなるよう設定する。デフォルトは15秒。描画設定が処理優先の場合は表示されない。
/worldborder warning distance <sizeInBlocks>
- 境界から何ブロック外側へ出た際に画面の縁が赤くなるようにするか。デフォルトは5ブロック。描画設定が処理優先の場合は表示されない。
- サイズ取得
/worldborder get
- 現在のワールド境界のサイズを取得する。
技術的情報[]
ワールドデータ[]
現在のワールド境界のサイズは、level.datファイル上に以下のフォーマットで保存されている。 Java Edition:
- level.dat
- Data
- BorderCenterX: 中心のX座標。
- BorderCenterZ: 中心のZ座標。
- BorderDamagePerBlock: ダメージ倍率。
- BorderSafeZone: ダメージを受けない安全地帯の幅。
- BorderSize: 境界の一辺の長さ。
- BorderSizeLerpTarget: 境界のサイズが漸時的に変化している際に使用される、変化の最終値。
- BorderSizeLerpTime: 境界のサイズが漸時的に変化している際に使用される、変化開始からの経過時間。
- BorderWarningBlocks: 警告が表示されるようになるまでの境界からの距離。
- BorderWarningTime: あと何秒以内に現在の位置が境界外になる場合に警告を表示するか。
- Data
歴史[]
Java Edition | |||||
---|---|---|---|---|---|
1.8 | 2014年4月24日 | DinnerboneがTwitterでRyan Holtzが作った「ぎこちない」ワールド境界のテクスチャのプレビューをツイートした。 | |||
14w17a | カスタマイズ可能なワールド境界が追加された。 | ||||
14w18a | プレイヤーが、ワールド境界の外側のブロックに干渉することができなくなった。 | ||||
14w19a | warning と damage のコマンドが追加された。
| ||||
ワールド境界の一定の距離内に入ると、画面の端が赤くなり、警告が表示されるようになった。 | |||||
ネザーとオーバーワールドのワールド境界の大きさが同じになった。 | |||||
ネザーで移動しても、オーバーワールドで、境界の外側にネザーポータルが生成されることはなくなった。 | |||||
14w20a | コマンドか何かでワールド境界の外側に出ると、徐々に体力が減っていくようになった。自由に飛び回ったり歩いたりすることはできるが、内側から外側へ行くことは出来ない。 | ||||
14w26a | add のコマンドが追加された。 | ||||
14w29a | get のコマンドが追加された。これは、現在の境界の大きさを確認することが出来る。 | ||||
コマンドブロックがワールド境界の外側で動作しなくなった。これがバグなのか意図的なのかは不明である。 | |||||
14w30a | ワールド境界の外側でホッパーが動作しなくなった。 | ||||
14w31a | ワールド境界のサイズ変更の時間パラメータを今より大きくできるようになった。 | ||||
プレイヤーだけがワールドボーダーの外側でダメージを受けるようになった。 | |||||
? | サイズを6000万ブロックまで設定できるようになったが、実際にはより小さい値で制限されているように見られる。 | ||||
1.17 | 20w48a | ワールド境界が垂直方向にプレイヤーに合わせて移動するようになった[3]。 | |||
? | 垂直方向への追従は修正されたが、高度制限外でも依然としてワールド境界が表示されていた。 | ||||
21w13a | ワールド境界のテクスチャの向き各面共通になったため、面の境目で縞がV字に表示されなくなり角の視認性が低下した[4]。 | ||||
21w17a | 境界のサイズのデータ型が単精度浮動小数点数から倍精度浮動小数点数になった[5]。 | ||||
ワールド境界の最大サイズは常に最大に表示される値まで縮小されるようになり、コマンドでその値以上に設定することはできない。 | |||||
1.20 | Pre-release 1 | 外側に出たプレイヤーに与えられるダメージの種類が in_wall から outside_border に変更されるとともに、専用の死亡メッセージ「<プレイヤー>はワールドの外側へと踏み出した」が追加された。 |
問題点[]
「ワールド境界」に関する問題点は、バグトラッカーにて管理されている。問題点の報告はそちらで行ってほしい。
トリビア[]
- ワールド境界がX/Z±29,999,984にある理由は、世界から落下するのを防ぐためにDinnerboneがワールドの端から1チャンク(16ブロック)だけ内側に設置したためである[6]。