A dice table is a direct translation of a gaming table from a book,
where the table has a stated dice expression, and each entry has a
numeric range. Most tables can now be taken as is from published
sources.
Also, if a message from a randomly rolled table contains a dice
expression, like Found 2d8 scrolls, the expression is automatically
substituted.
Finally if a message contains something like:
You found a [wolf/fox/badger].
The displayed message will only include on of those entries.
Some of these tables are getting complicated, so I have created three
different tables, and this should be sufficient.
Describing it, however, seems to be a lot for source code, and I thought
I would describe it using a literate programming style. We'll see.