Breaking



Breaking, digging, punching, or mining is one of the most fundamental activities in Minecraft, performed (by default) by holding the left mouse button while the cursor is over a block. Breaking is used to create passages and tunnels, to clear away unwanted blocks, and is also the primary way of acquiring blocks for future placement or crafting.

Basics of breaking
Breaking is accomplished simply by holding while the cursor is over a block. If the player is within a range of about 4 meters of the target, the player will begin swinging their hand, making a repetitive "thump" noise as the player hits the block, and cracks will begin to appear. When the player is in range, the block will also be marked with a wireframe cube outline, showing the current target. After the cracks completely cover the block, it will break, and depending on the type of block and the tool being wielded, it may be harvested for resources.

Although many blocks can be harvested with bare hands, the harder ones require the use of a tool. In particular, to get resources from stone or metal-type blocks, the player will need to use a pickaxe. For harder blocks like iron ore or obsidian, not just any pickaxe will do; the player needs one made from a higher tier materials. The player can also use shovels and axes to speed up digging of dirt and wood-type blocks (respectively), although they are not required to get the resource drop. The downside is that tools have durability, and so they eventually wear out.

The progress for breaking a block is reset if the target block changes while breaking. Progress is also reset whenever the mouse button is released. The player can move freely while breaking, and the player can even dig while jumping or swimming; although there is a speed penalty for the latter two.

Speed
The speed at which the player digs is controlled by three factors: The block the player is breaking, the item the player is currently wielding, and the mining penalties affecting the player. Every block has a hardness, which determines the base amount of time to break that block if the player hits it with his/her bare hands.

The base time in seconds is the block's hardness multiplied by 1.5 if the the player can harvest the block with current tool, or multiplied by 5 if the player cannot.

Assuming that the player can harvest the block, the next check is whether the player's tool helps speed breaking for this block. See Best tools for a full list.

If the tool helps, then it increases digging speed by a constant multiplier, given in the following table:

If a proper tool is used, this multiplier is further increased by Efficiency. If the level of Efficiency is not 0, then the level squared plus 1 is added to the tool speed. For example, Efficiency I adds 2 to the value, while Efficiency V adds 26. The speed is also increased by (20×level)% per level of Haste, while Mining Fatigue decreases it by 70% for level I, 91% for level II, 99.73% for level III, and 99.919% for all other levels.

Regardless of whether the tool helps or not, breaking can be slowed if the player is not on the ground. Breaking takes 5 times as long if the player is not standing on the ground while digging, and 5 times as long if the player is underwater and lacks armor with Aqua Affinity. These two values can combine, giving a 25× multiplier for a swimming player.

The total time to break a block is always a multiple of $1/20$ of a second, or 1 game tick, any remainder is rounded up to the next tick.

Instant breaking
When breaking a block, a tool plus its enchantments will do its speed value as "damage" to a block every game tick, and when that value equals or exceeds the blocks hardness times 30, the block is broken. If the tool plus enchantments equals or exceeds the hardness times 30, the block is broken with no delay, otherwise there will be a $1/4$ second delay before the next block is mined. For example, a player with Haste II holding an Efficiency V diamond pickaxe can break stone instantly, as the damage is (8+26)*(1+0.4)=47.6 which is larger than the base hardness of stone, times 30.

Best tools
Fastest tools to mine specific blocks:

Blocks by hardness
The following table shows the time it takes to break each type of block. Values with a red background indicate that it cannot be harvested by that quality of tool. If there is no tool that helps speed up mining the block, the five "tool" columns are left empty. Few blocks are harvested faster with shears or a sword. These speeds are listed in the last two columns, but only if it's different than "nothing".

Note that some blocks, don't drop anything even when they are mined with the proper tool; these are marked with a yellow background.

Any blocks with a breaking time of 0.05 seconds or less can be broken without the $1/4$ second delay. See instant breaking above.

edit values

Trivia

 * In the code, blocks use a hardness value of -1 in order to make blocks unbreakable.