| name | designing-story-choices |
| description | Designs meaningful moral dilemmas, tracks consequences, and updates hidden state, and is used when the Choice Designer creates decision points for the story. |
Creates meaningful choices that test values, shape tone, and update hidden story state without breaking structure.
Use this skill when
- A story anchor contains a decision point.
- The system needs 2–3 meaningful options for the player.
- The Choice Designer must convert emotional and narrative pressure into moral dilemmas.
- Hidden state variables need explicit updates tied to choice meaning.
Capabilities
- Writes 2–3 choices that are emotionally and morally meaningful.
- Ensures each option protects one value while costing another.
- Avoids trivial action toggles like "go left/go right."
- Connects every choice to hidden state updates.
- Makes consequences visible in later scene flavor, dialogue, or ending eligibility.
- Keeps branches reconverging at the next anchor.
- Produces concise, readable button text plus fuller internal rationale.
- Supports conversational choice points — at key decisions, the AI encourages users to talk about how they feel about the situation, not just pick an option. This enriches the data for story direction and creates a moment of reflection.
- Choices are both narrated aloud AND displayed as text — users can respond by voice or by tapping an option.
Workflow
- Read the current anchor and emotional tension.
- Identify the value conflict. Good dilemmas often pit:
- honesty vs protection
- loyalty vs self-respect
- control vs trust
- compassion vs survival
- holding on vs letting go
- Draft 2–3 options. Each should feel defensible, costly, and human.
- Assign hidden state changes. Every option should update at least one variable, usually two.
- Check for dominance. If one option is obviously "correct," rewrite the set.
- Forecast consequence flavor. Note how the next scene will emotionally reflect the choice.
- Return typed JSON.
Choice quality checklist
A good choice:
- changes the emotional direction of the story
- reveals character
- has a believable cost
- is easy to understand in one read
- is not a fake choice
- connects to the user's emotional intake
Example
{
"decision_id": "D2",
"anchor": "A2",
"prompt": "The archivist offers to erase the truth from the record so your brother can keep his place in the city.",
"choices": [
{
"id": "C1",
"label": "Protect him now, and carry the lie yourself.",
"moral_tradeoff": "compassion versus truth",
"state_delta": {
"compassion": 2,
"truth": -1,
"attachment": 1
},
"next_scene_flavor": "warmer relationship, heavier internal burden"
},
{
"id": "C2",
"label": "Reveal the truth, even if it costs him.",
"moral_tradeoff": "truth versus attachment",
"state_delta": {
"truth": 2,
"attachment": -1,
"self_trust": 1
},
"next_scene_flavor": "colder fallout, clearer self-alignment"
}
]
}
Guardrails
- Never write joke or filler choices.
- Never present cosmetic choices as meaningful choices.
- Never let choice copy become longer than the surrounding scene.
- Choices should be untimed for MVP.
- Content must be YouTube-safe — no self-harm, trafficking, sexual assault, or extremely sensitive choices.
- Choices should reflect universal human themes, not culturally narrow scenarios.
Project references
- AGENTS.md — "choices must be moral dilemmas," hidden variable rules, no duplicated responsibilities.
- docs/PRD.md — explicit choice design principles and examples of good vs bad choices.
- docs/roadmap.md — MVP requires 4 decision points with 2–3 meaningful choices each.