townsquare/README.md

93 lines
4.5 KiB
Markdown
Raw Normal View History

2020-10-01 13:19:48 +00:00
# Blood on the Clocktower Grimoire & Town Square
2020-04-18 19:14:06 +00:00
2020-04-28 19:52:47 +00:00
![image](https://user-images.githubusercontent.com/325521/80531231-8f473980-899a-11ea-96d6-edbf79337cb5.png)
2020-04-18 19:14:06 +00:00
2020-05-01 19:19:15 +00:00
This is an unofficial online tool to run Blood on the Clocktower games through Discord or other digital means.
2020-04-18 19:14:06 +00:00
It is supposed to aid storytellers and allow them to quickly set up and capture game states for their players.
[You can try it online!](https://bra1n.github.io/townsquare)
2020-11-15 21:43:21 +00:00
To set up a game as the host, check out this tutorial video:
[![Tutorial video](https://img.youtube.com/vi/-MyizvdRbVw/0.jpg)](https://www.youtube.com/watch?v=-MyizvdRbVw)
2020-10-31 18:35:24 +00:00
2020-05-24 20:56:27 +00:00
### Features
- Public Town Square and Storyteller Grimoire (toggle with **shortcut \[G\]**)
- Supports custom script JSON generated by the [Script Tool](https://bloodontheclocktower.com/script)
2020-06-05 18:21:46 +00:00
- Live Session for Storyteller / Players including live voting!
2020-05-24 20:56:27 +00:00
- Includes all 3 base editions and travelers
- Night sheet and reminder text for each character ability to help storytellers
- Many other customization options!
### Custom Characters
In order to add custom characters to your local Grimoire, you need to create a JSON definition for them,
2020-06-30 12:16:58 +00:00
similar to what is provided in the [`roles.json`](https://github.com/bra1n/townsquare/blob/main/src/roles.json) for the 3 base editions. Here's an example of how such a character
2020-06-30 11:54:45 +00:00
definition file might be written:
```json
2020-06-30 11:54:45 +00:00
[
{
"id": "acrobat",
2020-06-30 12:17:33 +00:00
"image": "https://github.com/bra1n/townsquare/blob/main/src/assets/icons/acrobat.png?raw=true",
"edition": "custom",
"firstNight": 0,
"firstNightReminder": "",
"otherNight": 49,
"otherNightReminder": "If either good living neighbor is drunk or poisoned, the Acrobat dies.",
"reminders": ["Die"],
"remindersGlobal": [],
"setup": false,
"name": "Acrobat",
"team": "outsider",
"ability": "Each night*, if either good living neighbor is drunk or poisoned, you die."
2020-06-30 11:54:45 +00:00
},
{
"id": "investigator"
},
{
"id": "imp"
}
2020-06-30 11:54:45 +00:00
]
```
2020-06-30 11:54:45 +00:00
This definition JSON includes a custom character, the Acrobat, and 2 base game characters, the Investigator and the Imp.
For base game characters, it is sufficient to only provide the ID, similar to what you get from the Script Tool.
**Required properties:** `id`, `name`, `team`, `ability`
- **id**: the internal ID for this character, without spaces or special characters
- **image**: a URL to a PNG of the character token icon (should have a transparent background!)
- **edition**: the ID of the edition for this character. can be left blank or "custom"
- **firstNight** / **otherNight**: the position that this character acts on the first / other nights, compared to all
other characters
- **firstNightReminder** / **otherNightReminder**: reminder text for first / other nights
- **reminders**: reminder tokens, should be an empty array `[]` if none
- **remindersGlobal**: global reminder tokens that will always be available, no matter if the character is assigned to a player or not
- **setup**: whether this token affects setup (orange leaf), like the Drunk or Baron
- **name**: the displayed name of this character
- **team**: the team of the character, has to be one of `townsfolk`, `outsider`, `minion`, `demon` or `traveler`
- **ability**: the displayed ability text of the character
_Note:_ custom characters are currently not supported in live sessions and will not be synchronised to other players.
2020-05-24 20:56:27 +00:00
## [Code of Conduct](CODE_OF_CONDUCT.md)
## [Contributing](CONTRIBUTING.md)
2020-04-28 20:01:41 +00:00
## Acknowledgements and Copyrights
2020-10-01 13:19:48 +00:00
* [Blood on the Clocktower](https://bloodontheclocktower.com/) is a trademark of Steven Medway and [The Pandemonium Institute](https://www.thepandemoniuminstitute.com/)
2020-05-05 10:15:09 +00:00
* Night reminders and other auxiliary text written by [Ben Finney](http://bignose.whitetree.org/projects/botc/diy/)
2020-04-28 20:01:41 +00:00
* Iconography by [Font Awesome](https://fontawesome.com/)
* Background image by [Ryan Maloney](https://www.artstation.com/maloney94)
* Webfonts by [Google Fonts](https://fonts.google.com/) and [Online Web Fonts](https://www.onlinewebfonts.com/)
2020-05-13 16:20:58 +00:00
* All other images and icons are copyright to their respective owners
2020-04-28 20:01:41 +00:00
2020-05-13 16:20:58 +00:00
This project and its website are provided free of charge and not affiliated with The Pandemonium Institute in any way.
2020-05-31 20:47:07 +00:00
## Donations
This project will always be available free of charge, since I love building cool things and playing Blood on the Clocktower. If you still want to support me with a donation, you can do that here:
2020-05-31 20:48:48 +00:00
2020-06-01 09:11:36 +00:00
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.me/bra1n)