About this project
Runlog is an extensible engine designed for dice-driven creative-practice games. Unlike traditional tabletop role-playing systems or simple randomizers, Runlog functions as a referee and run log that manages complex game states without imposing specific rules. It allows users to define their own game logic through "packs"—YAML or JSON files that describe tables, states, counters, flow, and modes.
The tool addresses the bookkeeping challenges often found in paper-based constraint games, such as backwards targeting (where current results affect past actions), accumulating states, and deferred rolls. By handling these mechanics digitally, Runlog lets players focus on the creative output rather than the arithmetic.
Key features include:
- **Pack-Based Design**: Users can create custom games using the provided schema. The repository includes several example packs like "Any Given Day," "Homefront," and "Practice Room," which exercise various mechanics such as weather effects, patience resources, and timed rooms.
- **Streaming Integration**: Runlog provides a stream mode suitable for content creators, offering chat-visible twists, scoreboards based on chat rosters, and widgets compatible with browser sources.
- **Flexible Deployment**: It runs entirely in the browser. Options include using the hosted version at runlog.scrthq.com (with accounts and sync), the GitHub Pages instance (no sign-in required), or self-hosting on personal infrastructure including AWS.
- **Authoring Tools**: Developers can use CLI commands (`npx @scrthq/runlog init`, `validate`, `test`) to create, validate, and test their game packs against fixtures.
Runlog distinguishes itself from virtual tabletops and spin wheels by supporting rounds and consequences that persist and interact over time, running alongside whatever activity the user is already engaged in. The project is MIT licensed, allowing users to retain ownership of the packs they create.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.