I've recently built a creative superflat world with one layer of bedrock for testing redstone contraptions. I'm constantly annoyed of accidentally breaking bedrocks and having to replace it each time. I did some google searches but only found reference to setting gamemode to adventure or anti-griefing in survival.

The baseline is, I want an indestructible floor that I can't accidentally break in creative Minecraft.

  • Version: single player (not server) Minecraft Java 20w10a
  • 1
    You don't really need OS information in a regular commands question. But too much information is always better than not enough information, I guess. Commented Mar 10, 2020 at 13:39
  • OS info removed
    – martian17
    Commented Mar 10, 2020 at 14:43
  • Version info might also be redundant if I wanted to future-proof or past-proof this thread.
    – martian17
    Commented Mar 10, 2020 at 14:54
  • It's not allowed here to edit a question (not "thread", this isn't a regular forum, see tour) in a way that invalidates existing answers or deviates from the original intent. So you can't edit in things like "this needs to work in 1.12". It's also usually not a good idea to have 1.12 commands and 1.13 commands mixed in one question. I always keep my answers with score of 2 or higher updated when the question does not mention a specific version, but if it does (for example many still play 1.12.2), I keep them how they are. TLDR: Versions are important for existing answers, don't change them. Commented Mar 10, 2020 at 16:21
  • Any reason for the single layer as opposed to something more traditional (maybe 1 bedrock, 30 stone, 5 iron blocks or something?). It's nice to have the extra room below if you need to go under your contraption, or for testing TNT machines etc. Commented Mar 12, 2020 at 0:58

3 Answers 3


All blocks can be broken in Creative mode. If you wanted a horizontal border, you could use the world border for that, but even that can be bypassed in Spectator mode.

The best solution is probably to replace the ground at all times. Put this command into a repeating command block:

execute at @a run fill ~-5 0 ~-5 ~5 0 ~5 bedrock replace air

This replaces air with bedrock a certain range around every player at the lowest height level.

The only remaining problem then is that you can still fall through the block when you break it while standing on it. This is probably a bug, I created a report about it: https://bugs.mojang.com/browse/MC-174386

You can work around it using this additional command:

execute as @a at @s if entity @s[y=0,dy=0] run tp @s ~ 1 ~

This teleports you to height y=1 whenever you are at height y=0.

You should only get a feedback message from the first command whenever you break a bedrock block and from the second one whenever you start falling through the block, but if you still want to get rid of this output, you can disable command block feedback in general:

/gamerule commandBlockOutput false

In vanilla* java-based Minecraft there is no way to make bedrock not destructible in creative mode. It is designed that way. You would have to bring this up with the developers why this is so and if they would be willing to make this an option to not have it be destructible.

You might try to combat this with command blocks but this will mitigate the issue at best, not solve it. And even if you would stick a command block to a clock that would replace the ground constantly with bedrock you might end up falling through between clock ticks and the faster you trigger the command or the bigger the space is it is replacing the more your game (or server) performance will take a hit.

*I say vanilla because I am not familiar if any non standard server hosting tools might have a solution but in terms of standard Java Minecraft there is no way, at least not for your version specified.


One way is to hold a sword, while holding a sword, you cannot break any blocks in creative mode.

The best way would be to find a mod that makes stuff indestructible. There are websites that allow you to download mods, and there might be a mod for it.

Another way is to get a repeating command block. then type ' /fill {position #1} {position #2} {block-type} ' and put a lever onto the command block. put the lever into the on position. this should repeatedly place those blocks down, so if you break it, the block should appear again. problem is, is that it won't be 100% instant, but it will appear quickly.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .