Open letter to White Wolf

To: White Wolf

The advantage of electronic books is that they are easier to store, searchable and, until now, cheaper.

As you know, electronic versions of your two recent releases (Yu-Shan and Scroll of Kings) are listed for $18, nearly $5 more than books with equivalent page counts released just months ago. That’s a price increase of almost 50% and marks the first time I can remember the electronic version of one of your books costs more than the print version. While retail for the print version is $25, Amazon sells it for $17. (They also continue to sell the “books with equivalent page counts” mentioned above for $17.)

As someone who has legally purchased electronic copies of nearly all of your First and Second Edition Exalted titles, I find this, of course, extremely irritating. But, more to the point, if this price change is here to stay (which I hope it doesn’t), then I will now be much more demanding of features in these electronic books that, until now, I’ve been giving you a pass on not providing. In particular, for the additional $5 for a bunch of electrons, I now expect and demand…

  • …reduced security. At the very least, I should be permitted to edit and save my own bookmarks and have the ability to add margin notes and save them. At best, eliminate it entirely. (Yes, I do know how to strip it off, but I’d prefer not to have to.)
  • …free updated versions of all affected files whenever you make corrections or errata to existing books. (Other companies, much smaller than you, do this already, by the way.)
  • …the person producing the PDF to spend time to make sure the file size is small and the page render times fast. Many of your books (particularly the White and Black Treatises) have exceedingly long draw times. (A good test here is to keep clicking on the “next page” button. If you do this quickly and the majority of the pages barely render before you click the next one, it’s to slow.)

Or, you could, you know, put your prices back down to a reasonable level.

I learned a while ago that I follow the following pattern when buying gaming books, even if I can’t explain exactly why: if the PDF costs around a third of the cost of the printed version, I buy both the printed version and the PDF. If the PDF costs around half the cost of the printed version, I buy the PDF only. If the PDF costs more than half of the printed version, I buy neither.

Update: I thought posted this a while ago, but it looks like I didn’t. In the interim, White Wolf released a new “fatsplat” book for the same price as other flatsplats when they were first offered. Older flatsplats are now $16, so it looks like White Wolf might be pricing at a premium when the book is initially released, then reducing prices later. I think this practice really, really sucks, and has made me take another big step toward abandoning Exalted entirely. In a much better move, they also, for the first time, reissued a title with corrections as a free upgrade. While I welcome this development, I must note that it is much less compelling when the bookmarks in the new version are much, much worse than those in the original. Given how easy it is to automatically generate bookmarks in programs like InDesign, this is disgusting.

Fitting tribute

Does anyone else think we should start a fund to build a mausoleum for E. Gary Gygax (who died Monday), based on the layout of the Tomb of Horrors? I mean, building a gelatinous cube and the sphere of annihilation would be a challenge, but it would be so worth it. Plus, Lake Geneva could use a tourist attraction. So what if it would kill 98% of the people who went into it.

map
Image thanks to Mad Irishman, and is probably © Wizards of the Coast

Update: It also appears that EGG’s death is causing a number of people to break out their old, original D&D books to play “tribute” games. I suspect that people might wind up seeing how much better the original was in some ways (worse in others, of course). For example, people who have never played a D&D game that didn’t involve feats may be in for a surprise. It would be cool if this brought more people to the idea that simple rules sets are often better, and bail out on all these systems that are built around micro-rules, such as feats and charms and spells and so on, that really exist as a driver to sell more books.

For those itching for some original AD&D goodness, but who don’t have the books and can’t find them in a torrent somewhere (*cough*), there is an alternative. The Old School Reference & Index Compilation (OSRIC) is an open license version of what are basically the original AD&D rules, legally sanitized to remove “artistic representation” and trademarks owned by TSR Wizards of the Coast. Happy hunting.

Update 2: Looks like someone actually is building a Gary Gygax Memorial. Sadly, just a bust of the man, not a full on tomb.

Chance of Reign

Based on an opinion voiced in an Exalted forum, I picked up the hardback of Reign, a game self-published by Greg Stolze. Stolze is the co-author of the incredibly good Unknown Armies and wrote the best “how to run a game” chapter that I’ve ever read (published in the otherwise unremarkable Gamma World Game Master’s Guide), so I was excited to see how he tackled the epic fantasy genre. Mechanically, he does so with something called the One Roll Engine. (If you want to sign up to a site with a not-very-helpful user interface, you can download a version of the basic system for free.) This engine makes use of dice in a way I haven’t seen a game utilize before, and I figured I’d blog about the probability of the system because a) I didn’t immediately know how to calculate it, b) a post on how to do such probability calculations will hopefully be useful to fellow gamers and c) I wanted an excuse to play with the statistical and graphing features of Numbers.

Reign uses pools of ten-sided dice (d10s), where results are determined by looking at how many dice match each other. It is a bit like poker, where a roll might generate, say, a three-of-a-kind, a pair, and some singles. Each of these matches is called a “set”, and the number of dice in the set is called the “width” of the set. So, for example, if you roll five dice and get 4, 4, 4, 2, 8, you have one set of width three. For many rolls in Reign, the actual number being matched, called the “height” of the set (4 in the previous example), doesn’t particularly matter. For other rolls, only the height matters. Still others rely on both the height and the width. Usually only a single set in a roll matters, but there are some mechanics that make use of the other sets as well. In this way, the rules in Reign pull a lot of meaning out of a single roll mechanic, and the probabilities employed are interesting but not obvious. I’ve done some (very) minor probability documentation on some other systems (an invented five-suit card game and the “excellencies” of Exalted, for example), but this is a bit more tricky.

Simple calculations

The first basic observation to make is that if you have a pool with more than 10 dice in it, you will always get at least one set. If you have n+1 items that can only have n distinct values, at least one of those values will come up more than once. Reign is well aware of this, and has rules to match. Consequently, pools only exceed 10 dice in very extraordinary circumstances; however, these circumstances, though rare, do exist in the game, so this post will consider results with up to 15 die pools.

Secondly, for any given roll, the odds of achieving exactly a specific height are identical to achieving any other exact height. That is, odds of rolling two tens using 5d10 are exactly the same as rolling two nines. This means that, were you to build a chart where rolling height x means one thing and height y means something else, you have equal chances of getting either result. Thus, if you want one result more than the others, you need to assign that result to more than one height on the chart. Reign makes use of this idea at least once in the rules (as a hit-location table). More often, however, height is used in rules where the height must be at least that number or higher. This makes reaching a certain height harder as the number increases. A height of 10, for example, can only be reached if the dice conspired to built a set containing 10s, but a height of nine is reached by those same sets plus sets containing nines, making it more likely. As a result, when this post considers height, it will do so in the sense of reaching at least that height.

Tools

Because Reign deals with sets, the key technique in calculating probability is combinatorics. In particular, the concept of a combination is crucial. This looks scary, but you probably had to do some of this in high school math class. The basic idea is that you have some number of items in your hand, and you have to select a certain (smaller) number of those items. The combination calculation measures how many different ways you could make such as selection, where order does not matter. For example, say you have four cubes in your hand, one red (r), one blue (b), one green(g), one violet (v). You are instructed to select two cubes, where the order doesn’t matter. You can do this, it turns out, six different ways: rb, rg, rv, bg, bv, gv. This would be notated as C(4,2), read “four choose two”. Generically, C(n,k), or “n choose k“. You may also have vague memories of a permutation, which is the same idea as combination except that order does matter. For example, rb and br are considered the same combination, but different permutations. A permutation of two items from a set of four is notated as P(4,2). Calculating both combinations and permutations makes use of the factorial operator. This is a fairly simple idea to wrap your head around. A number like “4 factorial”, notated “4!” just means to multiply 4 × 3 × 2 × 1. So n! just means n × n−1 × n−2 × … × 3 × 2 × 1. Combinations and permutations are calculated as follows:

C n = ( n ) = n!   P(n,r) = n!
k k k! (nk)! (nr)!

Fortunately, before you run screaming from this, most spreadsheets (and more advanced calculators) have functions for combinatorics. Excel, for example, uses combin(n,k). It also has permut(n,r), fact(n) and power(x,y), which are also useful. (One note here: Numbers lacks a permut(n,r) method, which is extremely irritating.)

Stepping-stone calculations

Calculating odds of rolls like this is somewhat similar to calculating odds in poker: you figure out how many possible ways there are to get a certain result, and you divide by the total number of all results. This gives the percent chance of achieving that result. Calculating the total possible results for a die roll is easy: start with a single die and figure out how many results this die can yield. Unless you are using very strange dice, this will equal the number of faces on the die. For each die you add to the pool, multiply by the number of ways that die can come up. So, if you roll a d20, a d12 and a d6, the total possible outcomes are 20 × 12 × 6. Since Reign uses pools of n d10s, for any given roll the total possible outcomes are 10n.

Calculating the ways to get a given result is usually more difficult. One very trivial thing to figure out: what are the odds of all of the dice of a roll matching? In this case, all of the dice have to match, and there are ten possible values this match can have. Thus, no matter how many dice are rolled, there are only ten possible rolls that result in all of them matching. This means the probability is always 10 ÷ 10n = 1 ÷ 10n−1 = 101−n.

Another basic building block is also easy to calculate: when rolling n dice, what is the chance that you will get no set at all? To figure this out, you need to know how many ways you can roll the dice such that none match any of the others. So, try to actually construct such a roll, rolling one die at a time. The first die could come up as anything, so it would have 10 possible outcomes. The second die could be anything but the value of the first, so would have nine possible outcomes. The third could have eight possible values and so on. This sequence is sort of like 10! (that is 10 × 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1) with the last few terms hacked off based on how many dice you had. If you had six dice, for example, you’d need to hack off the 4 × 3 × 2 × 1 part. Note that this is 4! and that “hacking off” the terms would be done by taking 10! ÷ 4!. Note that this is exactly the formula of P(10,6), above. (This is not a coincidence, but rather exactly what permutation is.) Knowing the chance of no match, you can take 1 minus this number to figure out the chance of at least one match. The outcome looks like this (note that this matches with page 57 of the main Reign rulebook):

Dice Rolls without match Possible rolls Chance of no match Chance of at least one match
1 P(10,1) = 10 10 100.000% 0.00%
2 P(10,2) = 90 100 90.000% 10.00%
3 P(10,3) = 720 1,000 72.000% 28.00%
4 P(10,4) = 5,040 10,000 50.400% 49.60%
5 P(10,5) = 30,240 100,000 30.240% 69.76%
6 P(10,6) = 151,200 1,000,000 15.120% 84.88%
7 P(10,7) = 604,800 10,000,000 6.048% 93.95%
8 P(10,8) = 1,814,400 100,000,000 1.814% 98.19%
9 P(10,9) = 3,628,800 1,000,000,000 0.363% 99.64%
10 P(10,10) = 3,628,800 10,000,000,000 0.036% 99.96%
11 0 100,000,000,000 0.000% 100.00%

Getting more detailed results requires more complexity. It happens that one of the tools needed to proceed requires figuring out the odds of rolling exactly one set with a given width, and all the rest of the dice not matching at all. By itself, this number is more of an intermediate result, but a general formula for figuring it out will help calculating more important results. We’ll call this formula “exact” and we do it like this:

  1. Let n be the pool size, i.e. the number of dice.
  2. Let d be the number of sides. In Reign, d is always 10.
  3. Let w be the desired width.
  4. If you were to hand pick a set of the desired width from your pool, you would need to select the height of the set you are going to build, and a number of dice. The number of possible ways to do this is d × C(n,w).
  5. The dice that are not part of the set have dnw possible values, but some of these would either make the current set larger, or could combine to make sets of their own. We want to make sure that all of the remaining dice not only don’t match the set set, they don’t match each other, either. Since we used w dice to make the set, that leaves nw dice. Using ten-sided dice, the first of these dice would have nine possible ways of not matching the set. The next would only have eight possibilities, as it should match neither the set nor the previous die. The next die (if there is one), would have seven possibilities and so on. If you look at the pattern, you can see that this winds up being equal to P(d−1,nw).
  6. Taking these all together, that makes d × C(n,w) × P(d−1,nw) possible ways to roll n d-sided dice such that they generate exactly one set of exactly width w.
  7. In Reign, the formula is Exact(n,w) = 10 × C(n,w) × P(9,nw)

For reference, this formula gives the following values:

Width Dice
2 3 4 5 6 7 8 9 10 11 12 13 14 15
2 10 270 4,320 50,400 453,600 3,175,200 16,934,400 65,318,400 163,296,000 199,584,000
3 10 360 7,200 100,800 1,058,400 8,467,200 50,803,200 217,728,000 598,752,000 798,336,000
4 10 450 10,800 176,400 2,116,800 19,051,200 127,008,000 598,752,000 1,796,256,000 2,594,592,000
5 10 540 15,120 282,240 3,810,240 38,102,400 279,417,600 1,437,004,800 4,670,265,600 7,264,857,600
6 10 630 20,160 423,360 6,350,400 69,854,400 558,835,200 3,113,510,400 10,897,286,400 18,162,144,000
7 10 720 25,920 604,800 9,979,200 119,750,400 1,037,836,800 6,227,020,800 23,351,328,000
8 10 810 32,400 831,600 14,968,800 194,594,400 1,816,214,400 11,675,664,000
9 10 900 39,600 1,108,800 21,621,600 302,702,400 3,027,024,000
10 10 990 47,520 1,441,440 30,270,240 454,053,600
11 10 1,080 56,160 1,834,560 41,277,600
12 10 1,170 65,520 2,293,200
13 10 1,260 75,600
14 10 1,350
15 10

Calculating width odds

Armed with this information we can start answering real questions about the probability of specific results. Unfortunately, there is no one formula that provides a generic answer. Each roll of n dice acts a bit like a poker hand of n single-suited cards or, more closely, a roll in a game of poker dice (which is essentially a simplified version of Yahtzee). You have to look at the various possible results, and count them independently. Unfortunately, you have to do this separately for each value of n. We’ll show details of n=7, since it is large enough for interesting things to occur. With seven dice, you have 107 possible rolls, with the following possibilities:

  • No match (0x). This we calculated above: P(10,7)
  • Single pair (2x). This we calculated above: Exact(7,2)
  • Two pair (2x,2x). There are C(10,2) ways to select the heights of the pairs. The first pair can be selected C(7,2) ways, the second C(5,2). The remaining three die can come up P(8,3) different ways without matching the two pair or creating new pair of their own (that is, 8 × 7 × 6). So, the total number of exactly two pair rolls with seven dice is C(10,2) × C(7,2) × C(5,2) × P(8,3). Note that this suggests a general formula for the number of exactly two pair results for any number of dice n: C(10,2) × C(n,2) × C(n−2,2) × P(8,n−4), with the realization that this is only possible for some values of n (i.e. if n is less than 4, you can’t actually build two pair, and P(8,n−4) becomes undefined as well).
  • Three pair (2x,2x,2x). Similar to two pair, using this general formula: C(10,3) × C(n,2) × C(n−2,2) × C(n−4,2) × P(7,n−6).
  • Single triple (3x). This we calculated above: Exact(7,3)
  • Triple and a pair (3x,2x). Ten ways to select the height of the triple, the dice for which can be chosen C(7,3) ways. That leaves nine possibilities for the height of the pair, the dice of which can be selected C(4,2) ways. For the remaining two dice, there are 8 possible values for the height for the first and seven for the second (otherwise they match either each other or one of the other sets). Note that this is P(8,2). The total is then 10 × C(7,3) × 9 × C(4,2) × P(8,2). Again, a general formula suggests itself: 10 × C(n,3) × 9 × C(n−3,2) × P(8,n−5)
  • Triple and two pair (3x,2x,2x). Ten ways to select the height of the triple, the dice for which can be chosen C(7,3) ways. There are C(9,2) ways to select the heights of the pairs. The first pair can be selected C(4,2) ways, the second C(2,2). The remaining three die can come up 7 different ways without matching the other sets (note that this is P(7,1)). 10 × C(7,3) × C(9,2) × C(4,2) × C(2,2). For more than seven dice, there would dice left over that could not match the value of any of the sets or each other, so permutations of the seven remaining possible values would be used: 10 × C(n,3) × C(9,2) × C(n−3,2) × C(n−5,2) × P(7,n−7).
  • Two triples. Calculated much like two pair, with a general formula of C(10,2) × C(n,3) × C(n−3,3) × P(8,n−6).
  • Four of a kind (4x). This we calculated above: Exact(7,4)
  • Four of a kind and a pair (4x,2x). Similar to a triple and a pair: 10 × C(n,4) × 9 × C(n−4,2) × P(8,n−6)
  • Five of a kind (5x). This we calculated above: Exact(7,5)
  • Five of a kind and a pair (5x,2x). Similar to a triple and a pair: 10 × C(n,5) × 9 × C(n−5,2) × P(8,n−7)
  • Six of a kind (6x). This we calculated above: Exact(7,6)
  • Seven of a kind (7x). This we calculated above: Exact(7,7)

You can do similar analysis of all the other lengths, and you end up with the table below. Each row in the table shows a possible set combination that may be rolled, and the general formula to figure out how many possible outcomes will generate that set combination. Naturally, not all combinations are possible for a given number of dice. Try as you might, you’ll never get a width three set from two dice. Each cell in the table shows two different bits of information for given result for a given number of dice. The first is the numeric result of that number. The second, in bold, is the percentage chance of that result when rolling that many dice. Because the table gets obnoxious as the number of dice increases, this only shows results for two to 10 dice, but you should be able to use techniques shown above to extend it to more if you need to. (I also wrote some really horrid Python code to double-check these numbers by counting the sets made by every possible roll from 2 to 10 dice. It all matches.)

Result General Formula Dice Rolled
2 3 4 5 6 7 8 9 10
0x P(10,n) 90
90.0%
720
72.0%
5,040
50.4%
30,240
30.24%
151,200
15.120%
604,800
6.0480%
1,814,400
1.81440%
3,628,800
0.362880%
3,628,800
0.0362880%
2x 10 × C(n,2) × P(9,n−2) 10
10.0%
270
27.0%
4,320
43.2%
50,400
50.40%
453,600
45.360%
3,175,200
31.7520%
16,934,400
16.93440%
65,318,400
6.531840%
163,296,000
1.6329600%
3x 10 × C(n,3) × P(9,n−3) 10
1.0%
360
3.6%
7,200
7.20%
100,800
10.080%
1,058,400
10.5840%
8,467,200
8.46720%
50,803,200
5.080320%
217,728,000
2.1772800%
4x 10 × C(n,4) × P(9,n−4) 10
0.1%
450
0.45%
10,800
1.080%
176,400
1.7640%
2,116,800
2.11680%
19,051,200
1.905120%
127,008,000
1.2700800%
5x 10 × C(n,5) × P(9,n−5) 10
0.01%
540
0.054%
15,120
0.1512%
282,240
0.28224%
3,810,240
0.381024%
38,102,400
0.3810240%
6x 10 × C(n,6) × P(9,n−6) 10
0.001%
630
0.0063%
20,160
0.02016%
423,360
0.042336%
6,350,400
0.0635040%
7x 10 × C(n,7) × P(9,n−7) 10
0.0001%
720
0.00072%
25,920
0.002592%
604,800
0.0060480%
8x 10 × C(n,8) × P(9,n−8) 10
0.00001%
810
0.000081%
32,400
0.0003240%
9x 10 × C(n,9) × P(9,n−9) 10
0.000001%
900
0.0000090%
10x 10 × C(n,10) × P(9,n−10) 10
0.0000001%
2x,2x C(10,2) × C(n,2) × C(n−2,2) × P(8,n−4) 270
2.7%
10,800
10.80%
226,800
22.680%
3,175,200
31.7520%
31,752,000
31.75200%
228,614,400
22.861440%
1,143,072,000
11.4307200%
3x,2x 10 × C(n,3) × 9 × C(n−3,2) × P(8,n−5) 900
0.90%
43,200
4.320%
1,058,400
10.5840%
16,934,400
16.93440%
190,512,000
19.051200%
1,524,096,000
15.2409600%
3x,3x C(10,2) × C(n,3) × C(n−3,3) × P(8,n−6) 900
0.090%
50,400
0.5040%
1,411,200
1.41120%
25,401,600
2.540160%
317,520,000
3.1752000%
4x,2x 10 × C(n,4) × 9 × C(n−4,2) × P(8,n−6) 1,350
0.135%
75,600
0.7560%
2,116,800
2.11680%
38,102,400
3.810240%
476,280,000
4.7628000%
4x,3x 10 × C(n,4) × 9 × C(n−4,3) × P(8,n−7) 3,150
0.0315%
201,600
0.20160%
6,350,400
0.635040%
127,008,000
1.2700800%
4x,4x C(10,2) × C(n,4) × C(n−4,4) × P(8,n−8) 3,150
0.00315%
226,800
0.022680%
7,938,000
0.0793800%
5x,2x 10 × C(n,5) × 9 × C(n−5,2) × P(8,n−7) 1,890
0.0189%
120,960
0.12096%
3,810,240
0.381024%
76,204,800
0.7620480%
5x,3x 10 × C(n,5) × 9 × C(n−5,3) × P(8,n−8) 5,040
0.00504%
362,880
0.036288%
12,700,800
0.1270080%
5x,4x 10 × C(n,5) × 9 × C(n−5,4) × P(8,n−9) 11,340
0.001134%
907,200
0.0090720%
5x,5x C(10,2) × C(n,5) × C(n−5,5) × P(8,n−10) 11,340
0.0001134%
6x,2x 10 × C(n,6) × 9 × C(n−6,2) × P(8,n−8) 2,520
0.00252%
181,440
0.018144%
6,350,400
0.0635040%
6x,3x 10 × C(n,6) × 9 × C(n−6,3) × P(8,n−9) 7,560
0.000756%
604,800
0.0060480%
6x,4x 10 × C(n,6) × 9 × C(n−6,4) × P(8,n−10) 18,900
0.0001890%
7x,2x 10 × C(n,7) × 9 × C(n−7,2) × P(8,n−9) 3,240
0.000324%
259,200
0.0025920%
7x,3x 10 × C(n,7) × 9 × C(n−7,3) × P(8,n−10) 10,800
0.0001080%
8x,2x 10 × C(n,8) × 9 × C(n−8,2) × P(8,n−10) 4,050
0.0000405%
2x,2x,2x C(10,3) × C(n,2) × C(n−2,2) ×
C(n−4,2) × P(7,n−6)
10,800
1.080%
529,200
5.2920%
12,700,800
12.70080%
190,512,000
19.051200%
1,905,120,000
19.0512000%
3x,2x,2x C(10,2) × C(n,2) × C(n−2,2) ×
8 × C(n−4,3) × P(7,n−7)
75,600
0.7560%
4,233,600
4.23360%
114,307,200
11.430720%
1,905,120,000
19.0512000%
3x,3x,2x C(10,2) × C(n,3) × C(n−3,3) ×
8 × C(n−6,2) × P(7,n−8)
201,600
0.20160%
12,700,800
1.270080%
381,024,000
3.8102400%
3x,3x,3x C(10,3) × C(n,3) × C(n−3,3) ×
C(n−6,6) × P(7,n−9)
201,600
0.020160%
14,112,000
0.1411200%
4x,2x,2x C(10,2) × C(n,2) × C(n−2,2) ×
8 × C(n−4,4) × P(7,n−8)
151,200
0.15120%
9,525,600
0.952560%
285,768,000
2.8576800%
4x,3x,2x 10 × C(n,4) × 9 × C(n−4,3) ×
8 × C(n−7,3) × P(7,n−9)
907,200
0.090720%
63,504,000
0.6350400%
4x,3x,3x C(10,2) × C(n,3) × C(n−3,3) ×
8 × C(n−6,4) × P(7,n−10)
1,134,000
0.0113400%
4x,4x,2x C(10,2) × C(n,4) × C(n−4,4) ×
8 × C(n−8,2) × P(7,n−10)
1,134,000
0.0113400%
5x,2x,2x C(10,2) × C(n,2) × C(n−2,2) ×
8 × C(n−4,5) × P(7,n−9)
272,160
0.027216%
19,051,200
0.1905120%
5x,3x,2x 10 × C(n,5) × 9 × C(n−5,3) ×
8 × C(n−8,3) × P(7,n−10)
1,814,400
0.0181440%
6x,2x,2x C(10,2) × C(n,2) × C(n−2,2) ×
8 × C(n−4,6) × P(7,n−10)
453,600
0.0045360%
2x,2x,2x,2x C(10,4) × C(n,2) × C(n−2,2) ×
C(n−4,2) × C(n−6,2) × P(6,n−8)
529,200
0.52920%
28,576,800
2.857680%
714,420,000
7.1442000%
3x,2x,2x,2x C(10,3) × C(n,2) × C(n−2,2) ×
C(n−4,2) × 7 × C(n−6,3) × P(6,n−9)
6,350,400
0.635040%
381,024,000
3.8102400%
3x,3x,2x,2x C(10,2) × C(n,3) × C(n−3,3) ×
C(8,2) × C(n−6,2) × C(n−8,2) × P(6,n−10)
31,752,000
0.3175200%
4x,2x,2x,2x C(10,3) × C(n,2) × C(n−2,2) ×
C(n−4,2) × 7 × C(n−6,4) × P(6,n−10)
15,876,000
0.1587600%
2x,2x,2x,2x,2x C(10,5) × C(n,2) × C(n−2,2) ×
C(n−4,2) × C(n−6,2) × C(n−8,2) × P(4,n−10)
28,576,800
0.2857680%

Calculating height

As mentioned above, calculating odds for height is only interesting when you need a roll of at least a given height. Such calculation is surprisingly cumbersome, even if you mostly leave width out of it. In order for width to “count”, you must have at least one match, and this is what makes things hard to figure. It is honestly easier just to write code to count all possible outcomes, but if you want to figure it out do the following:

  1. Let n be the pool size, i.e. the number of dice.
  2. Let d be the number of sides. In Reign, d is always 10.
  3. Let h be the minimum height needed. Naturally, 0<hd.
  4. You now need to break the problem into sub-problems. So let m take on values from 2 to n. For each value of m, figure out the following:
    1. Figure out how many rolls of n dice of d sides generate exactly m dice that have values of h or greater. This can be done with a function X(n,d,m,h) = C(n,m) × (d-(h-1))m × (h-1)(nm). Note that when h=1 and m=n, the final term in that function is 00, which is technically undefined, so is omitted in that case.
    2. Figure out how many possible ways the n dice of d sides can come up. We did this above: dn.
    3. Find the probability of X(n,d,m,h). This is just the value of the function, divided by the total number of possible rolls. So ProbXm = X(n,d,m,h) ÷ dn.
    4. Now, given the m dice that came up h or greater, figure out the number of possible ways those dice can match. We do this much the same way we figured out the chance of at least one match, above. This time, though, we have only d-(h-1) possible values. So the possible ways to have no match with these dice is P(d-(h-1),m). The number of possible ways these dice can come up is ÷ (d-(h-1))m. So Y(d,m,h) = (d-(h-1))m − P(d-(h-1),m).
    5. Figure ProbYm = Y(d,m,h) ÷ (d-(h-1))m.
    6. Remember Probm = ProbXm × ProbYm.
  5. Now add up all values of Probm, and you have the probability of rolling at least height h on n dice of d sides.

This looks like this, again with the total number of rolls that meet a given height, followed by the percentage chance:

Height Dice Rolled
2 3 4 5 6 7 8 9 10
1 10
10.0%
280
28.0%
4,960
49.60%
69,760
69.760%
848,800
84.8800%
9,395,200
93.95200%
98,185,600
98.185600%
996,371,200
99.6371200%
9,996,371,200
99.96371200%
2 9
9.0%
252
25.2%
4,491
44.91%
63,954
63.954%
792,225
79.2225%
8,952,624
89.52624%
95,403,447
95.403447%
982,427,886
98.2427886%
9,941,058,909
99.41058909%
3 8
8.0%
224
22.4%
4,016
40.16%
57,888
57.888%
729,600
72.9600%
8,413,056
84.13056%
91,453,568
91.453568%
957,516,032
95.7516032%
9,803,680,256
98.03680256%
4 7
7.0%
196
19.6%
3,535
35.35%
51,562
51.562%
660,835
66.0835%
7,771,456
77.71456%
86,191,903
86.191903%
918,898,750
91.8898750%
9,546,080,131
95.46080131%
5 6
6.0%
168
16.8%
3,048
30.48%
44,976
44.976%
585,840
58.5840%
7,022,784
70.22784%
79,471,872
79.471872%
863,672,832
86.3672832%
9,124,660,224
91.24660224%
6 5
5.0%
140
14.0%
2,555
25.55%
38,130
38.130%
504,525
50.4525%
6,162,000
61.62000%
71,144,375
71.144375%
788,768,750
78.8768750%
8,490,265,625
84.90265625%
7 4
4.0%
112
11.2%
2,056
20.56%
31,024
31.024%
416,800
41.6800%
5,184,064
51.84064%
61,057,792
61.057792%
690,950,656
69.0950656%
7,588,071,424
75.88071424%
8 3
3.0%
84
8.4%
1,551
15.51%
23,658
23.658%
322,575
32.2575%
4,083,936
40.83936%
49,057,983
49.057983%
566,816,382
56.6816382%
6,357,469,311
63.57469311%
9 2
2.0%
56
5.6%
1,040
10.40%
16,032
16.032%
221,760
22.1760%
2,856,576
28.56576%
34,988,288
34.988288%
412,797,440
41.2797440%
4,731,954,176
47.31954176%
10 1
1.0%
28
2.8%
523
5.23%
8,146
8.146%
114,265
11.4265%
1,496,944
14.96944%
18,689,527
18.689527%
225,159,022
22.5159022%
2,639,010,709
26.39010709%

iCrushYourHead

When a coworker was recently comparing experiences with the iPod Touch, he mentioned how grateful he was to the Kids in the Hall, as emulating them had trained his finger muscles to use the device’s zoom feature. For the uninitiated, zooming out on the iPod Touch involves touching two fingers to the screen and spreading them apart, while zooming in involves moving your fingers together. This is basically the same motion used in a series of Kids sketches involving a semi-crazy guy saying “I’m crushing your head”, while making a similar motion from a distance, like this attempt to crush the head of a statue of Buddha:

Crushing Buddha's head

All this head crushing and its relation to to the iPod Touch UI got me thinking about the perfect game for the device: iCrushYourHead. The idea would be that pictures of people would randomly drift across the screen at various speeds, and using the “pinching” UI gesture, you would have to crush their heads as they passed. The crushing would be animated with a cheesy accordion-fold type effect. As the game progressed, they would drift by faster and faster, and more would be on screen at once. Naturally, you’d need to be able to import photos of people who deserve head crushing.

The same coworker, hearing this idea, suggested another game, this one for kids. It is a port of those kids books where the page is divided into three sections, one for the head, one for the body and one for the legs, where the kid will mix and match various parts to make fun combinations. It would make use of another cool UI trick on the touch, the sliding scroll gesture where you can kind of “throw” a section of a screen and it will scroll with a sort of natural deceleration. It’s hard to explain if you haven’t used the iPod Touch, but it is very natural. In the case of this game, it would act a bit like the wheels of a slot machine, that you could spin independently with varying degrees of force. The number of choices for the body parts could also be vastly larger than a physical book would allow.

Feel free to send me royalty checks if you build these games.

Burying the dragon

Unsurprisingly, after canceling all of its licensing agreements, publisher Wizards of the Coast (WotC) is releasing Dungeons & Dragons, 4th Edition.

While a forum thread seems to be tracking all the details, one thing strikes me about their announcement: it doesn’t make any mention of the Open Gaming License (OGL) or the d20 System. Since WotC has the power to revoke the latter, I’m assuming that they will soon do so, probably as quietly as possible. So you may want to download the SRD while you still can. Update: Evidently, during a press conference, Wizards did state that 4th Edition would use OGL and a new SRD. This still doesn’t prevent them from revoking d20, however.

One other interesting bit is their on-line strategy, which really does look a bit like they are trying to pull a Steve Jackson and become the central, perhaps only, online hub for the game, all built around the horribly named Gleemax. Though I can’t find a more official link, in another forum post, something called “D&D Insider Fact Sheet” is reproduced, claiming this is “one community to rule them all”.

You can bet that non-WotC publishers of d20 games will be scrambling. Perhaps they will move to Green Ronin’s True20 license, which seems to have been constructed specifically to deal with this eventuality.

Wizards is clearly betting that their fan base will follow them. I’m not sure that’s true. It’s not clear to me if the Third Edition succeeded on its own merits, or because the OGL and d20 gave players a much larger and more diverse product line. I suspect the latter.

Slaying the dragon

A little part of my childhood was killed last week. The first magazine to which I subscribed, Dragon, will no longer be published as a magazine. It, along with Dungeon, rely on a license from Wizards of the Coast (WotC), which Wizards is evidently eliminating. My fond memories of pawing through the issues I got in the mail each month (from around #70 to #125) already took one blow, when I gave the issues to a fellow gamer during a move, content in the knowledge that I had PDF versions of them. Even though I haven’t read the magazine for years, its cancellation now makes me irrationally sad.

It is also the latest in a line of such cancellations, as Wizards appears to be attempting to pull all intellectual property rights back to itself. It chose not to renew the Dragonlance license to Weis & Hickman a couple of days ago as well. White Wolf reverted its license to Ravenloft last August. Even Code Monkey Publishing, who writes d20-related software, was refused an extension to their license last November. According to them, Wizards said this was “because of future product considerations”.

What this means is not clear. Comments from the soon-to-be-former publisher of Dragon indicate that both magazines will continue to be released electronically on the WotC site. It’s possible that Wizards is just trying to be the lone nexus of all D&D related information, much in the way that Steve Jackson Games is for their own games.

Reading the tea leaves more closely, however, suggests that Wizards, after opening the content of some of their Dungeons & Dragons product with the hugely popular Open Gaming License (OGL) and the d20 System, may be looking to close it again with their next edition. The d20 System radically altered the economic landscape of role-playing games, for better and worse, and serves as an interesting case study of open licensing in a real economy. I’m not much of a fan of the d20 system, but very much like the idea of open gaming. One interesting facet of this is that, while the OGL is not revocable, the d20 license is, which may be bad news for a lot of gaming publishers. Add to that the fact that much gaming content might not even be copyrightable, and it looks like the RPG economy is going to be shaken again in the near future.

While all this is happening, Shadowrun‘s license has been sold again. The new company is (ironically, if you know the game) based in Seattle, which puts them close to FASA Interactive, a Microsoft owned company that owns the electronic rights to the game, which they are using to make a multiplayer shooter video game to be released Real Soon Now. I’m not sure the proximity will be relevant, but could be interesting. It also implies that SR will probably have a Fifth Edition before too long, even though it is the same staff as it was under WizKids.

Regardless of what games you play though, dice will likely be getting more expensive. At I-CON, I talked with one of the guys at Chessex, one of the largest dice vendors around. All of their product is made in Germany (often using machines that no one builds anymore), so they are getting nailed by the Euro-dollar exchange rate. As of this writing, buying 100€ worth of goods costs about 136USD. At the start of 2006, this same 100€ worth of goods cost only 120USD. The Chessex guy claimed they’d been resisting passing this onto the customer, but couldn’t continue doing so. This will probably make feeding my dice addiction at least 13% more painful.

So, taking all this in, I suspect role-playing, economically anyway, will get worse before it gets better, and a lot of gaming companies (and probably retailers as well) are going to get nuked. At the same time, however, companies like Drive-Thru RPG, which sells watermarked (but non-DRM) versions of role-playing products in PDF format, seem to be gaining steam and micro publishers based around electronic publishing seem to be springing up all over. Many products from these authors are extremely innovative, either thematically, mechanically, or both. I suspect that, within three years, most current paper RPG publishers will have either folded or been bought out, regressing us back to WotC, White Wolf, probably Steve Jackson Games, and maybe a half-dozen smaller players. At the same time, the electronically published RPG market will heat up a lot. It will also be where the cool stuff is happening, as the talented authors become more inclined to innovate once outside of the d20 realm. We might see one or two print-on-demand attempts, which will likely fail. In this environment, I expect open licenses to fade to nothing in the printed world, but catch on a little in the electronic micro-publisher world. Someone coming up with a good, open system, might be able to capitalize on the closing of d20 to build a big community of authors, if they time it right. I wish I had such as system, or a better oracle. Anyone know of good candidates?

Equilibrium

The best computer games are those without a victory condition. There is no such thing as “winning” a game of SimCity. Just as good are games that have victory conditions, but enjoyment of the game isn’t particularly tied to fulfilling them. In Grand Theft Auto: Vice City wandering around and doing your own thing was much more fun than following the game’s plot. Some weird convergence of thoughts on this style of gaming, Exalted and the butterfly effect resulted in the following game concept:

The setting for this game is region (or, perhaps, world) populated by human beings, but ruled by a superior form of life, perhaps humans genetically modified to be perfect and not require sleep, magical creatures (e.g. elves), an artificial intelligence, or even aliens. Maybe it’s a fantasy genre continent or a sci-fi genre planet. Whatever it is, the entire thing is run by the ruling class. Humans live decently; these rulers are not despots. The world runs fairly efficiently, but it is not a utopia by any means. Much of the system is designed to keep those in power on top, not least of which is their superior abilities. Much of the elite’s authority, however, stems from the fact that their abilities keep a large invading force at bay. Maybe they can work magic that keeps out a horde of demons, or they control ships that deter an invading alien force. Whatever the reason, the human population has a vested interest in having these elites remain in control.

An important aspect of this setting is that it has existed this way for a long time, a millennia-long stalemate between the elites and the impending doom. The economy runs like clockwork. Naturally, there are fads and trends and boom and bust cycles, but in general, everything is in a steady equilibrium.

Into this equilibrium, you, the player, is injected. You are stronger than even an elite individual, but not as strong as a group of them. You move through the world as the humans do, walking through a 3D rendered landscape and interacting directly with those around you. For some reason, you have incredible powers. Through play, you can acquire more abilities, allowing you to hold off larger and larger groups of elites. Your abilities are not only physical, but also mental and social, able to manipulate people and groups in increasingly effective ways.

Fairly early in the game’s progression, your powers make you largely immune to law enforcement, but you are never free of consequence. Your actions, even your mere presence, disturb the world’s equilibrium, you see, like The Mule. Even your smallest actions can have radical consequences down the line. Some players would seek to replace the old equilibrium with one closer to their liking. Others would foster complete chaos.

There would be several paths to playing this game. Those who focus on physical might start beating and killing people to achieve their goals, or perhaps destroy key shipments or installations. More social players would mentally dominate key figures, altering the policies of the organizations and assets they control.

In principle, the player could do anything. Want to use your powers of metal suggestion to overthrow a government? No problem. How about to sleep with a stripper you see in a club? Check. How about make yourself hideously wealthy? Have at it.

In response, the world would be simulating as much as possible. Will your seduction of a stripper effect the price of gold tomorrow? Probably not, but overthrowing the government certainly will. The idea is to have player actions generate consequences that are logical but difficult to predict. This feeds back into the player, causing even more action. Perhaps a religion springs up worshiping the player, or dedicated to his destruction.

Some of the more drastic consequences would be a concerted effort by the elites to destroy the player or the weakening of the elites to the point that the waiting invaders invade or both (perhaps at the same time). Perhaps the player can organize armies to the point that he can stave off these threats himself. Perhaps he allies with one force to destroy another. Maybe the forces ally to destroy him.

In essence, the game would be a god game, but without the controls of a god game. You can’t just hit a button to throw rocks from the heavens, mobilize armies or summon tornadoes. You have no “god view” with which to select people and change their mood; you actually have to find, get to and interact with them. There is no progress graph that shows you perfect information of the economy, attitudes or anything else. Your knowledge of the world is partial, only as good as the conduit by which it is delivered to you. While you may gain abilities that improve this, even getting information “supernaturally”, your information is never perfect.

Given the free form nature of this game, I think it would be a hit. Then, once everyone is addicted, you come out with a multi-player version, where dozens, even hundreds or thousands of Mules are let loose into the world.