I know what the code needs to do for runtime serializer validation, but I'm not totally sure how to actually wedge the functionality in there.
Part of the problem is that the module for managing modules/sheets/tables is starting to feel bloated to me. I think I need to set aside some time to pin down what I'm trying to accomplish, and how each part fits into that. Let's see what I can do towards that right now, in the next fifteen minutes or so.
Basically, I want to play tabletop games that aren't not meant for solo play, and I've got a few issues:
- Even with my heavily tricked-out rules binder (so many flags sticking out of everywhere), it's sometimes a pain tracking down the relevant rules, and I've got new rules I want to try out.
- We don't have many dice.
- I don't want to have to keep track of physical character sheets, especially if I decide I want to do something like, I don't know, Danger Patrol but it's Retrocausality.
The second bullet point is an extremely solved problem by now. I have iterated on code to handle this a whole bunch, and it's fine. The first bullet point requires work to be done per-system, and also needs the third bullet. The third bullet is what I've been focusing on recently.
Putting them out like this suggests some avenues of improvement. The second-bullet code is spread across seven modules, while the third bullet point is crammed into one.
That's the first order of business: figuring out all of the responsibilities in this module so I can carve it up.
Anyway, it's been more than fifteen minutes and I'm about to fall asleep.