You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
§21.1: "To make a Panic Check, roll the Panic Die (1d20) and attempt to roll greater than your current Stress. If you roll less than or equal to your current Stress you fail, and you look up your result on the Panic Table."
The table runs 02–20 — Nervous, Jumpy, Overwhelmed, Coward, Frightened, Nightmares, Loss of Confidence, Deflated, Doomed, … Prophetic Vision, Catatonic, Rage, Spiraling, Compounding Problems, Heart Attack / Short Circuit, Retire.
Why it is missing
#132 removed panicTable, src/game/data/panic.ts and its tables.ts consumers, on a premise recorded in a comment that is still in the source:
1e has no generic panic effects table — a failure triggers the character's own Trauma Response (their class ability).
Both exist. The Trauma Response is a class ability printed on the character-creation page. The Panic Table is a separate d20 lookup in §21.1. Removing the table lost a mechanic the rules require.
Work
Restore src/game/data/panic.ts as a d20-indexed table. Recover the file from git history (git log --all -- src/game/data/panic.ts), then check every entry against §21.1 rather than trusting the 0e text that was in it — the tiers and effects differ.
Read it through rollOnTable in src/ts/rules/tables.ts, the shape woundEffect and deathSaveEffect already use.
panicComputed in src/ts/rules/rollTemplate.ts resolves the failed roll to its table entry. Keep the Trauma Response as its own line on the card — they are different things and both fire.
The result to look up is the Panic Die roll itself, not the margin.
Constraints
Never use Promises or await in this legacy sheet's code; only startRoll may be awaited. rollPanicCheck currently needs no getAttrs at all because it references @{stress_effect} in the template — preserve that if you can.
Append any new phrase to TEMPLATE_PHRASES; never reorder it.
Blocks Adding NPC Sheet #21.3 (Conditions), which are defined as the results this table leaves behind.
§21.1: "To make a Panic Check, roll the Panic Die (1d20) and attempt to roll greater than your current Stress. If you roll less than or equal to your current Stress you fail, and you look up your result on the Panic Table."
The table runs 02–20 — Nervous, Jumpy, Overwhelmed, Coward, Frightened, Nightmares, Loss of Confidence, Deflated, Doomed, … Prophetic Vision, Catatonic, Rage, Spiraling, Compounding Problems, Heart Attack / Short Circuit, Retire.
Why it is missing
#132 removed
panicTable,src/game/data/panic.tsand itstables.tsconsumers, on a premise recorded in a comment that is still in the source:Both exist. The Trauma Response is a class ability printed on the character-creation page. The Panic Table is a separate d20 lookup in §21.1. Removing the table lost a mechanic the rules require.
Work
src/game/data/panic.tsas a d20-indexed table. Recover the file from git history (git log --all -- src/game/data/panic.ts), then check every entry against §21.1 rather than trusting the 0e text that was in it — the tiers and effects differ.rollOnTableinsrc/ts/rules/tables.ts, the shapewoundEffectanddeathSaveEffectalready use.panicComputedinsrc/ts/rules/rollTemplate.tsresolves the failed roll to its table entry. Keep the Trauma Response as its own line on the card — they are different things and both fire.Constraints
awaitin this legacy sheet's code; onlystartRollmay be awaited.rollPanicCheckcurrently needs nogetAttrsat all because it references@{stress_effect}in the template — preserve that if you can.TEMPLATE_PHRASES; never reorder it.