How to Create a CYOA Scenario
In this guide, you will learn how to create a "Choose Your Own Adventure" (CYOA) scenario in DreamGen. It assumes you already know the basics of creating DreamGen scenarios.
What Is CYOA?
CYOA, also called Choose The Next Step, turns a role-play or story into a guided branching experience. Instead of asking the user to invent every next action from scratch, the AI suggests several next steps after each response. Each next step has a short label (the button text the user sees) and content (what is used when the user picks it).
In role-play, next steps usually describe ways the user's character can respond to the current situation: confront someone, deflect, ask a question, retreat, flirt, lie, bargain, and so on. Clicking a next step typically fills the input box with the user's corresponding message, so they can edit it or send it as-is.
In a story, next steps usually describe possible directions for the next scene or beat. Clicking a next step typically fills in an instruction for the next story beat or scene.
Working Example Scenarios
You can inspect these simple CYOA scenarios to see the setup in practice:
- The Sleepover Summoning: Simple role-play CYOA scenario
- Tom Riddle's Possessive Pursuit: Simple role-play CYOA scenario
- The Mountain's Hunger: Simple story CYOA scenario
Or browse all the most popular public CYOA scenarios.
Step 1: Turn On CYOA
Click + CYOA below the scenario sections (plot, setting, style, etc.).
This adds the CYOA section to your scenario. With it, the AI suggests next steps after each response.
Use the dropdown in the section header to choose what the next steps contain:
- User's Message (role-play with a user character only): The next message or action of the user's character. Clicking it fills the input box, so the user can edit it or send it as-is. This is the default for role-play.
- Instruction: A direction for how the role-play or story should continue, such as "John searches the office while Jane distracts the guard." Clicking it adds an instruction for the next beat. This is the default for stories and for role-plays without a user character. In role-play, it usually works best with the Spectate interaction mode (Advanced → Behavior Defaults).
- Narrative: A short piece of narration describing what happens next (role-play), or the next paragraph or few (story). Clicking it adds it to the role-play or story.
For many scenarios, this is all you need. The AI already knows how to write good next steps; the steps below help you tailor them to your scenario.
Scenarios that already contain next steps in their openings or examples have CYOA turned on automatically. The CYOA section shows up for them, and it can only be removed once those next steps are gone. For these scenarios, the default guidelines (see Step 2) start turned off, since the existing next steps already show the AI what you want.
Optional CYOA
Below the box, Automatic next steps (on by default) decides whether the AI suggests next steps after each response. Turn it off when your scenario also works without CYOA: players then start without automatic next steps, can turn them on when starting a session, and can always ask for next steps with Suggest Next Steps. Your examples that contain next steps are only used for those.
Step 2 (Optional): Add Rules
Use the box in the CYOA section to tell the AI what makes a good next step in your scenario. A single line is often enough to give the next steps your own flavor:
- "One next step is always a fatal mistake, though it may not look like one at first glance."
- "The last next step is always a lie." (or "a bad pun", "completely unhinged", etc.)
- "Keep each next step to one short sentence."
- "Keep the next steps lighthearted; nobody gets hurt."
- "Include one next step where {{user}} asks a question."
Below the box, Include default guidelines (on by default) adds sensible defaults, like how many next steps to suggest and how they're written: 3–5 next steps, short emoji labels, content in the established style, and next steps that each lead somewhere different. Your rules take precedence over them, so focus on what is specific to your scenario.
The defaults can still conflict with your rules or examples, for instance when your examples use labels without emojis, or when every next step should follow the same pattern. If they do, or if your rules and examples fully describe what the next steps should look like, turn it off. The AI then only gets your rules, your examples, and the required format.
If you want more control, write more detailed rules. Here is a reusable starting point for a role-play with User's Message next steps:
- Each next step must be a distinct approach: confront, charm, deflect, provoke, withdraw, yield, etc. No two next steps with the same emotional intent.
- Every next step must respond to something specific from the preceding turn—dialogue, action, or object. If it could be pasted into a different scene, it's too generic.
- Each next step must move the scene forward and open doors, not close them.
- In multi-character scenes, distribute focus across characters.
- Stay in {{user}}'s established voice, 30–80 words per next step.
Adjust the rules to fit your scenario. A tactical adventure might need next steps about resources, terrain, and risk. A romance might need next steps that vary emotional tone. A mystery might need next steps that point toward different clues.
Example: Specific Categories
If you want the AI to offer a predictable menu every time, define the categories directly. This works well for game-like scenarios where each turn should include a balanced set of approaches: a safe choice, a selfish choice, a risky choice, and one or two choices that use the user's abilities or inventory.
There should be exactly 5 next steps, in exactly this order:
1. Ethical / lawful / cooperative
2. Unethical / illegal / selfish
3. Risky / wild-card
4. Using [ability / item]
5. Using [ability / item]
This kind of structure makes the next steps easier to scan and helps users learn what to expect from the scenario. Keep the categories broad enough that they can adapt to different scenes.
Example: Loot Selection
Next steps are not limited to moment-to-moment actions. You can also use them for structured decisions, such as choosing quest rewards, picking a route, selecting an ally, or deciding what to do with a discovered item.
After handing in a quest, the next steps let {{user}} pick their reward:
- Label: the name of the reward, e.g. "⚔️ The Ashbringer" or "🪙 100 Gold"
- Content: {{user}}'s message acknowledging their pick + any relevant actions, dialog or narrative (30–80 words)
There are typically 2–5 rewards, depending on the quest:
- Monetary reward, e.g. "🪙 30 Gold"
- Item reward, e.g. "🪄 Ol' Rusty Wand"
- Ability reward, e.g. "🔥 Fireball Level 2"
- etc.
For reward choices, make the label the thing being chosen and use the content to describe the user's acceptance, reaction, or follow-up action. That keeps the button easy to read while still giving the AI enough context to continue.
Step 3 (Optional): Teach The AI With Examples
Rules tell the AI what you want; examples show it. Use the Examples section to demonstrate what good next steps look like in your scenario. Examples can complement the rules from Step 2, or replace them: if you prefer, you can write the rules into the example description instead, next to the demonstration.
Add A CYOA Example
One strong example is usually enough for most scenarios; more complex scenarios may benefit from several examples, covering different scene types (e.g. you might want different next steps for narrative, "combat", "quest rewards", etc.).
A good CYOA example has:
- Description: What the example demonstrates, e.g. "Next steps after a tense negotiation." It can also contain the rules from Step 2.
- Sample interactions (optional): A role-play exchange or story beat that creates a concrete decision point.
- Next steps: The actual next steps the AI should learn to produce in similar situations.
Write The Example Description
The example description tells the AI what the example demonstrates. If you keep your rules here rather than in the CYOA section, write them the same way as in Step 2.
Add Sample Interactions
Next, create the short exchange or story beat that leads into the choice.
For role-play, this is usually a user turn followed by one or more character or narrative turns. For a story, it is usually a short passage that ends at a meaningful decision point.
Keep the sample specific. The AI learns better from a concrete scene than from generic instructions.
Sample interactions are optional. For most scenarios, a clear description and strong next steps are enough, especially if the opening also includes next steps. The linked examples all use one example with only a description and next steps.
Add Next Steps
After the sample interactions, click Add Next Step Option.
Fill in the label and content.
The label should be short enough to work as a button. The content should be written as the kind chosen in the CYOA section: a message from the user's character, an instruction, or narration.
Use Add Option to add more next steps. Aim for 3–5 unless your scenario has a specific reason to use more or fewer.
Add Next Steps To Openings
You can also add next steps to an opening. This gives users immediate choices before the first generated response.
You can use opening next steps in the usual way, as suggested directions for how the opening should continue. You can also use them as a setup menu for things like:
- Choosing a starting location.
- Choosing a profession, class, or faction.
- Choosing game difficulty.
- Choosing a quest or objective.
You can combine multiple openings, each with its own next steps, to give users many possible starting paths without creating a separate opening for every combination.
Opening next steps are especially powerful because, unlike example next steps, they can mix kinds and each one can contain more than one interaction. That lets a next step do more than insert a single user message: it can add background through narration, set rules with a pinned instruction, establish a starting state, or combine several setup actions at once.
To add the first next step to an opening, click Add Option in the Choose The Next Step block at the bottom of the opening, below the interaction input box.
Each opening next step has a label, its own interaction list and interaction input, and a Fill / Send selector.
For opening next steps with a single editable interaction, choose between Fill and Send:
- Fill places the interaction into the input box so the user can review and edit it first.
- Send immediately appends the interaction and continues generation.
Next steps with multiple interactions send automatically. Next steps that cannot be represented in the input box also send automatically.