
How Gaming Got Its Dice (2013) - benbreen
http://playingattheworld.blogspot.com/2013/02/how-gaming-got-its-dice.html
======
tzs
> There is no intuitive way to extract percentile results from rolling a small
> number of d6s.

Here is an algorithm for rolling a single decimal digit using on average about
2.19 d6 rolls (which can be done in parallel if you have more than one d6):

    
    
      function one_digit
        d = roll()
        while d == 6
          d = roll()
        if roll() <= 3
            return d - 1
        else
            return d + 4
    

Do this twice to get a percentile. This seems reasonably intuitive to me.

~~~
tzs
The problem of doing the job of a d10 with a d6 can provide a nice
illustration of an application of bases other than 10. Might be useful for an
elementary school math teacher trying to explain why the kids should learn
this stuff.

Write the numbers from 0.0 through 0.9 in steps of 0.1, but write them in base
6, to produce this table:

    
    
      dec base 6
      0.0 0.0000
      0.1 0.0333...
      0.2 0.1111...
      0.3 0.1444...
      0.4 0.2222...
      0.5 0.3000
      0.6 0.3333...
      0.7 0.4111...
      0.8 0.4444...
      0.9 0.5222...
    

Roll a d6 to generate base 6 digits, which you take as the digits of a
base6-imal fraction in [0,1). Roll until you have enough digits to determine
which [k/10, (k+1)/10) interval it falls in, using the above table as an aid.

In general this can be used to make a table for simulating a dN with a dM, by
writing i/N in base M for i = 0 to N-1.

When M is 2 this gives a nice way to simulate a dN with coin flips.

The above can be made easier to use by representing it in a graph instead of a
table, where you start at a root node and follow edges labeled by dM values,
and the leaf nodes give the dN values.

That would be easy and fast to use.

~~~
mhink
I've never heard of this method before! That's a _really_ nifty trick, thanks
for putting it here!

~~~
tzs
Here's another approach you might enjoy. We wish to simulate a dN with a dM.
I'll use simulating a d10 (N=10) with a d6 (M=6).

1\. let L = a common multiple of N and M. The least common multiple of N and M
is a good choice here, so for our example we'll use L = 30.

2\. Make a list of the values you are trying to choose from. Repeat each value
L/N times, so that the length of the list is L. For our example, L is 30, N is
10, and L/N is three, so our list consists of the values 1 through 10 each
repeated 3 times: [1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10
10].

3\. Viewing this list as M chunks of length L/M, select one of the chunks at
random via a roll of our dM. For our example that is 6 chunks of length 5.
Here is the list again with parenthesis drawn around the 6 chunks: [(1 1 1 2
2) (2 3 3 3 4) (4 4 5 5 5) (6 6 6 7 7) (7 8 8 8 9) (9 9 10 10 10)]

4\. Take the chunk selected by the roll of the dM. If all L/M numbers in the
chunk are the same, that is the value of our simulated dN roll and we are
done. Let's say we've picked the second chunk, (2 3 3 3 4). That contains more
than one distinct value, so we go on to step #5.

5\. Replace the list with the items from that chunk, each repeated M times. In
our example, our new list is [2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
4 4 4 4 4 4].

6\. Go to step #3.

Note that the second time through this is how we chunk the list: [(2 2 2 2 2)
(2 3 3 3 3) (3 3 3 3 3) (3 3 3 3 3) (3 3 3 3 4) (4 4 4 4 4)]. 4 of the 6
chunks contain only one distinct value now, so there is a 2/3 chance that we
find our d10 value on the second iteration.

If you actually implement this, you don't need to actually make the lists like
I did above. You just need a count of how many times each thing appears. So
instead of [1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10]
you would have [3 3 3 3 3 3 3 3 3 3], meaning you have three '1', three '2',
and so on.

To pick the second chunk, you skip 5 items and then take 5. That means we skip
all 3 '1's, and 2 of the '2's, and take 1 '2', then all 3 '3's, and 1 '4'.
That gives us [0 1 3 1 0 0 0 0 0 0].

BTW, note that this also works for simulating a smaller die with a larger die.
For example, simulating a d6 with a d10. There is a really simple way to do
that, of course: roll the d10 and discard anything above 6. With that method,
you get a d6 output on 6 out of 10 rolls. Let's call this method the trivial
method.

If we use the list method as described above, we get a higher output rate.
Here is a little table:

    
    
      1 1 1 (1)
      1 1 2   111 111 111 111 111 111 112 222 222 222
      2 2 2 (2)
      2 3 3   222 222 222 233 333 333 333 333 333 333
      3 3 3 (3)
      4 4 4 (4)
      4 4 5   444 444 444 444 444 444 445 555 555 555
      5 5 5 (5)
      5 6 6   555 555 555 566 666 666 666 666 666 666
      6 6 6 (6)
    

On the left, the first 3 columns just show the initial [1 1 1 1 1 2 2 2 2 2 3
3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6] list (N distinct values each repeated
L/N times) broken down into groups of L/M, which is 3 in this case.

If our d10 roll is 1, 3, 5, 6, 8, or 10 we count that as a successful d6 roll
of 1, 2, 3, 4, 5, or 6, respectively, because those chunks all have only one
distinct value. I've marked those in the table with the resulting d6 value in
parenthesis. So, on the first d10 roll we get a d6 value 6 out of 10 times,
just like with the trivial method.

Where we beat it is on the next roll. For each chunk that does not yield a d6
value on the first row, I've added the resulting list, grouped into chunks.
Note that in all 4 of the possible lists, 9 out of the 10 chunks have only one
distinct value, and so 9 out of 10 times the second roll yields a d6 value.

If the second roll fails too, the trivial method will again only succeed 6/10
times on the third roll. Again we beat it, with a 9/10 success rate, and so
on.

------
the_af
Interesting that once there was a trend in tabletop wargaming towards
"realistic" probabilities expressed as a percentage (e.g. "these riflemen have
a 70% of hitting the target"). I think this isn't as common anymore.

Nowadays, for whatever reason, I see a trend back to the humble d6, both in
historical wargaming and fantasy skirmish games. Many wargames use d6 in
disguise (see: Bolt Action, SAGA, Warhammer). I think it has to do with two
things: the d6 is readily available (though, one has to wonder, why is this an
issue when everything else in wargaming isn't as easy to find, like the
miniatures and tokens!), and the other fancier dice didn't pan out _in
practice_.

~~~
dragonwriter
> and the other fancier dice didn't pan out in practice.

For wargaming I think what happened is that “special dice and more detailed
simulation” moved into “computerized simulation” (which allows a lot more
depth with less player-managed overhead) in the late 1980s through the 1990s,
and most of that whole end of the hobby left the tabletop world.

~~~
ghaff
Yeah, although the more complex simulations have largely have largely faded
away from the computer space as well. (With a few exceptions.) And very niche
board games are probably more viable than very niche computer games. Modder
communities for some old computer games notwithstanding.

Personally, I confess to finding complex simulations (whether of the board
game or flight/combat genres) more appealing in theory than I do in practice.

~~~
Fomite
They're also a pain to make. I work on complex simulations for a living, and
the number of parameters and data sets you need to get good results is
staggering.

If you end up just going "We think it's about 100 meters" that's a lot of
effort for not much reward.

------
SurrealSoul
> There is no intuitive way to extract percentile results from rolling a small
> number of d6s.

Shadowrun 5e -> Roll 21d6 defense test against a 18d6 attack.

In all seriousness, good article. I always wondered where the need of the d20s
came from, and always wondered why d10s and the likes didn't catch on. I
always had shadowrun to blame for an ungodly amount of d6's laying around my
house

~~~
aidenn0
Is 5e any good? I loved the flavor update in 4e, but felt like they threw out
a lot of what was good with the mechanics from 3e.

~~~
SurrealSoul
Yeah, besides the huge amount of errata and bizarre inconsistencies between
what you would expect a roll to be vs what it actually is 5e is ok.

The amount of flavor is sad, but at lest deckers are cool now since
[everything] is wireless.

------
ideonexus
Does anyone know where I could find the Gygax article mentioned, "Four &
Twenty and What Lies Between"? I loved his explanation of probabilities with
dice and cards in the 1989 "Advanced Dungeons & Dragons, Dungeon Masters
Guide" (apologies for my book-scanner errors):

 _As the DM, the tools of your trade are dice — platonic solid-shaped or just
about any other sort. The random numbers you generate by rolling dice
determine the results based on the probabilities determined herein or those
you have set forth on your own. In case you are not familiar with probability
curves, there are two types which are determined by your dice: linear
(straight line), 'which has equal probability of any given integer in the
number group, and bell (ascending and descending line), which has greater
probability towards the center of the group of numbers than at either end. The
two curves are illustrated thus:

[Image of linear curve for 10-sided dice, with each number having a 10% chance
of coming up.]

Linear probability develops a straight line of ascending probability when used
as a cumulative probability as shown above.

Bell distribution, when used to delineate the probability of certain numbers
appearing, develops o curved line like this:

[Image of a bell curve for a 3d6 roll, with 3 and 18 being the least probable
and 8 through 12 being the most probable.]

A single die, or multiple.dice read in succession (such as three dice read as
hundreds, tens and decimals) give linear probabilities. Two or more dice added
together generate a bell-shaped probability curve.

Before any further discussion takes place, let us define the accepted
abbreviations for the various dice. A die is symbolized by "d", and its number
of sides is shown immediately thereafter. A six-sided die is therefore "d6",
d8 is an eight-sided die, and so on.-Two four-sided dice are pressed by 2d4,
five eight-sided dice are 5d8, etc. Any additions to or subtractions from the
die or dice are expressed after the identification, thus: d8 8 means a linear
number grouping between 9 and 16, while 3d6 -2 means a bell-shaped progression
from 1 to 16, with the greatest probability group in the middle (8, 9). This
latter progression has the same median numbers as 2d6, but it has higher and
lower ends and a greater probability of a median number than if 2dl2 were
used. When percentage dice are to be used; this is indicated by d%.

The d4 can be used to generate 25% incremental probabilities, random numbers
from 1 to 4, with 1 it generates a linear 2-5, etc. It can be used to get 1 or
2 (1 or 2 = 1, 3 or 4 = 2) or in conjunction with any other dice to get linear
or bell-shaped probability curves. For example, 2d4 = 2-8, 3d4 ^ 3-12, d4 d6 =
2-10, d4 d20 (as dlO) = 2-M.'when rolled in conjunction with another die, the
d4 can be used to determine linear number ranges twice that shown on the other
die, thus: d4 reading 1 or 2 means that whatever is read on the other die is
the number shown; but if the d4 reads 3 or 4, add the highest number on the
second die to the number shown — so if d8 is the second die 1 to 16 can be
generated if a dl 2 is used 1 to 24 can be generated. If a d20 is used either
1 -20 (assuming the use of a standard d20 which is numbered 0-9 twice without
coloring one set of faces to indicate that those faces have 10 added to the
number appearing) or 1-40 (assuming that one set of faces is colored) can be
gotten by adding 0 if 1 or 2 is rolled on the d4 and 10 or 20 (depending on
die type) if a 3 or 4 is rolled. Linear series above this are possible simply
bv varying the meaning of the d4 number; 1 always means add 0, but 2 can be
interpreted as add the value (highest number) of the second die, 3 can be
twice value, and 4 can be thrice value. Thus, a d4 reading 4 in conjunction
with a d8 (linear curve 1-32) would mean 24 d8, or 25-32.

What applies to d4 has similar application with regard to d6, d8, dl2, and
d20. The d6 has 16 2/3% intervals, d8 has 12 1/2% intervals, and d20 can have
(1-2 = 1,3-4 = 2,5-6 = 3), while 1 to 5 can be easily read from a d20 (1-2 =
1, 3-4 = 2,5-6 = 3,7-8 = 4,9-0 = 5).

The d20 is used often, both as dlO and d20. The bell-shaped probability curves
typically range from 2-20 to 5-50, i.e., 2, 3, 4 or 5d20 added together. Also
common is the reading as above with one decimal place added to the result to
get 20-200, 30-300, etc. In the latter case, a roll of 3 on one die and 0
(read as JO) totals 13, plus one place, or 130.

Non-platonic solid-shaped dice are available in some places. The most common
of these is a ten-sided die numbered 0-9. As with the d20, this con be used
for many purposes, even replacing the d20 if a second die is used in
conjunction to get 5% interval curves (1-20). Also, the die can give 0-9
linear curve random numbers, as the d20 can.

Other dice available are various forms of "averaging" dice. The most common of
these has six faces which read: 2, 3, 3, 4, 4, 5. The median of the curve it
generates is still 3.5, that of a normal d6, but the low and high numbers, 2
and 5, are only half as likely to appear as 3 or 4. There is a 33 1/3% chance
for either of the two latter numbers to be rolled, so the probabilities of
absolutely average rolls are far greater. Other such dice have zeros on them,
several low numbers, and so on. These sorts of dice, along with poker dice,
"put & take" dice, or any other sort can be added in order to give you more
flexibility or changing probabilities in random selection or event
interpretation. For example:

The author has a d6 with the following faces: SPADE, CLUB, CLUB, DIAMOND,
DIAMOND, HEART. If, during an encounter, players meet a character whose
reaction is uncertain, the card suit die is rolled in conjunction with 3d6.
Black suits mean dislike, with the SPADE equalling hate, while red equals
like, the HEART being great favor. The 3d6 give a bell-shaped probability
curve of 3-18, with 9-12 being the mean spread. SPADE 18 means absolute and
unchangeable hate, while HEART 18 indicates the opposite. CLUBS or DIAMONDS
can be altered by discourse, rewards, etc. | Thus, CLUBS 12 could possibly be
altered to CLUBS 3 by offer of a tribute or favor, CLUBS 3 changed to DIAMONDS
3 by a gift, etc.

In closing this discussion, simply keep in mind that the dice are your tools.
Learn to use them properly, and they will serve you well._

[Edited for some scan errors.]

~~~
dallas
_Gary Gygax writes an article for Lowrys Guidon entitled "Dice...Four & Twenty
and What Lies Between", in which he expounds on the application of various
polyhedral dice in wargaming--specifically, Tractics._

From:
[http://www.commonroomgames.com/timeline.html](http://www.commonroomgames.com/timeline.html)

Don't know where to source a copy however.

