Monday, September 12, 2011

On an Analysis of Minecraft Mining Technique Efficiencies


[Editors Note: For those who do not play Minecraft, you should. You can play it in your browser here, but I strongly recommend downloading the client from here.]
[Editors Note #2: While the analysis in this article is still valid, the addition of abandoned mines in version 1.8 makes the use of existing shafts in these mines the most efficient mining technique and is far safer than spelunking, provided the cave spiders are avoided.]
[Editors Note #3: With the addition of enchantments to the game, a player can obtain 120% more diamonds through the use of Fortune III, and can mine 300% more blocks with Unbreaking III. This makes mining for diamonds even more efficient than before.]

I take a very thorough and calculated approach to almost everything in life, and the game of Minecraft is no exception. As a result, I have decided to take a very scientific approach to the development of an efficient mining technique.

(On a very early side note: my advice to you is to not take any technique that recommends the use of stone pick axes seriously, as iron is definitely common enough to make all tools, buckets and doors from iron, and still have enough left over to make an extensive minecart system. Furthermore, there are just enough diamonds in the game to justify using a diamond pickaxe for all but the most detailed construction projects.)


      Abstract

This study presents an analysis of various Minecraft mining techniques. A quantifiable mining efficiency is defined and compared for 24 different mining techniques. Spelunking proved to be the most efficient technique, involving no mining in order to reveal resources, while large scale open-pit mining was the least efficient, as it required mining every single block. The optimum compromise between safety and efficiency is offered by slope mining at a 71.6° angle for iron and coal, and branch mining with two block high tunnels for diamonds.

      1. Introduction

The game of Minecraft is an open sandbox construction game created by Markus "Notch" Persson. The basic gamplay involves the player manipulating blocks in an effectively infinite 3D environment. The player controls an avatar that is capable of placing and removing blocks to create various structures, artworks or creations[1]. There are two primary elements to gameplay - these being the placing of blocks, called "building", and the destruction of blocks, called "mining". In general, mining includes the act of destroying blocks that are automatically generated ("spawned") within the games environment in order to obtain resources that may be placed as is, or crafted into other objects which may be placed.

The most common blocks are stone and dirt, which vastly outnumber other more useful blocks such as coal, iron, gold, diamond and redstone ores. Due to the large surplus in supply of the common blocks and the limited storage space available, mining stone or dirt unnecessarily is usually avoided. In addition to this, the act of mining takes a significant amount of time which is mostly wasted if useful resources are not being generated. Since the world in the game is essentially infinite, but the amount time a player spends playing is limited by constraints of every day life, there is a great advantage to using a technique which involves a minimal mining, but maximises the number of useful resources obtained.

      2. Methodology

In order to make any direct comparison of mining techniques, we need to define a quantifiable "mining efficiency" that can be meaningfully applied to any technique, and that allows for a conclusive comparison between mining techniques.

Previous work has had a tendency to place emphasis on not missing any ores within the mining region [2,3]. Contrary to popular belief, the distribution of diamonds within a world is not completely randomly, but is in a manner that is biased towards a more uniform distribution (that is, each chunk is given an opportunity to spawn a single diamond vein only once). Thus, it is safe to assume for our analysis that diamonds are approximately uniformly distributed throughout the world (at the correct depths, of course). This would imply that all blocks in suitable locations have the same probability of containing a certain resource. Strictly speaking, this is not true, but it is still a very close approximation. It follows from this that the quantity of resources found by a particular mining technique will be directly proportional to the number of bocks that the technique reveals.

The most efficient mining technique would be a technique that reveals blocks without having to mine any blocks at all. Similarly, the least efficient technique would involve mining absolutely every block. A suitable equation for the efficiency can be derived by applying a linear variation between these two limits. The efficiency is thus given by



where gives the number of blocks revealed by the technique, but not mined, and gives the number of blocks that are mined in order to reveal those blocks.

      3. Results

There are several classes of mining techniques that need to be considered. These include
  • Spelunking or cave diving, which involves exploring naturally occurring caves in order to find exposed resources.
  • Open-pit mining, which involves mining out every block in a deep pit of a certain size.
  • Branch mining, which involves mining long straight tunnels from a central hub.
  • Slope mining, which is similar to branch mining, but the tunnels are dug along a downward slope at a certain angle from horizontal.
  • Cutting, which involves mining long, narrow slits into the surface.

For the majority of these techniques, the efficiency of the technique depends on the scale at which it is implemented. The efficiencies for each technique at various scales is shown in Table 1 below. The table is sorted from the most to least efficient.

Table 1: Summary of efficiencies for various techniques.
Technique Blocks Mined Blocks Revealed Efficiency
Spelunking 0 1 100.0%
Open-pit mining, 1x1 1 4 80.0%
Slope mining, 71.6°, 5 high 5 16 76.2%
Branch mine, 2 high 2 6 75.0%
Slope mining, 63.4°, 4 high 4 12 75.0%
Cutting, 1 deep 1 3 75.0%
Slope mining, 26.6°, 2 high 5 14 73.7%
Branch mine, 3 high 3 8 72.7%
Slope mining, 45°, 3 high 3 8 72.7%
Branch mine, 4 high 4 10 71.4%
Cutting, 2 deep 2 5 71.4%
Branch mine, 6 high 6 14 70.0%
Cutting, 4 deep 4 9 69.2%
Cutting, 6 deep 6 13 68.4%
Cutting, 8 deep 8 17 68.0%
Open-pit mining, 2x2 4 8 66.7%
Cutting, very deep 1 2 66.7%
Open-pit mining, 3x3 9 12 57.1%
Open-pit mining, 4x4 16 16 50.0%
Open-pit mining, 6x6 36 24 40.0%
Open-pit mining, 8x8 64 32 33.3%
Open-pit mining, 16x16 256 64 20.0%
Open-pit mining, 32x32 1024 128 11.1%
Open-pit mining, large-scale 1 0 0.0%

      4. Discussion

Table 1 clearly shows that the most efficient technique is spelunking, followed by 1x1 open-pit mining. Spelunking is indeed the most efficient mining technique, especially after the Beta 1.2 update, which increased the amounts of iron, diamond and coal in caves [4]. However, spelunking has several disadvantages, including a greatly increased risk of encountering hostile mobs and a significant risk of getting lost. It relies heavily on natural cave systems, placing the player at the mercy of the randomly generated map.

Open-pit mining in a 1x1 pit (which is the equivalent of mining narrow vertical shafts) is the second most efficient technique at 80%, but is the most dangerous technique. It involves an exceptionally high risk of mining through the ceiling of a tall cave, or mining into a pool of lava. Both cases are likely to involve death, and it is either very difficult or impossible to reclaim your items should this occur. This is the primary reason for the often quoted "Never dig straight down" slogan. The efficiency of open pit mining drops rapidly as the size of the pit increases. For a 2x2 pit, the efficiency drops to 66.7%, and tends towards 0% as the size of the pit increases.

Slope mining at a 71.6° angle (as shown in Figure 1) is the optimum combination of efficiency and safety. The angle of 71.6° is the steepest angle that can safely be dug without mining the block that the player is standing on. This technique is ideally suited for coal and iron mining, but is not suited for diamond mining, due to the rapid rate of decent, which will reach the lava or bedrock layers within a few iterations of the method when starting from one of the diamond layers. The primary disadvantage is that this technique requires a minimum of 0.4 ladders per block mined in order to exit the shaft. An alternative is to fill in at least two blocks for every five block high section.


Figure 1: Example of slope mining at an angle of 71.6°

A more suitable mining method for mining diamonds is the branch mining technique. The higher the tunnel, the lower the efficiency of the technique, so it is advantageous to keep the tunnel height to the minimum height along which the player can walk, i.e. two blocks. At 75%, the efficiency of this technique is only marginally lower than that of 71.6° slope mining. Since all mining is carried out at a constant depth, it is possible to mine very long branches, increasing quantity of resources that may be collected.

      5. Conclusions

In general, spelunking is the most efficient mining technique. However, in the absence of suitable natural caves, or if the player deems the risk to be unacceptably high, then mining downwards along a 71.6° slope proves to be the optimum combination of efficiency and safety when mining for coal or iron. When mining for diamonds, a branch mining technique involving tunnels of a height of two blocks is the most effective method out of those investigated.

      6. References

[1]. Curse, Inc.; Minecraft Wiki - The ultimate resource for all things Minecraft; September 2011.
[2]. Malavok; Minecraft Forum: Stripmining Tutorial - Finally!; September 2011.
[3]. IceGecko; Minecraft Forum: Branch Mining Technique; September 2011.
[4]. Curse, Inc.; Version History - Minecraft Wiki; September 2011.

If you enjoyed this post, then don't forget to like, tweet, +1, or upvote on reddit. If you have any questions, comments or complaints, post them using the form below.
. . . . . . . . . . . . . . . . . . . . . . . .



No comments: