マイクラの/fillコマンドは、指定した範囲にブロックをしきつめるコマンドです。広い土地を一度に整地したり、ブロックを置き換えたりするときに使えます。Java版・統合版どちらでも使用可能。くわしい使い方や入力例を解説します。




/fillコマンドの基本構文

/fill <from> <to> <block>

from ブロックをしきつめる範囲の始点の座標を指定します。チルダやキャレット表記も使えます。
to ブロックをしきつめる範囲の終点の座標を指定します。
block しきつめるブロックの種類をブロックIDで指定します。

たとえば、(x,y,z)=(100,64,115)から(x,y,z)=(109,64,124)の範囲にオークの板材をしきつめたいときは、以下のように入力します。

/fill 100 64 115 109 64 124 oak_planks

しきつめるブロックを空気(air)にすれば、もともとあった土や石を一瞬でなくしてしまうことができます。広範囲を整地するときに非常に便利です。

nishi

土地を平らにしたあと地表に草ブロック(grass)をしきつめれば、見た目もとてもキレイに仕上がります。




/fillコマンドでのブロックのおきかえ方の指定

/fillコマンドは、ブロックIDのあとに「destroy」「hollow」「keep」「outline」「replace」のいずれかを入力すると、ブロックのおきかえ方を指定できます。

/fill <from> <to> <block> [destroy|hollow|keep|outline|replace]

それぞれどのような形でブロックをおきかえることができるのか、実際のコマンド実行結果を以下で紹介します。

destroy – ブロックを破壊しておきかえる

「destroy」を指定すると、範囲内にもともとあったブロックがツルハシやシャベルで採掘されたように破壊されてから、指定したブロックでおきかえられます。もともとあったブロックをアイテム化しつつ整地したいときに便利です。

上の画像では、現在地を始点とする10×10×10の範囲が空気ブロックで満たされ、もともとあった土や鉱石は破壊されてアイテムとしてドロップしています。これは、次のコマンドの実行結果です。

/fill ~ ~ ~ ~9 ~9 ~9 air destroy

ある範囲で鉱石がどれだけ手に入るか検証するときにも使えます。

hollow – 指定したブロックで空洞をつくる

「hollow」を指定すると、範囲の外周だけがブロックでおきかえられ、中が空気ブロックで満たされます。中身が空の箱ができあがるので、そのまま家として使うこともできます。

上の画像は、次のコマンドの実行結果です。現在地を始点とする10×10×10の範囲の外周だけが石ブロックでみたされ、中身が空気ブロックでおきかえられます。

/fill ~ ~ ~ ~9 ~9 ~9 stone hollow

keep – 空気ブロックだけをおきかえる

「keep」を指定すると、範囲内の空気ブロックだけがおきかえられます。構造物を砂や砂利で埋めたり、構造物の中を水で満たしたいときなどに使えます。

上の画像は、次のコマンドの実行結果です。現在地を始点とする10×10×10の範囲にある空気ブロックが、金ブロックでおきかえられます。

/fill ~ ~ ~ ~9 ~9 ~9 gold_block keep

outline – 外周だけをおきかえる

「outline」を指定すると、範囲の外周だけがおきかえられます。中身はそのままなので、ワールドを区切ったような形になります。

上の画像は、次のコマンドの実行結果です。現在地を始点とする10×10×10の範囲の外周だけが、シラカバの板材でおきかえられます。

/fill ~ ~ ~ ~9 ~9 ~9 birch_planks outline

replace – ブロックを入れ替える

「replace」に続けてブロックIDを入力すると、範囲内のそのブロックだけをおきかえることができます。オークの板材で作ったところをシラカバの板材に変更する、ガラスを色付きガラスに変えるというときに便利です。構文は以下のようになっています。

/fill <from> <to> <block> replace <filter>

<filter>で入力したブロックが、<block>で入力したブロックにおきかえられます。たとえば、現在地を始点とする11×11×11の範囲にあるブロックのうち、石(stone)だけをダイヤモンドブロック(diamond_block)におきかえるときは、次のコマンドを実行します。

/fill ~ ~ ~ ~10 ~10 ~10 diamond_block replace stone

nishi

コマンド実行後に「◯個のブロックで満たしました」といった表示が出るので、ある範囲内で特定のブロックの個数を調べるときにも使えます。

「replace」だけ入力するとき(replaceよりあとを入力しないとき)は、範囲内すべてのブロックが指定したブロックで上書きされます。何も指定しないときと同じです。

ブロックステートやデータタグを使った入力例

/fillコマンドでおきかえるブロックは、ブロックステート(ブロックの状態)で細かいところまで指定できます。コマンドの入力は長くなりますが、表示される入力候補から選べば難しくはありません。また、Java版ではデータタグも使用可能です。ブロックステートは[]で、データタグは{}で囲んで、ブロックIDのあとに記入します。

上付きのハーフブロックをしきつめる

上付きのハーフブロックを/fillコマンドで設置するときは、以下のように上付きであることを指定します。

  • Java版
  • 統合版
  • /fill ~ ~ ~ ~9 ~ ~9 oak_slab[type=top]

  • /fill ~ ~ ~ ~9 ~ ~9 wooden_slab[“minecraft:vertical_half”=”top”]

なぐっただけで着火するTNTをしきつめる

素手でなぐっただけで着火するTNTをしきつめるには、以下のコマンドを実行します。

  • Java版
  • 統合版
  • /fill ~ ~ ~ ~9 ~ ~9 tnt[unstable=true]

  • /fill ~ ~ ~ ~9 ~ ~9 tnt[“explode_bit”=true]

nishi

着火状態のTNTは、/summonで召喚できます。/fillでおいた大量のTNTに/summonで召喚したTNTで着火すると即座に大爆発をおこせますが、やりすぎるとマイクラがかたまります。

東向きの階段だけ逆さ階段におきかえる

東向きの階段だけを逆さ階段に変えたいときは、以下のようなコマンドを実行します。

  • Java版
  • 統合版
  • /fill ~ ~ ~ ~19 ~9 ~19 oak_stairs[facing=east,half=top] replace oak_stairs[facing=east]

  • /fill ~ ~ ~ ~19 ~9 ~19 oak_stairs[“weirdo_direction”=0,”upside_down_bit”=true] replace oak_stairs[“weirdo_direction”=0]

特定のコマンドを含むコマンドブロックだけおきかえる

Java版では、データタグを使ってブロックを指定することもできます。ただし、入力候補には出てこないので上級者向けです。

たとえば西向きかつ「summon zombie ~ ~1 ~」が入力されたコマンドブロックだけを、東向きで「summon skeleton ~ ~1 ~」が入力されたコマンドブロックにおきかえるときは、以下のコマンドを実行します。

/fill ~ ~ ~ ~19 ~9 ~19 command_block[facing=east]{Command:”summon skeleton ~ ~ ~”} replace command_block[facing=west]{Command:”summon zombie ~ ~ ~”}

/fillコマンドの上限を変更する

/fillコマンドには、2つの限界があります。それは個数の限界と、距離の限界です。1回のコマンドでおけるのは最大で32768個まで。ブロックをおく場所は、読み込まれている範囲内でなければいけません。これらの限界をこえると、以下のようなエラーが表示されます。

  • 世界の範囲外にブロックを設置することはできません(統合版)
  • その座標は読み込まれていません(Java版)
  • 指定した領域にあるブロックが多すぎます

このエラーを回避する方法を紹介します。

/gameruleで上限の32768個を変更できる(Java版限定)

デフォルトでは、32768個が一度に置換できる上限です。それ以上のブロックをおこうとすると、指定した領域にあるブロックが多すぎます。と表示され、コマンドが実行されません。

しかしJava版では、バージョン1.19.4から/gameruleコマンドで個数の上限が変更できるようになっており、自分の好きな個数を指定できます。

たとえば、上限をデフォルトの32768から1000000に変更したいときは、以下のコマンドを実行します。

/gamerule commandModificationBlockLimit 1000000

ただし、あまりに大量のブロックを置換するとPCの性能によってはマイクラがかたまったり、処理にかなり時間がかかったりするので注意が必要です。また、統合版ではこのコマンドは使えません。

演算距離や描画距離を長くして世界の範囲をのばす

/fillコマンドでブロックをおける距離は「描画距離」や「演算距離」の設定に影響をうけるため、読み込まれる範囲をひろげれば、そのぶん遠くまでブロックを設置することができます。世界の範囲外に・・その座標は・・と表示されてしまうときは、設定を変更してみましょう。

Java版は、設定→ビデオ設定で変更できます。

統合版も描画距離はビデオ設定で変更できますが、演算距離はゲーム実行中に変更できません。いったん終了して、ワールドの選択画面からゲーム設定にはいると変更できます。

以上、マイクラの/fillコマンドの使い方と、入力例の紹介でした。指定した範囲を好きなブロックで敷き詰めることができるので、広い土地を一瞬で整地したり(空気ブロックを敷き詰めればOK)、家の原型となる壁・床・天井をカンタンに作ったりすることができます。特に巨大建築には欠かせないコマンドです。ぜひこの記事を参考にして、いろいろと試してみてください。




その他のマイクラのコマンドについては以下のページでまとめて紹介しています。