v1.5.0
The GM gets a sheet of their own. The GM playbook is on screen now, one per world, on your C key, with the Threats and Sites prep moved onto it. Alongside it: the steading knows which season the table is playing in, a place can be written up the way Book I says and pinned to the map, and Import Book Art reads the publisher's free GM playbook, which prints the regional maps sharper than either rulebook and holds the only copies of the two flowcharts.
The GM Toolkit
- A fifth actor type, minted for you, one per world, and undeletable, wearing its own portrait. Open it from the sidebar or the
Ckey. Nothing on it is per-GM, so every GM at the table reads and writes the same sheet. - GM Moves carries what Book I actually says: the agenda, the thirteen principles, and each move's own text with the soft/hard line where there is one and the examples of play in the book's voice. Each entry's summary line is the book's own first sentence, and opening it carries that sentence on rather than restating it in different words. A die at the top walks the list before it lands.
- Homefront leads the rail: the village's own facts (how many people, where the water comes from, who decides), the year's work season by season, the Aftermath and Downtime procedures that bracket every expedition, and Make a Plan.
- Core Loop holds the playbook's two flowcharts, which open in a window you can zoom and pan without being thrown out of the game to read a page of your own rulebook.
- "I wonder..." is the one page on the sheet a GM writes rather than reads (Book I p.33): a running list of open questions, ruled the way the playbook rules it. Ticking one files it under Answered, the arrow puts it back, and the bin asks first.
- Threats & Dangers and Sites have moved here off the steading sheet.
Sites
- Create a Site: write a place up the way Book I tells you to, in a wizard that walks its questions and answers, its areas, its denizens and its dangers, and pin the finished thing to the map.
The steading, the season and the weather
- The header has a clock. Beside the title, the season Stonetop is in and the year it belongs to, stamped by the Seasons Change move and drawn in that season's own ink. A GM clicks it to correct what it says; a player gets the same readout as plain text. The season half stays blank until a Seasons Change has actually been recorded, rather than guessing.
- The year is a number you can type, not a list of the years this system happened to watch pass. A table that adopted the sheet in their fourth year had no way to file the season they were actually playing.
- The GM can run Seasons Change from the header itself.
- The Weather picker sits on its answer before the table sees it. The roll lands a light on a row and stops there: the footer offers Re-roll and Post the weather, so a discarded result never turns up in the chat log. The rows are real buttons as well, so a GM who would rather name the day than roll for it can just click it ("You decide when it rains", Book I p.324), and a chosen row posts with no die and no total on it, because there was no die. The weather rolls on the season the table is actually in.
Import Book Art
- The importer takes a third PDF: the publisher's free 12-page GM playbook. It prints all three regional maps at a true 300 dpi, where Book I embeds the village map at 478x272 and Book II prints the other two over a ~700px raster, and it is the only place the core-loop and flow-of-play diagrams appear at all. All three inputs stay optional and independent.
- It reads the 1-up booklet as well as the spreads PDF, detecting the layout from the page's own shape rather than from a page count, and stitching a sheet back out of its page pair so a crop that crosses the gutter still means what it says.
- Four more bestiary entries get their Book II illustrations placed: Crinwin, Brennauwed, Elemental Vortex and The Pale Hunter.
- Each page of the wizard imports its own errand, and a one-book run reports the errand it was actually given.
- Fixed: a spread was composited into one canvas, and pdf.js fills the whole target canvas at the start of every render, so the second page erased the first. Sheets came back blank down their left half, which took the core-loop flowchart and the left page of all three regional maps with it, and logged nothing.
Portraits and tokens
- A creature's token stands on a square cut from its own picture, and a person's portrait is the whole illustration again, with the hand-cut square riding over it as a frame on our own surfaces and under the token as a file. A module reading
actor.img, such as Image Hover on a token, now gets the artist's whole composition for a person and a creature alike, instead of two different answers to the same gesture. - Fixed: ninety bestiary moves across sixty-five stat blocks rendered an empty box, because five of the core icon names they had been assigned are not in Foundry's bundled library at all. A wrong icon path fails the way a wrong image path always fails in a browser: a blank frame, no error, no log line.
On the character sheet
- What you are holding now stands beside the name plate: a Judge's oaths, the Blessed's marks, the Battle Joy, and the Invocation you are concentrating on.
- Identify an artifact by Knowing Things about it, or by asking the GM.
- Using Purifying Flames is the Clash it grants. The Lightbearer's holy light counts as a weapon, so the move now is that attack with the light already in hand, rather than three deliberate steps through Clash, a stat prompt and a weapon prompt to reach the one state the move exists to describe. A cancelled weapon prompt no longer counts as a roll.
- The Moves tab's category split is a toggle. Playbook Moves heads the playbook's three onboarding clusters by default, and a checkbox beside "Hide un-learned moves" puts the flat list back.
- A section can start folded, and a heading can deal you one of its rows at random.
- Run an Expedition survives a browser reload, opens at a height it keeps, and the gold it paints has a name.
- Fixed: the die you actually roll, the number a hand-set max HP is measured against, and a debility that healed you backwards. A write that fails no longer leaves the window latched, the choice lost, or the maiming recorded twice. Death's Door announces the write that landed, and the post-death steps count only what the player chose.
Under the hood
npm testnow checkssystem.jsonitself. Every module, stylesheet, pack and subtype it declares has to exist, walked component by component so a case-only path difference fails in the suite rather than silently 404ing on a Linux host. The first thing it caught: all sixJournalEntryPagesubtypes were missing from the language file, so a bestiary entry's own header rendered the literal stringTYPES.JournalEntryPage.bestiary.- The release build's art-leak guard checks all seven private art directories rather than the three it knew about when it was written, and a test keeps the copies of that list honest against each other.
- The character sheet's repaint walks the items once instead of seven times, and the GM sheets stop re-localizing their static reference on every prep write in the world.
Install or update with the manifest URL, which never changes:
https://github.com/PrinceWitherdick/stonetop-pwd/releases/latest/download/system.json
What's Changed
- add 2x image size handling for selected failing images in pdf by @zxaos in #4
- Release 1.5.0 by @PrinceWitherdick in #5
New Contributors
Full Changelog: 1.4.0...1.5.0