Commit graph

9 commits

Author SHA1 Message Date
Howard Abrams
bdbc57448a Writing some unit tests for some of the functions. 2022-02-18 15:25:54 -08:00
Howard Abrams
5455785b08 Like Athena, this project emerged fully formed from my head
At least, from this historical record as preserved by git, it is.
In reality, this project represents a year of off-and-on development
in another git repository, and has been converted and reformatted
for (potentially) public consumption.

Particularly lacking is the Tables and other charts that make this
useful, but I need to make sure I don't violate any copyright laws, as
many of my tables were copy/pasted from digital books I own.
2022-02-18 15:25:05 -08:00
Howard Abrams
70586400a4 Delayed loading of Chart Tables
Because loading the tables is now getting time and space prohibited, we
are now just storing the the name of the table and the filename ... at
first. Then once we ask for a chart, we fetch the chart and choose some
results.

Loading the tables is now not a cost issue ... and Emacs more stable.
2021-03-23 13:43:36 -07:00
Howard Abrams
3da1174673 Fix table to return nil if table not found
This will make it easier for me to write functions to return values on
tables that may or may not exist.
2021-02-27 00:21:19 -08:00
Howard Abrams
9719a29c3c Tables are now in a hierarchy
This should make creating NPC tables easier by grouping them.
2021-02-22 22:27:53 -08:00
Howard Abrams
656c168a52 Add dice tables
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.
2021-02-11 22:08:06 -08:00
Howard Abrams
7dab533415 Working with both Dice and Frequency tables
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.
2021-02-08 15:26:16 -08:00
Howard Abrams
558d7eb984 Code functional with a good README and Interface
Wrote some reusable instructions as well as polished a minor mode and a
hydra for easily using the code. Time to try it out in production.
2021-02-01 17:52:40 -08:00
Howard Abrams
9411e512ce After a night or two of late hacking...
I have a semblance of code giving me functions to help me run my D&D
games. The README needs a lot more love, but the code is generally tidy.

Time to add some tables...
2021-01-29 23:18:36 -08:00