# Game Log RPGs I've played ## About This is a log of all the games I've played starting in 2021. I'm keeping this log in anticipation of writing a "Every game I played in 2021" blog post in 2022. I decided to use recutils for this because, why not. ## Getting Started You don't need to install anything if you don't want to. You can just edit the rec file. But if you want to use the TUI, then `npm i` and `just new` (or `node bin/cli.js`) to create a new entry using the interative prompt. ## Dependencies - GNU recutils - node (optional) - just (optional) - csvkit (optional) ## Considerations What kind of stuff am I interested in keeping track of? - Role: Player or DM? - Format: In person? (Ha, one day.) Roll20/Discord? Play by post? - Length: One-shot, adventure, campaign? - Crew: Who did I play with? ## Schema You should probably just read the recfile because that will always be the source of truth, but at the time of this writing, the schema is as follows. ``` %rec: Game %doc: a ttrpg game I have played or am playing %key: Id %type: Id int %type: System,Module,Format line %type: Updated,Started date %typedef: Role enum DM Player %typedef: Length enum Campaign Adventure Oneshot %typedef: Status enum Ongoing Complete Hiatus Dead %auto: Id Updated %mandatory: Id System Module Format Notes Updated Started Role Length Status ``` Note: `Notes` (arguably the most important field) does not have a type because there is no valid type for multi-line entries in recfiles. Thus is remains untyped, uncheckable by recins, and undocumented in the schema. I consider this a bug of the recutils. ## Learnings check out [doc/learnings.md](doc/learnings.md) ## Recsel examples - `recsel -e "Role = 'Player'" games.rec` See `justfile` for more examples ## Todo - [x] Add types/enums - [x] ~~tui?~~ run `just new` (or `node bin/cli.js`) - [ ] add Update to CLI ## Resources - - -