You want to measure values from ~0 - ~90. You want even distribution, and high granularity (i.e. as many distinct values as possible).
Well, that's easy.
(Ceiling(1d6 / 2) - 1) * 36 + (1d6 - 1) * 6 + (1d6 - 1) AnyDice
Provides values of 0 to 107, with even probability, and each value represented exactly once.
Ceiling(1d6 / 2) is effectively 1d3. I.e. 1,2 is one, 3,4 is two, 5,6 is three.
The AnyDice plot uses d3, because it doesn't understand the Ceiling function (as far as I know). Rest assured, it works using entirely d6s and math.
We can also use d3 notation to simplify the formula:
(1d3 * 36) + (1d6 * 6) + (1d6) - 43
Instead of subtracting one from each die roll, you can treat the highest value as zero. I.e. 1d6 gives values of 1, 2, 3, 4, 5, 0.
You can compress or expand the results with multiplication to get the exact range you want. I.e. multiply the result by 0.841121495 to get a 0-90 range. However, this will cause some values (distributed evenly across the range) to become more probable.
If your RPG is printed in any form, you can simplify matters with a lookup table. For each age value, record what the dice show to produce it. Then just have the player roll three distinct six siders, and look up the result in the table.
You can reduce the overall size of the lookup table by doubling up on the most significant die, or by using d3 notation. This will result in a table with 108 entries.
| 1 | 2 | 3 | Age |
| 1,2 | 1 | 1 | 0 |
| 1,2 | 1 | 2 | 1 |
| 1,2 | 1 | 3 | 2 |
. . .
| 3,4 | 1 | 1 | 36 |
| 3,4 | 1 | 2 | 37 |
| 3,4 | 1 | 2 | 38 |
Accentuating the Extremes
dpatchery raised the question of how to create a curve that skews the results toward the extremes to make silly results pop up more often.
BlueRaja - Danny Pflughoeft provides an answer:
Take a bell curve (ex. sum n d6 and subtract n), add max/2, mod max. This essentially chops the bell-curve in half, and moves the left-half to the right of the other half.
If I understand him rightly, this leads to something like:
((18d6 - 18) + 45) mod 90
Simplifying gives us:
(18d6 + 27) mod 90