Order of command block execution if triggered at the same time?

Solution 1:

This is not a good idea. If you have commands that must be executed in a specific order, separate them with repeaters or comparators so that they execute in a specific order.

If you trigger a lot of command blocks with interfering actions at the same time, they will execute in a specific order, but you can't know what this is in advance, it may change without notice (if the server is restarted for instance), and will almost certainly cause you a lot of headaches.

Solution 2:

In Minecraft 1.9 command blocks get an overhaul.
There will be three modes of command blocks:

  • Impulse: Regular behavior, command gets activated via redstone
  • Repeat: The command in this command block gets activated every tick (superfast clock)
  • Chain: This is the one you're looking for, see below

Command blocks also have a direction now, they can face north, south, east, west, up or down, this is important for the chain command blocks.

When any command block gets activated, it will activate the chain command block that it is pointing into. This means you can build chains out of command blocks, whose commands get activated in the order they are pointing into each other.

Solution 3:

It starts with the lowest z coordinate, then runs them in order of increasing x coordinate, then starts again with the next z coordinate. I do not know how the y coordinate is involved.

Solution 4:

You really don't want to be using redstone dust in your command block contraptions, or in this case, even repeaters. I discuss this further in this answer. There are much better solutions these days, and even better solutions to come in the near future.

So for 1.8, what you want to be using is a 20Hz fill clock. There are 2 great features about fill clocks, plus some other advantages. The first feature is that every command runs every game tick, i.e. 20 times a second. The second feature is that execution is well defined, at least when everything is in the same chunk. If your command blocks are in a single line along the X or Z axis, the command blocks will be executed from low coordinate to high coordinate. One of the other advantages is that fill clocks generally produce less lag than redstone.

But fill clocks are old hat now. The new hotness is command block chaining, which is coming in 1.9, and is available now in snapshots. These are even better than fill clocks because while both run at 20Hz, the new command blocks produce even less lag and command execution is even easier to determine. If you're working with command blocks, you should be using 1.9, even though, at the time of writing, it hasn't been fully released.

Solution 5:

In fact, it is actually the lowest z, then executes that row of x, then goes +z by 1, then executes that row of x and so on... for y-execution, it goes bottom-up, so it starts at the lowest point, then goes to the lowest z point, the executes that row of x. It's actually not that hard, and really compact instead of a line of repeaters running from each command block.