I'd like to have an item enchanted with silk-touch, but of course the enchants are all random.
Is there a combination of enchantment level and item material that would give me the best odds of getting the silk touch enchantment?

5 Answers
5

[Current status: Unfortunately, as of now (2015) these tables have not been updated for Minecraft 1.8, only 1.6.2 (2013). Version 1.8 changed enchanting so that when you enchant an item it only consumes up to three of your levels, not all of the levels required to permit the enchantment. This means that the XP cost tables are inaccurate.]

Stuart Pernsteiner's enchantment strategy guide is, or at least was, an excellent resource. It provides tables and charts which list the conditions for the minimum XP or item cost for a given enchantment.
According to the table for Silk Touch, you want to be at level 30 to get the best chance per single enchantment, you should still expect to enchant an average of 6 tools before getting Silk Touch rather than another enchantment.

However, if you have plenty of materials you may wish to use levels which are more efficient in terms of XP required rather than tools enchanted, since higher levels require gathering more XP per level.

Acording to the strategy table I linked, Silk Touch on a gold pickaxe at 49 has a 14.3% chance. According to Iron Tool, Level 11, you have a 0.7% chance of Silk Touch in that case, and probability theory tells us that doing that 4 times is 1-(1-(0.007))^4 = 0.028 = 2.8% chance. So, no, that would not be an improvement. You can also see this in the Item Cost graphs: the line is off the scale at level 11
– Kevin ReidDec 12 '11 at 17:11

@ Kevin Reid - Ah, okay so SaintWacko's numbers are off? Although according to that table it would still be better to attempt 2 level 25 enchants than 1 level 50 enchant. And the actual best use of experience is to enchant at level 26. Is that correct?
– KurleyDec 12 '11 at 18:00

For “best use of experience”, you want the “XP Cost Local Minima” table in the “Summary” section, which indicates that the best level depends greatly on the material (26 is that value for stone tools, but lower levels are better for other materials).
– Kevin ReidDec 12 '11 at 18:30

1

I'm hesitant to pick answers that are essentially links, but I think what I really wanted came out in the comments. Thanks.
– KurleyDec 14 '11 at 9:52

The number in parentheses is the level range where you have any chance at all of getting Silk Touch. The level range outside of parentheses is where you have the maximum chance of getting Silk Touch.

Of course, even with that, you still don't have a very good chance of getting silk touch. Minecraft uses a weighting system to determine what enchantment(s) a tool gets.

Weights:

Efficiency - 10
Silk Touch - 1
Unbreaking - 5
Fortune - 2

So, even in the proper tool/level ranges, you would still only have a 1/18 chance of getting Silk Touch. I had hoped there was a way to be in the range of Silk Touch, but out of the range of one or more other enchantments, but no such luck. They all overlap Silk Touch.

Calculations:
Silk Touch can occur within a Modified Enchantment Level (MEL) of 25-75. The MEL is arrived at by the calculation

MEL = Enchantment Level + Random(0, Enchantablility) + 1

Where Enchantment Level is the number of experience levels spent to enchant the item and Enchantability is determined by the material, thus:

The game then multiplies the MEL by a number ranging from .75 to 1.25 to get the final MEL. To find the range inside the parentheses, I multiplied the lower bound by 4/5, and the upper bound by 4/3. To find the range outside the parentheses, I did the opposite.

Where are you getting your minimum values from? Those might be the minimum values, but you have a lesser chance of getting silk touch from those minimum values because the .75 - 1.25 swing can push you below the 25 minimum for silktouch. Basically, some math would make this answer much better! ♪
– Raven DreamerDec 8 '11 at 22:28

1

Oops, I missed that bit of the calculation. I'll update it, and add in the calculations I did to get those numbers
– SaintWackoDec 8 '11 at 23:20

Ah, excellent. The one last snag is that you can only spend 50 levels at once. Otherwise, looks great!
– Raven DreamerDec 9 '11 at 0:41

Right, at first I was capping the ranges at 50, but I realized that in the future you may be able to spend more levels, so I put the full range.
– SaintWackoDec 9 '11 at 9:24

So, from what I can understand, if I enchant Iron tools with level 11 enchants, I have a 1 in 18 chance of getting Silk Touch? Does this take into account the chance of multiple enchants?
– KurleyDec 9 '11 at 11:36

The best way to determine your chances of getting any enchantment at any level is to run the Minecraft Enchantment Simulator (which is posted on the wiki Enchanting page) in 'Graph Levels' mode. If you want small error bars, I suggest running it in chrome with a lot of simulations (warning: CPU intensive!)

It will do many trial simulations at every level using the same enchanting algorithm Minecraft does, and give you the results, which takes into account everything - including multiple enchantments.

For a diamond pickaxe, (which most people will try for, since once acquired it will last the longest) here are the probabilities to a pretty high certainty:

In more recent updates, you can see in advance what your enchantment will be (at least in part) AND it also randomizes after accepting an enchantment AND it allows the exchange to cherry pick enchantments.

By bringing a bunch of rubbish items to enchant in addition to your one diamond pickaxe will allow you to enchant the pickaxe only when it is silk touch. Via exchanging say an iron hoe with the pickaxe and lesser enchanting that instead will randomize again allowing you to try again with the pickaxe. Of course you would use levels to enchant the garbage items but doing lower enchantment will use less levels allowing for more tries.

So where you used to need 150/180 levels to try 6 diamond pickaxes you can look at dozens of tries for the same number of levels.

Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).