Cyberpsychosis Flare
Mo' fun mo' 'chosis
A Foundry VTT module for the cyberpunk-red-core system. It rolls a cyberpsychosis episode from tables, and the character's current Humanity decides how bad it gets. The lower Humanity drops, the more dice you roll and the more tables join in.
| Tier | Humanity % | EMP (core rules, default) | Rolls |
|---|---|---|---|
| — | — | 3+: stable | Nothing, unless the dialog's "roll anyway" box is ticked (Tier 1) |
| 1 Glitch | above 66% | 2 | Symptom 1d20 |
| 2 Fracture | 34–66% | 1 | Symptom 2d20 + Focus 1d20 |
| 3 Break | 33% and below | 0 | Symptom 3d20 + Focus 1d20 + Break 1d10 |
| 4 Cyberpsycho | Humanity below 0 | Humanity below 0 | Tier 3's rolls + Cyberpsycho 1d6 |
Pick the column with the Rule mode setting.
Humanity % measures against the character's starting Humanity (original EMP × 10), not the current max. In CPR every piece of installed cyberware lowers max Humanity by 2 (borgware by 4), and therapy can't win that back. So an EMP 6 character at 18/18 is at 30%, not 100%.
EMP (core rules) works out EMP the way the rulebook does: the tens of Humanity, except that EMP only reaches 0 when Humanity does. So Humanity 5 is EMP 1, even though the Foundry sheet shows 0.
Double Trouble is an optional setting for more Symptoms as things get worse. Tier 2 (EMP 1) rolls two Symptoms, each on 2d20, and Tiers 3 and 4 (EMP 0 and below) roll three, each on 3d20. Focus, Break and Cyberpsycho still roll once. It works in either rule mode.
Tier 4 is for when Humanity goes below 0, which the Foundry system allows. In both modes the character is gone, and the GM takes control. The Cyberpsycho table says how they behave.
The Symptom table runs 1–60 and gets worse as the numbers go up, so each extra d20 pushes the average result into nastier territory. Some entries roll again: Immediate Escalation (mods) and Glitch Loop (directives). A reroll never triggers another reroll, so it can't loop forever. Results never repeat within one episode: if a roll lands on an entry its table has already given, it's rolled again.
Results are whispered to whoever rolled. A tick-box in the dialog also shows them to the GM (when a player rolls) or to the character's owners (when the GM rolls).
Getting Started
Fun example
Poor Jimmy Cyberpunk decided to install all of his chrome at once. "It'll never happen to me, 'chosis is for gonks" he muttered, lying down on the ripperdocs table. As his eyes close from the administered cocktail of downers, the sound of rattling plastic on wood fills his ears.
Data Obsession - Threat Readout: You must narrate the visible weapons and armour of everyone in the room, as if reading them off a HUD.
Major Intensity: The action or tic is loud, visible, and agressive. If it's speech, it's shouted. If it's a tic, it's violent. It lasts for the entire scene.
Paranoid Overdrive: You view all current incoming communications or physical approaches as active hostile signal interception. Must immediately break line of sight or cut comms.
Jimmy opens his eyes. He feels strong. Fast. Alert.
He sits up and stares up from the table he woke up on, to see the Doc. Only, surrounded by a cloud of angry serial numbers. As Jimmy locks his eyes, the serial numbers stare at him. READ US, they say. Jimmys lips tremble.
"Ya'll right, choom?", he hears, in the distance.
"M73-ARAS-2020K-BLACK", Jimmy screams at the Doc.
The Doc quickly reaches for his pocketed Agent, being only too familiar with the scene unfolding infront of him. Jimmy immediately sits up on the table, still screaming ID numbers, scrabbling at the wires attached to his arms and temples. Ripping them out, Jimmy falls off the table and scrabbles to a corner of the room, still shouting ID numbers at the Doc...
The Doc puts his hands up, "Chill choom! It's aight, you're safe! Look, I just gotta call..."
Jimmy cuts him off; "MFI-3000-2091A!", jumping through the nearest closed window, shattering out onto the street, and running away leaving bloody footsteps, yelling at anyone nearby about "KIL-402019".
Doc dusts his hands off, throws a bloody cloth into the sink next to him.
"Fuck it".
He picks up a double barrel shotgun and heads out of the door.
Install
In Foundry: Add-on Modules → Install Module, and paste this manifest URL:
https://gitlab.com/surrealtech/cpr-cyberpsychosis/-/raw/main/module.json
Custom tables
The tables also ship as Foundry RollTables, in the Cyberpsychosis Tables compendium. When the world has a copy of one, the module rolls from that copy instead of its built-in data. To change what gets rolled:
- Run the Install Cyberpsychosis Tables macro from the Cyberpsychosis Rolls compendium, or
api.installTables(). As GM, it copies the four tables into a Cyberpsychosis Tables folder and skips any that are already there. Importing them from the compendium by hand works too. - Edit the world tables in Foundry's normal RollTable editor. You can add, remove, or rewrite results and change their ranges. Start a result with
<strong>Name</strong>to give it a title on the chat card. Inline rolls like[[/r 1d6]]work. - To go back to the built-in tables, delete the world copy.
The module finds a table by a hidden flag, so the table's name doesn't matter and only the installed or imported copies count. A blank table you make yourself won't be picked up. Instead, create a table and use Import Data with one of the JSON files in dist/rolltables/ (actions, mods, directives, psycho). That brings the flag across.
Dice still come from the tier. If your table is shorter than the dice can roll, any total past the end lands on your last result. If it's longer, the extra results never come up: the dice top out where the built-in table ends (Symptom 60, Focus 20, Break 10, Cyberpsycho 6).
Face animation: set an image or video (GIF, WebP, WebM) in the module settings. Until you do, it uses the character's portrait.