The greatest thing to happen since... uh... I dunno.
It turns out that there is an established schema used by TPI et al to store scripts more complicated than those used in the script tool. They look something like this:
{
"id": "widow",
"name": "Widow",
"edition": "experimental",
"image": [
"https://i.imgur.com/widow.png",
"https://i.imgur.com/widow_good.png"
],
"team": "minion",
"firstNight": 22,
"firstNightReminder": "Show the Grimoire for as long as the Widow needs. The Widow chooses a player.",
"otherNight": 0,
"otherNightReminder": "",
"reminders": ["Poisoned"],
"remindersGlobal": ["Knows"],
"setup": false,
"ability": "On your 1st night, look at the Grimoire and choose a player: they are poisoned. 1 good player knows a Widow is in play.",
"special": [
{
"name": "grimoire",
"type": "signal",
"time": "night"
}
],
"jinxes": [
{"id": "alchemist", "reason": "The Alchemist can not have the Widow ability."},
{"id": "magician", "reason": "When the Widow sees the Grimoire, the Demon and Magician's character tokens are removed."},
{"id": "poppygrower", "reason": "If the Poppy Grower is in play, the Widow does not see the Grimoire until the Poppy Grower dies."},
{"id": "damsel", "reason": "Only 1 jinxed character can be in play."},
{"id": "heretic", "reason": "Only 1 jinxed character can be in play."}
]
}
I rewrote most of scripts.json (and a nontrivial part of main.js) to comply with the majority of this schema. Notable exceptions include "edition", "special", and "jinxes", which shouldn't be too relevant on homebrew, but we'll see.
Why these changes? Now, we can import and use scripts made by people who aren't TPI. Specifically, >90% of the stuff on Bloodstar clocktica, a BOTC homebrew creation site, can now be imported in the Grimoire and used as-is, with no significant changes.
As an example, here's A LOTR-inspired script, with abilities, reminders, and the night order working as intended:
Through careful shenanigans and Ada's work, any characters from any homebrew can be combined to create the most ungodly script imaginable. please don't.
The greatest thing to happen since... uh... I dunno.
It turns out that there is an established schema used by TPI et al to store scripts more complicated than those used in the script tool. They look something like this:
I rewrote most of scripts.json (and a nontrivial part of main.js) to comply with the majority of this schema. Notable exceptions include "edition", "special", and "jinxes", which shouldn't be too relevant on homebrew, but we'll see.
Why these changes? Now, we can import and use scripts made by people who aren't TPI. Specifically, >90% of the stuff on Bloodstar clocktica, a BOTC homebrew creation site, can now be imported in the Grimoire and used as-is, with no significant changes.
As an example, here's A LOTR-inspired script, with abilities, reminders, and the night order working as intended:
Through careful shenanigans and Ada's work, any characters from any homebrew can be combined to create the most ungodly script imaginable.
please don't.The Unreleased characters are bundled into this update, via an extra script ripped from the relevant Bloodstar location.