Fights under your rules Contents

Rule systems

Fights under your rules

Attack rolls or consequences, turn order, the action economy, position and conditions, reactions by standing orders, concentration, enemies by role and tier.

Two ways a fight can run

Under a rule system, fights use the system's own numbers, on the same battle map, with the same painted effects and the same turn as everywhere else. A system runs its fights one of two ways. Engine

ModeHow a blow worksSystems
Attack rollsEvery blow is a roll against the defender's defence. A hit rolls damage; a critical rolls the damage dice twice.Classic d20, the d100 systems, Hope and Fear; from scratch: beat a number, roll under, two named dice
ConsequencesNo attack rolls. The player's own roll decides both ways: a success lands their blow; a mixed or failed roll lets the danger land on them.Forged in the Dark, Moves; from scratch: a pool, bands, counting hits

Attack rolls

The system names three things, all formulas:

The attack check
A fight-only check the storyteller never picks outside a fight. Classic d20: d20 + ability modifier + proficiency against the defence, a natural 20 a critical, a natural 1 a miss.
Damage
What the player's hit deals: 1d8 + max(@str.mod, @dex.mod). Twice the dice on a critical.
Defence
What enemies must beat to hit the player: 10 + @dex.mod (an unarmoured Armour Class), or Hope and Fear's Evasion.

Enemies roll the same check, using their template's attack number as their stat. Each blow's roll gets a chip like any other: d20 (14) + 3 Strength + 2 = 19 vs 13 · Hit.

Consequences

In a consequences fight the player rolls their action, and the outcome is read both ways. The storyteller's words set the stakes: position says how hard a failure hits back, effect how much a success achieves. Engine

OutcomeTheir blowThe danger
CriticalLands with one more harm than its effectNothing
SuccessLands with its effect's harm (limited 1, standard 2, great 3)Nothing
MixedStill lands (in Forged-style systems)Lands one step lighter than the position (risky + mixed = 1)
FailureNothingLands at the position's harm (controlled 1, risky 2, desperate 3)
FumbleNothingOne more than the position's harm

Harm becomes health. On a player, each level of harm costs a share of their maximum health (Forged: a quarter, a half, four-fifths, all of it). An enemy is taken out by its template's number of harm levels: a minion by one or two, a boss by six or more.

Turn order and the action economy

Any system can add who goes when, and how much a fighter can do in a turn. Engine

  1. 1Initiative, onceWhen the first exchange starts, every fighter rolls the system's initiative check once (Classic d20: d20 + Dexterity modifier). Highest first; a tie goes to the player. A fighter who joins later rolls when they first show up.
  2. 2A faster foe strikes firstAn enemy ahead of the player in the order lands the blow it announced before the player's action. Cutting it down this turn won't stop that blow.
  3. 3Down firstIf a faster foe's blow drops the player, their action never happens.
  4. 4The action budgetThe player has the system's actions for a turn: Classic d20 gives an Action (two attacks from level 5) and a Bonus action. Attacks past that are stamped NO TIME and don't happen.

The turn order shows above the battle map as a strip, with each fighter's initiative. Party fights use the same order: blows land in initiative order within the round. See Playing together.

Classic d20's turn, as rules data
"turn": {
  "initiative": { "check": "initiative" },
  "actions": [
    { "id": "action", "name": "Action", "per": "1", "attacks": "if @level >= 5 then 2 else 1",
      "description": "The main thing they do: an attack (two from level 5), a spell, a dash, a dodge" },
    { "id": "bonus", "name": "Bonus action", "per": "1",
      "description": "A quick extra on top: an off-hand strike after attacking, a quick spell" }
  ] }

An ability can give more actions this turn: Classic d20's Action Surge is an effect, “one more Action this turn”, so a fighter who surges really gets the second Action's attacks rolled.

Position, and what conditions do to blows

Everything that tips an attack roll is read before the dice, never added to the result after it. The roll's chip says what tipped it (“Tipped by: Flanked: advantage · Prone (close by): advantage”). Engine

WhatWhere it comes fromClassic d20
Position on the battle mapThe system's combat.position: flanking (an ally engaged with the target from its far side), higher ground, half coverFlanking and higher ground: advantage. Half cover: +2 to the defence
The attacker's conditionsA condition's edge and modifier, when its checks include the attack roll (the attack roll reads @cond.edge)Poisoned, Frightened, Prone, Blinded, Restrained: disadvantage. Invisible: advantage
The target's conditionsA condition's against: an edge, a modifier, or “a hit is a critical”, from close by, from afar, or bothParalyzed, Stunned, Restrained, Blinded, Unconscious, Asleep: advantage. Prone: advantage close, disadvantage far. Paralyzed, Unconscious, Asleep: a close hit is a critical
What they shrug offA condition's resist, immune and weak damage types, and the same on worn gear and always-on abilitiesRaging: half damage from bludgeoning, piercing and slashing

A foe's blow has a type when nothing gives it one: its creature's own, else what the attack's words name (claws are slashing, a bite piercing, flame fire), else the system's default. Someone who can't act (Paralyzed, Stunned, Asleep) makes no blows and uses no abilities, a potion included.

Prone and Paralyzed, as rules data
{ "id": "prone", "edge": "-1", "checks": ["attack"],
  "against": [{ "edge": "1", "reach": "near" }, { "edge": "-1", "reach": "far" }] }
{ "id": "paralyzed", "noActions": true,
  "against": [{ "edge": "1" }, { "crit": true, "reach": "near" }] }

A condition put on with a save each turn (Hold Person, a ghoul's claws) lets its bearer roll again at the end of each of their turns, against the DC worked out when it landed; a pass ends it. Foes' conditions count down each exchange, the same as a hero's.

Reactions, by standing orders

A reaction happens outside the hero's turn, one a round. Nobody stops the round to ask: each hero sets standing orders on their sheet, and code uses the reaction when its moment comes, with a chip. Engine

ReactionWhen code uses itWhat it does
ShieldA blow would hit them, and +5 would turn it into a miss (a critical lands anyway)Pays a 1st-level slot; +5 to their defence for the rest of the exchange
CounterspellA foe casts a spell at or above the level the hero set (a creature ability of a spell kind, or a blow whose words are a casting)Pays a 3rd-level slot; a spell up to the slot's level fails, a higher one fails on a won check against 10 + its level
Opportunity attackA foe beside them pulls away on the map without disengagingOne blow at it. Foes do the same to a hero who walks away from them

Any ability can be a reaction: it uses the system's reaction (combat.reaction) and says when it fires (react.on: hit, spell, or leave) and what it does. Reactions are never picked as the turn's action. A blink (Misty Step) and the system's disengage words never provoke an opportunity attack.

Shield, as rules data
{ "id": "shield", "kind": "Spell", "level": 1, "cost": [{ "slot": 1 }],
  "uses": "reaction", "react": { "on": "hit", "defence": "5" } }

Holding a spell (concentration)

An ability can be held (sustained): Hold Person, Bless, and the SRD's other concentration spells. What it puts on carries who holds it. It ends, and what it put on comes off everyone, when: Engine

  • they use another held ability (one at a time);
  • they are hurt and fail the system's combat.sustain check (Classic d20: a Constitution save against the higher of 10 and half the damage), rolled on every blow that hurts them;
  • they drop.

The sheet and the storyteller both see what they hold.

Enemies by role and tier

Every enemy the storyteller brings into a system world gets a sheet from the system's templates. Its role (minion, standard, elite, boss) comes from what it is in the scene; its tier, 1 to 6, from how dangerous the world says it is. Templates are formulas of the tier: Engine

A standard foe in River and Nerve, a system made from scratch
{ "role": "standard",
  "defaults": { "attribute": "min(5, floor((@tier + 1) / 2))" },
  "tracks":   { "hp": "8 + 6 * @tier" },
  "combat":   { "defence": "12 + @tier", "attack": "@tier", "damage": "(@tier)d6 + @tier" } }
Tier 1HealthDefenceAttackDamage
Minion512+01d4
Standard1413+11d6 + 1
Elite2314+21d8 + 1
Boss3815+32d8 + 1
Tier 1 enemies in River and Nerve (2d10 plus a d6, Standard 14). Every system made from scratch gets all four roles at all six tiers, sized to its own dice.

Change a template in the Advanced tab, or ask Hob (“make bosses tougher at tier 3 and up”). Enemies already in the world keep the sheet they were given.

Spells and creatures in a fight

A character's ability aimed at foes takes over their first blow of the turn: an attack spell rolls its own attack and dice; a save spell rolls its harm once and each foe's save against the caster's DC. A creature from the bestiary fights with its own numbers, attacks a turn and abilities: a breath weapon is a save the player rolls. Damage types meet what a creature resists or fears, and regeneration closes its wounds unless what stops it struck. See Spells and abilities and The bestiary. Engine

Fights and rule cards

Fights set off cards like everything else: a fight starting or ending, each blow's damage dealt or taken, each foe defeated.

Battle fury

When they deal damage of at least 10 → tick Fury 1.

Shield of faith

Before damage is taken (while Blessed) → 3 less damage.

Dying

When Hit points run out (unless Stable and unless Dead) → Dying.

Classic d20's death saves are four cards like this one: Dying, a death save each turn while Dying, Stable after three saves, Dead after three failures.

A condition can say what it means for a hero at 0 hit points: dead or stable. Code reads it with the world's own death rules. In a world with death, a hero marked Dead dies there; in a world without it, or once Stable, they stop bleeding out and come to later.

Who wins a fight, and how the storyteller tells it, works as it does without a rule system: see Fighting. Storyteller