更新日:
/fill は、指定した範囲をブロックで埋めるコマンドです。整地、壁作り、床張り、検証用ワールドの準備に使えます。ただし、範囲指定を間違えると建築物を一気に壊すため、最初は小さい範囲で試すべきです。
範囲のブロック数を計算する
/fill の両端はどちらも範囲に含まれます。例えば X が0〜4、Y が64〜66、Z が0〜2なら (4-0+1)×(66-64+1)×(2-0+1)=45 ブロックです。最初にこのような小範囲で練習すると、予想より大きい建築物を消してしまうリスクを下げられます。
さらに replace は既存ブロックを置き換え、destroy は破壊扱いになり、keep は空気にのみ配置します。大きい領域で replace を使う前にワールドをバックアップし、位置確認用の目立つブロックで小さなテストを行ってください。
基本形
/fill <開始座標> <終了座標> <ブロックID>
自分の周囲に小さな石の床を作る例です。
/fill ~-2 ~-1 ~-2 ~2 ~-1 ~2 minecraft:stone
これは、プレイヤーの1ブロック下に5×5の石床を作るような指定です。最初はこのくらい小さい範囲で試すのが安全です。
replace、destroy、keepの違い
replace:指定範囲を置き換える基本的な使い方destroy:既存ブロックを破壊した扱いにするkeep:空気の場所だけを埋める
建築を壊したくない場合は、いきなり replace で大範囲を実行しない方がいいです。まずガラスや羊毛など分かりやすいブロックで小範囲を試すと、座標の向きが確認できます。
壁を作る例
/fill ~5 ~ ~-5 ~5 ~4 ~5 minecraft:stone_bricks
X方向に5ブロック離れた位置へ、高さ5、長さ11の石レンガの壁を作る例です。座標の片方だけを固定すると、壁や床の形を作りやすくなります。
空気に置き換えて削る例
/fill ~-3 ~ ~-3 ~3 ~3 ~3 minecraft:air
小部屋をくり抜くような使い方です。範囲が広いと危険なので、実行前に座標を必ず確認してください。
生成ツールを使う理由
/fill は座標を6つ扱うため、数字の順番を間違えやすいです。開始座標、終了座標、ブロックID、置き換えモードをフォームで分けて入力すると、手打ちより確認しやすくなります。
一部のブロックだけ置きかえる
/fill ~-5 ~-1 ~-5 ~5 ~-1 ~5 minecraft:grass_block replace minecraft:dirt
replace の後ろにブロックを書くと、範囲の中でそのブロックだけが置きかわります。この例では、足元の土だけを草ブロックにし、ほかのブロックはそのまま残します。
hollow と outline
| 指定 | 外側 | 中 |
|---|---|---|
hollow | 指定したブロック | 空気にする(中にあったものは消える) |
outline | 指定したブロック | そのまま残す |
部屋を作りたいときは hollow、建物の外側だけを囲いたいときは outline が向いています。
一度に埋められる量
/fill で一度に変えられるのは32,768ブロック(32×32×32)までです。これを超えるとエラーになるので、広い範囲は何回かに分けて実行します。広い範囲を何度も変えるときは、先にワールドのバックアップを取っておくと安心です。
Java版では、この上限はゲームルール max_block_modifications(初期値32768)で決まっていて、/clone や /fillbiome にも効きます。1.20.3〜1.21.10では commandModificationBlockLimit という名前です。テスト用ワールドなら /gamerule max_block_modifications 100000 のように上げられますが、大きすぎる範囲はサーバーがしばらく止まる原因になります。統合版にはこのルールがないため、範囲を分けて実行します。
うまくいかないときの確認ポイント
- 「ブロックが多すぎます」と出る:上の上限を超えています。範囲を小さく分けます。
- 「その位置は読み込まれていません」と出る:範囲の一部が遠すぎます。近くに移動してから実行します。
- 思った場所と違う向きに埋まった:
~は東西南北で決まります。F3画面の向き(Facing)を見て、X・Zのどちらが前後かを確かめます。 - 水や溶岩が流れ出した:
airで削ると、周りの水が流れ込むことがあります。先に水をブロックでせき止めます。
よくある質問
fillで消したブロックは元に戻せますか?
コマンドで元に戻す機能はありません。大きく変える前にバックアップを取るか、/clone で別の場所に写しておきます。
統合版でも同じように使えますか?
基本の書き方と上限は同じです。ブロックの状態(向きなど)の書き方はJava版と違うので、入力中の候補に合わせて書きます。