An encounter is the world acting on a player who was expecting an ordinary session: the fridge dies two hours before service, a big client calls with an offer. Each encounter is a card, either a crisis or an opportunity, and each card points at a milestone. When it's time, the player is dealt a hand of face-down cards on the Journey and turns one over. That locks them into the card's milestone until they finish it, and inside it an Encounter Choice step makes them decide what to do, with the price of every option shown up front.
Encounters are an optional layer. A straightforward adventure without any is a completely valid, often clearer, design. Reach for them when you want the program to push back.
Turning Encounters On
Encounters run on energy, so they only happen when the adventure's Energy Points (EP) feature is on (Adventure Settings → Features). Switch it off and no hands are dealt, and the Random Encounters panel disappears from Stats. Staff — GMs, NPCs and admins — are never dealt a hand.
How the Pieces Fit
- The milestone. Build the milestone the encounter will load: the situation as ordinary steps, and an Encounter Choice step for the decision. Give each encounter a milestone of its own, open to all paths.
- The card. Manage Content → Encounters → New Encounter, pointed at that milestone.
- The group. Put the card in a group. The group decides when a hand is dealt and how often.
Groups Decide When
Groups sit at the top of the Encounters tab. Add group opens the form:
- Name — e.g. "Weekly Curveballs".
- Mood — the colour of the flash and card backs when this group deals.
- Cards per hand — how many cards are dealt (8 by default). One is a deliberately harder feeling: no choice of which crisis, just the crisis.
- Order — which group deals when two are ready at once. Lowest first.
- How often — Whenever it still has cards; Every so often (every N hours or days); or On certain days of the week.
- Status — Published or Draft.
- When the player is ready — the group's conditions. Every rule must be true before the group can deal at all. Leave it empty and it's available from the start.
Conditions and schedule answer different questions. The conditions say the player is ready for this kind of thing (level 5, the Week 2 Tabi finished); the schedule says how often it then happens.
- Every so often waits at least that long after the group last came round for that player, then fires on their next visit. It accumulates: a player who was away comes back to it waiting.
- On certain days of the week fires once on each chosen day, by the adventure's time zone. It doesn't accumulate: miss the day, miss the encounter, which is what makes a scheduled beat feel like an event.
Conditions live on the group, not the card, on purpose. A card with its own gate would turn the draw into a milestone that auto-loads at a set point; the randomness only means something when the group is gated and the card inside it is chance. So make one group per distinct rule set.
One hand at a time. If several groups are ready, only the lowest Order deals; the rest wait. And no new hand arrives until the player has finished the encounter they picked, which paces the whole thing without a timer.
Cards left Uncategorised have no conditions and no schedule, so they're always available. They deal a hand of eight, in red if the hand holds any crisis and green otherwise, and only when no authored group is ready. A Draft group parks its cards: nothing in it is dealt. Deleting a group moves its cards back to Uncategorised; it never deletes them.
Cards: Crises and Opportunities
New Encounter opens the card editor:
- Name — staff-facing. The player sees the teaser, then the milestone.
- Kind — Crisis or Opportunity. Not everything is chaos: opportunities keep the engine from reading as pure punishment.
- The milestone this loads — where the player is locked until they resolve it. An encounter with no milestone never fires.
- Draw weight — higher comes up more often. 0 keeps it out of random draws entirely: staff-fired only.
- Can happen more than once — off by default, because a fridge dies once. Turn it on for recurring pressures like a slow week.
- Not before / Not after — a date window, by the adventure's time zone. Use it instead of scheduling ("the supplier price hike arrives in week 6"), and to retire a card without unpublishing it.
- The Card — the Teaser (one line; the full situation belongs in the milestone), a Card image and a Colour.
Assign a card to a group from the Group dropdown on its row in Manage Content. Each row also edits art, name, kind, colour and weight in place, and calls out anything that would stop it working: "No milestone — cannot fire", "staff-fired only", a date window that hasn't opened or has passed, and how many players have already faced it. The header sums it up: how many cards can be dealt right now, how many are scheduled, and how many cannot fire.
The Draw and the Lock
A hand is dealt on the player's next Journey visit. The cards are a weighted sample of the group's eligible cards, with no duplicates, and the hand is saved the moment it's dealt, so reloading shows the same cards rather than a reshuffle. The player turns one over; the others go back in the pool untouched.
Picking a card sends the player into its milestone, and from then until they finish it, opening the Journey takes them back there. Only the Journey is locked: the Garden, Tasks and the Item Shop stay open, which is what makes recovering from a setback possible. The lock also opens that one milestone even if its own gating (a level requirement, say) would normally keep the player out, so a setback that costs a level can't strand anyone.
An unresolved encounter takes priority over everything else on the Journey, a freshly dealt hand comes next, and only then does an autoload milestone run.
The Encounter Choice Step
Add an Encounter Choice step to the milestone (it's in the Flow group) and use Add Option for each choice. Every option has:
- A label ("Call a technician") and a short description ("Cheaper, but it is a patch, not a fix.").
- Costs — BLOO it takes. Pays — BLOO it gives.
- Energy — EP it takes.
- XP — signed: positive pays XP, negative takes it away, and losing enough costs a level.
- Then grant — an achievement to award. Require that achievement on a follow-up milestone and you've built a consequence chain: "the tech patched it for 200, but you still need a new fridge".
- Then say — a consequence message that lands right after the choice.
The player sees what they have, and every option's BLOO and energy price, before choosing. The XP change isn't shown on the option, so mention it in the description if you want the player to weigh it. Prices are charged on the server from your settings, and only once per encounter, even if the player fails the milestone and plays it again.
The economy rule: BLOO can go negative, energy can't.
- An option costing more BLOO than the player has is still available, marked "This puts you N under". Taking it puts them in debt. Debt is reachable only through a choice you authored; the Item Shop still refuses anything a player can't afford.
- An option needing more energy than the player has is disabled and refused.
Every encounter needs at least one option that costs 0 energy. Without one, a player with an empty tank is stuck in a locked milestone. The editor warns you, but it's your job to include it. As a backstop, if nothing is affordable the step tells the player they're out of energy and offers Go and recover, a link to their Tasks.
That's why encounters and the Garden belong together. Garden Tasks can pay Reward Energy, and they're how a player earns back what encounters spend. If your encounters charge energy, give players a task or two that restores it. See Running the Garden as a GM.
Running a Deck
- Send to a player fires a card at one player right now, bypassing the draw. It's the only way a weight-0 card is ever used, and it's built for live sessions where the whole room should hit the same beat. It asks for the player's ID, and it's refused if that player is already facing an encounter.
- Show again appears on a card players have already faced. A card that can't happen more than once is never dealt again to someone who's seen it, so after a rehearsal the deck can go quiet with nothing on screen to say why. Show again clears that history so the card can be dealt again.
- Reset deck, in the header whenever anything has been faced, does the same for every card. Hands already dealt stay on the table.
On the Stats page, the Random Encounters panel reports each encounter split by choice: how many players took each option, and what it cost them in total and per player. Only currently enrolled players are counted, so a GM testing a card doesn't move the numbers. See The Stats Dashboard.
Designing Good Encounters
- Mix crises and opportunities. A deck of pure bad news reads as punishment.
- Make the trade-off the drama. Show every price and let players choose the expensive option anyway.
- Pair every energy cost with a way back. Encounters spend energy; Garden Tasks restore it.
- Add a debt message. A consequence that fires when BLOO falls below zero tells the player what just happened and what to do about it.
- Use them sparingly. Too many and they stop feeling like events and start feeling like interruptions.