fail Action
Marks a quest as failed. Updates the quest status to "failed" in the Campaign Cookbook and provides narrative consequences for unsuccessful attempts.
Syntax
fail:Quest Name Here
Important: The quest name must exactly match the name field of a quest template in the current episode's questTemplates array. Case-sensitive, including spaces and punctuation.
Basic Usage
{
"text": "Leave the merchant to his fate",
"nextScene": "ep1-scene5-abandon",
"questActions": ["fail:Rescue the Merchant"]
}
When to Use
Use the fail action when:
- The party explicitly abandons or declines a quest
- A time-sensitive objective expires
- A critical failure makes completion impossible
- The party makes choices that prevent quest completion
- An NPC dies or a quest item is destroyed
Design Tip: Quest failure should be a meaningful consequence, not a punishment. Use failures to create interesting narrative branches and opportunities for redemption.
Effects
When a quest is failed:
- Quest status changes from "active" to "failed"
- Quest moves to the "❌ Failed" group in the Party Sheet's Quest Log
- Reputation may decrease (if defined in quest consequences)
- Related quests may become unavailable
- Alternative story paths may open
Complete Example
{
"sceneId": "ep1-scene6-timeout",
"title": "Too Late",
"readAloud": "<div class='read-aloud'><p>By the time you reach the bandit camp, it's empty. The captives have been moved, and the trail has gone cold.</p><p>You return to {nearestBurg} to deliver the grim news. Gareth's face falls. 'I see,' he says quietly. 'Perhaps... perhaps it's too late for them now.'</p></div>",
"choices": [
{
"text": "Accept the failure and move on",
"nextScene": "ep2-scene1-aftermath",
"questActions": ["fail:Rescue the Captives"]
},
{
"text": "Vow to continue searching",
"nextScene": "ep2-scene1-redemption",
"questActions": ["fail:Rescue the Captives"]
}
]
}
Quest Definition with Failure Consequences
The quest template's consequences field is optional freeform authoring documentation - it isn't read by the app directly, but it's a useful place to record what should narratively happen on failure, so you (or another DM running the campaign later) remember to act on it:
"questTemplates": [
{
"name": "Rescue the Captives",
"type": "rescue",
"description": "Save the prisoners from the bandit camp",
"consequences": {
"failure": {
"reputation": -10,
"opensQuest": "Redemption: Track Down the Slavers"
}
}
}
]
Failure Scenarios
1. Explicit Abandonment
The party chooses to abandon the quest:
{
"sceneId": "ep1-scene4",
"title": "A Difficult Choice",
"readAloud": "<div class='read-aloud'><p>The bandit camp is heavily fortified. Attempting a rescue would be suicide.</p></div>",
"choices": [
{
"text": "Attempt the rescue anyway",
"nextScene": "ep1-scene5-rescue"
},
{
"text": "Abandon the quest and return to {nearestBurg}",
"nextScene": "ep1-scene5-abandon",
"questActions": ["fail:Rescue the Captives"]
}
]
}
2. Failed DC Check
Critical failure at a key moment:
{
"sceneId": "ep1-scene5",
"title": "The Infiltration",
"readAloud": "<div class='read-aloud'><p>You attempt to sneak past the guards. Roll a DC 15 Stealth check.</p></div>",
"choices": [
{
"text": "Success - Enter undetected",
"nextScene": "ep1-scene6-success"
},
{
"text": "Failure - Alarms sound, captives are executed",
"nextScene": "ep1-scene6-disaster",
"questActions": ["fail:Rescue the Captives"]
}
]
}
3. Time Expiration
Taking too long causes automatic failure:
{
"sceneId": "ep1-scene8",
"title": "Too Little, Too Late",
"readAloud": "<div class='read-aloud'><p>Your extended rest cost you precious time. When you arrive, the bandits are long gone.</p></div>",
"choices": [
{
"text": "Return to town",
"nextScene": "ep2-scene1",
"questActions": ["fail:Rescue the Captives"]
}
]
}
4. Permanent Consequence
Quest becomes impossible due to player actions:
{
"sceneId": "ep1-scene7",
"title": "Unintended Consequences",
"readAloud": "<div class='read-aloud'><p>Your fireball destroys the cage... and everyone in it. The captives are dead.</p></div>",
"choices": [
{
"text": "Face the consequences",
"nextScene": "ep1-scene8-aftermath",
"questActions": ["fail:Rescue the Captives"]
}
]
}
Redemption Arcs
There's no unlockConditions/quest-visibility system in the app - "unlocking" a follow-up quest just means putting it in questTemplates and only presenting a scene that offers to accept: it down the failure branch:
"questTemplates": [
{
"name": "Rescue the Captives",
"type": "rescue"
},
{
"name": "Redemption: Track Down the Slavers",
"type": "side-quest",
"description": "A second chance to make things right after the captives were lost"
}
]
Then, on the scene reached only via the fail:Rescue the Captives branch, offer a choice that accepts the redemption quest:
{
"text": "Vow to track down the slavers who took them",
"nextScene": "ep2-scene1-redemption",
"questActions": ["accept:Redemption: Track Down the Slavers"]
}
Narrative Depth: This creates a second-chance questline that only becomes reachable if the party fails the initial quest, adding replay value and emotional stakes.
Best Practices
1. Make Failure Meaningful
✓ Good: Failure opens new story paths or consequences
✗ Bad: Failure just blocks content with no alternatives
2. Provide Narrative Closure
Always show the consequences of failure:
✓ Good: "The captives are never seen again. Gareth mourns their loss."
✗ Bad: "Quest failed." (no emotional impact)
3. Offer Redemption When Appropriate
✓ Good: Failed rescue → New quest to track slavers
✓ Good: Failed negotiation → Combat alternative
✗ Bad: Permanent dead-end with no continuation
4. Balance Consequences
Don't make single failures campaign-ending:
✓ Good: -10 reputation, alternative quest opens
✗ Bad: Game over, restart campaign
Multiple Quest Failures
Rarely needed, but you can fail multiple quests simultaneously:
{
"text": "Flee the region entirely",
"nextScene": "ep2-scene1-exile",
"questActions": [
"fail:Stop the Bandits",
"fail:Rescue the Captives",
"fail:Protect the Caravan"
]
}
Common Mistakes
Failing Quests That Were Never Active
Error: Trying to fail a quest that was never accepted
Only fail quests that are currently active:
✓ Correct: accept → fail
✗ Wrong: fail without accept
Using Failure as Punishment
Failure should create interesting narratives, not punish players:
✓ Good: Failure creates moral dilemma and new quest
✗ Bad: Failure removes all rewards and blocks progression
See Also