mirror of
https://github.com/R0m1k3/xtremflow.git
synced 2026-10-24 15:38:04 +02:00
feat: security overhaul (proxy ssrf fix, streaming sanitization, docker optimization)
This commit is contained in:
1 parent
6d87ada2b8
commit
8df9a37baa
810 files changed
+131090
-151
No files matched your search
@@ -0,0 +1,229 @@
|
||||
---
|
||||
name: 'step-01-init'
|
||||
description: 'Initialize narrative workflow, load GDD context, and assess narrative complexity'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-01-init.md'
|
||||
continueStepFile: '{workflow_path}/steps/step-01b-continue.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-02-foundation.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
templateFile: '{workflow_path}/templates/narrative-template.md'
|
||||
---
|
||||
|
||||
# Step 1: Initialize Narrative Workflow
|
||||
|
||||
**Progress: Step 1 of 11** - Next: Story Foundation
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Validate workflow readiness, check for existing narrative document, load GDD context, and assess the appropriate level of narrative complexity for this game.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Help users craft THEIR story, not yours
|
||||
- Narrative complexity should match the game
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- Check for existing narrative before starting fresh
|
||||
- Load GDD to understand game context
|
||||
- Let user confirm narrative complexity level
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Wait for user confirmation at each checkpoint
|
||||
- Update frontmatter `stepsCompleted: [1]` before loading next step
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Check Workflow Status
|
||||
|
||||
**Search for workflow status file:**
|
||||
|
||||
Check if `{output_folder}/bmgd-workflow-status.yaml` exists.
|
||||
|
||||
**If status file found:**
|
||||
|
||||
- Load and parse workflow_status section
|
||||
- Check status of "narrative" workflow
|
||||
- Determine if this is the expected next workflow
|
||||
|
||||
**Handle scenarios:**
|
||||
|
||||
- If already completed: Ask about overwriting
|
||||
- If out of sequence: Warn and confirm continuation
|
||||
- Set `standalone_mode` appropriately
|
||||
|
||||
### 2. Check for Existing Narrative
|
||||
|
||||
**Search for existing narrative document:**
|
||||
|
||||
Look for existing narrative files in {output_folder}:
|
||||
|
||||
- `*narrative*.md`
|
||||
- `*story*.md`
|
||||
|
||||
**If existing narrative found:**
|
||||
|
||||
"I found an existing narrative document: `{{existing_file}}`
|
||||
|
||||
**Options:**
|
||||
|
||||
1. **Continue** - Resume from where you left off
|
||||
2. **Start Fresh** - Begin a new narrative (will overwrite)
|
||||
3. **Review** - Let me review the existing document first
|
||||
|
||||
Which would you like to do?"
|
||||
|
||||
**Handle selection:**
|
||||
|
||||
- If **Continue**: Load `{continueStepFile}`
|
||||
- If **Start Fresh**: Continue with step 3
|
||||
- If **Review**: Show document summary
|
||||
|
||||
### 3. Load GDD Context
|
||||
|
||||
**Search for GDD:**
|
||||
|
||||
Look for GDD files using patterns:
|
||||
|
||||
- `{output_folder}/*gdd*.md`
|
||||
- `{output_folder}/*game-design*.md`
|
||||
|
||||
**If GDD not found:**
|
||||
|
||||
"**Note: GDD Not Found**
|
||||
|
||||
The Narrative workflow works best with a completed GDD.
|
||||
|
||||
**Options:**
|
||||
|
||||
1. Continue without GDD (I'll ask more questions)
|
||||
2. Run GDD workflow first: `create-gdd`
|
||||
|
||||
Your choice:"
|
||||
|
||||
**If GDD found:**
|
||||
|
||||
Load and extract:
|
||||
|
||||
- `game_type`
|
||||
- `game_name`
|
||||
- Any existing narrative mentions
|
||||
- Core mechanics and themes
|
||||
|
||||
### 4. Assess Narrative Complexity
|
||||
|
||||
"**Narrative Complexity Assessment**
|
||||
|
||||
Let's determine the right depth for your narrative design.
|
||||
|
||||
**Narrative Complexity Levels:**
|
||||
|
||||
| Level | Description | Examples |
|
||||
| ------------ | ----------------------- | ------------------------------ |
|
||||
| **Critical** | Story IS the game | Visual Novel, Text Adventure |
|
||||
| **Heavy** | Story drives experience | Story RPG, Narrative Adventure |
|
||||
| **Moderate** | Story enhances gameplay | Metroidvania, Horror, Tactics |
|
||||
| **Light** | Story provides context | Most action, puzzle, arcade |
|
||||
|
||||
**Based on {{game_type}}, I'd suggest: {{suggested_complexity}}**
|
||||
|
||||
What level of narrative complexity does {{game_name}} have?"
|
||||
|
||||
### 5. Validate Complexity Choice
|
||||
|
||||
**If user selects Light:**
|
||||
|
||||
"**Light narrative games usually don't need a full Narrative Design Document.**
|
||||
|
||||
Your options:
|
||||
|
||||
1. **Proceed anyway** - Create full narrative document
|
||||
2. **Quick narrative** - Just the essentials (premise, setting, key characters)
|
||||
3. **Expand GDD** - Add narrative sections to existing GDD instead
|
||||
|
||||
What would you like to do?"
|
||||
|
||||
**Handle selection appropriately.**
|
||||
|
||||
### 6. Initialize Output Document
|
||||
|
||||
**If proceeding with full narrative:**
|
||||
|
||||
Create `{outputFile}` with frontmatter:
|
||||
|
||||
```markdown
|
||||
---
|
||||
title: 'Narrative Design Document'
|
||||
project: '{{game_name}}'
|
||||
date: '{{date}}'
|
||||
author: '{{user_name}}'
|
||||
version: '1.0'
|
||||
stepsCompleted: [1]
|
||||
status: 'in-progress'
|
||||
narrativeComplexity: '{{selected_complexity}}'
|
||||
gdd: '{{gdd_file}}'
|
||||
---
|
||||
|
||||
# Narrative Design Document
|
||||
|
||||
## {{game_name}}
|
||||
|
||||
### Document Status
|
||||
|
||||
This narrative document is being created through the BMGD Narrative Workflow.
|
||||
|
||||
**Narrative Complexity:** {{selected_complexity}}
|
||||
**Steps Completed:** 1 of 11 (Initialize)
|
||||
|
||||
---
|
||||
|
||||
_Content will be added as we progress through the workflow._
|
||||
```
|
||||
|
||||
### 7. Proceed to Foundation Step
|
||||
|
||||
After initialization:
|
||||
|
||||
- Update frontmatter: `stepsCompleted: [1]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Workflow status checked appropriately
|
||||
- Existing narrative check performed
|
||||
- GDD loaded and analyzed (if available)
|
||||
- Narrative complexity assessed with user
|
||||
- Output document initialized with proper frontmatter
|
||||
- Frontmatter updated with stepsCompleted: [1]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Starting without complexity assessment
|
||||
- Not checking for existing narrative
|
||||
- Proceeding without user confirmation
|
||||
- Missing frontmatter initialization
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,164 @@
|
||||
---
|
||||
name: 'step-01b-continue'
|
||||
description: 'Continue an existing narrative workflow from where it left off'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-01b-continue.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Step Files (for routing)
|
||||
step02: '{workflow_path}/steps/step-02-foundation.md'
|
||||
step03: '{workflow_path}/steps/step-03-story.md'
|
||||
step04: '{workflow_path}/steps/step-04-characters.md'
|
||||
step05: '{workflow_path}/steps/step-05-world.md'
|
||||
step06: '{workflow_path}/steps/step-06-dialogue.md'
|
||||
step07: '{workflow_path}/steps/step-07-environmental.md'
|
||||
step08: '{workflow_path}/steps/step-08-delivery.md'
|
||||
step09: '{workflow_path}/steps/step-09-integration.md'
|
||||
step10: '{workflow_path}/steps/step-10-production.md'
|
||||
step11: '{workflow_path}/steps/step-11-complete.md'
|
||||
---
|
||||
|
||||
# Step 1b: Continue Existing Narrative
|
||||
|
||||
**Resuming Narrative Workflow**
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Load the existing narrative document, determine progress, and route to the appropriate next step.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- Parse frontmatter to determine completed steps
|
||||
- Present summary of current progress
|
||||
- Route to correct next step based on state
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Load Existing Narrative
|
||||
|
||||
**Read the existing narrative document:**
|
||||
|
||||
Load `{outputFile}` and parse the frontmatter to extract:
|
||||
|
||||
- `stepsCompleted` array
|
||||
- `status`
|
||||
- `project` name
|
||||
- `narrativeComplexity`
|
||||
- GDD reference
|
||||
|
||||
### 2. Analyze Progress
|
||||
|
||||
**Determine workflow state:**
|
||||
|
||||
Map completed steps to workflow progress:
|
||||
|
||||
- Step 1: Initialize
|
||||
- Step 2: Foundation (premise, themes, structure)
|
||||
- Step 3: Story (beats and pacing)
|
||||
- Step 4: Characters (all characters and arcs)
|
||||
- Step 5: World (world, history, locations)
|
||||
- Step 6: Dialogue (dialogue systems)
|
||||
- Step 7: Environmental (environmental storytelling)
|
||||
- Step 8: Delivery (narrative delivery methods)
|
||||
- Step 9: Integration (gameplay integration)
|
||||
- Step 10: Production (scope and planning)
|
||||
- Step 11: Complete
|
||||
|
||||
**Calculate next step:**
|
||||
|
||||
Find the highest completed step and determine the next step file to load.
|
||||
|
||||
### 3. Present Continuation Summary
|
||||
|
||||
"**Resuming Narrative Workflow**
|
||||
|
||||
{{user_name}}, I found your existing narrative for **{{game_name}}**.
|
||||
|
||||
**Progress:** Steps completed: {{stepsCompleted}}
|
||||
|
||||
**Narrative Complexity:** {{narrativeComplexity}}
|
||||
|
||||
**Sections Completed:**
|
||||
{{list_of_completed_sections}}
|
||||
|
||||
**Current Status:**
|
||||
|
||||
- Last completed: {{last_step_name}}
|
||||
- Next step: {{next_step_name}} (Step {{next_step_number}} of 11)
|
||||
|
||||
Would you like to:
|
||||
|
||||
1. **Continue** - Resume from {{next_step_name}}
|
||||
2. **Review** - Show me what we've written so far
|
||||
3. **Restart Step** - Redo the last completed step
|
||||
|
||||
Select an option:"
|
||||
|
||||
### 4. Handle User Selection
|
||||
|
||||
**If Continue:**
|
||||
|
||||
- Load the next step file based on `stepsCompleted`
|
||||
|
||||
**If Review:**
|
||||
|
||||
- Present summary of all completed sections
|
||||
- Show key narrative elements (premise, characters, etc.)
|
||||
- Return to continuation options
|
||||
|
||||
**If Restart Step:**
|
||||
|
||||
- Decrement stepsCompleted to remove last step
|
||||
- Load the step file for the step being restarted
|
||||
|
||||
### 5. Route to Next Step
|
||||
|
||||
Based on next step number, load the appropriate step file:
|
||||
|
||||
| Next Step | File |
|
||||
| --------- | -------- |
|
||||
| 2 | {step02} |
|
||||
| 3 | {step03} |
|
||||
| 4 | {step04} |
|
||||
| 5 | {step05} |
|
||||
| 6 | {step06} |
|
||||
| 7 | {step07} |
|
||||
| 8 | {step08} |
|
||||
| 9 | {step09} |
|
||||
| 10 | {step10} |
|
||||
| 11 | {step11} |
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Existing document loaded and parsed
|
||||
- Progress accurately determined
|
||||
- User presented with clear options
|
||||
- Correct step file loaded based on state
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Failing to parse frontmatter correctly
|
||||
- Loading wrong step file
|
||||
- Not presenting continuation options
|
||||
- Overwriting existing progress without confirmation
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,263 @@
|
||||
---
|
||||
name: 'step-02-foundation'
|
||||
description: 'Define narrative premise, themes, tone, and story structure'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-02-foundation.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-03-story.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 2: Story Foundation
|
||||
|
||||
**Progress: Step 2 of 11** - Next: Story Beats
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define the narrative foundation: premise, themes, tone/atmosphere, and overall story structure. These elements form the backbone of all narrative content.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
- NEVER mention time estimates
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Help users articulate THEIR story vision
|
||||
- The premise should come from the user
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to generate premise without user input
|
||||
- Draw out user's ideas through questions
|
||||
- Themes should resonate with user's intent
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore themes deeper
|
||||
- **P (Party Mode)**: Get perspectives on foundation
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Narrative Premise Discovery
|
||||
|
||||
"Let's define the narrative foundation for **{{game_name}}**.
|
||||
|
||||
**First, the premise - your story's elevator pitch in 2-3 sentences.**
|
||||
|
||||
Good premises have:
|
||||
|
||||
- A protagonist with a clear goal
|
||||
- An obstacle or conflict
|
||||
- Stakes (what happens if they fail?)
|
||||
|
||||
**Examples:**
|
||||
|
||||
- \"A young knight discovers they're the last hope to stop an ancient evil, but must choose between saving the kingdom or their own family.\"
|
||||
- \"After a mysterious pandemic, survivors must navigate a world where telling the truth is deadly but lying corrupts your soul.\"
|
||||
|
||||
What's the premise for {{game_name}}?"
|
||||
|
||||
### 2. Theme Discovery
|
||||
|
||||
"**Now let's identify your core themes.**
|
||||
|
||||
Themes are the underlying ideas or messages woven throughout the story.
|
||||
|
||||
**Common game themes:**
|
||||
|
||||
- Redemption, sacrifice, identity
|
||||
- Power and corruption
|
||||
- Hope vs. despair
|
||||
- Nature vs. technology
|
||||
- Freedom vs. control
|
||||
- Family, loyalty, betrayal
|
||||
|
||||
**Questions to consider:**
|
||||
|
||||
- What questions does your story ask?
|
||||
- What will players think about after playing?
|
||||
- What emotions do you want to evoke?
|
||||
|
||||
What are 2-4 core themes for {{game_name}}?"
|
||||
|
||||
### 3. Tone and Atmosphere Discovery
|
||||
|
||||
"**Let's define the tone and atmosphere.**
|
||||
|
||||
Tone shapes how the story feels moment-to-moment.
|
||||
|
||||
**Tone spectrums:**
|
||||
|
||||
- Dark ←→ Lighthearted
|
||||
- Serious ←→ Comedic
|
||||
- Gritty ←→ Fantastical
|
||||
- Intimate ←→ Epic
|
||||
- Hopeful ←→ Melancholic
|
||||
|
||||
**Atmosphere elements:**
|
||||
|
||||
- Visual mood (colors, lighting)
|
||||
- Audio mood (music style)
|
||||
- Pacing (contemplative vs. urgent)
|
||||
- Emotional register
|
||||
|
||||
Describe the tone and atmosphere for {{game_name}}:"
|
||||
|
||||
### 4. Story Structure Discovery
|
||||
|
||||
"**What story structure will you use?**
|
||||
|
||||
**Common structures:**
|
||||
|
||||
| Structure | Description |
|
||||
| ------------------ | ------------------------------------------------------ |
|
||||
| **3-Act** | Setup → Confrontation → Resolution |
|
||||
| **Hero's Journey** | Campbell's monomyth (departure, initiation, return) |
|
||||
| **Kishōtenketsu** | 4-act: Introduction → Development → Twist → Conclusion |
|
||||
| **Episodic** | Self-contained episodes with overarching arc |
|
||||
| **Branching** | Multiple paths and endings |
|
||||
| **Freeform** | Player-driven, emergent narrative |
|
||||
|
||||
What structure fits {{game_name}}?"
|
||||
|
||||
### 5. Act Breakdown
|
||||
|
||||
"**Let's break down your story into acts/sections.**
|
||||
|
||||
Based on {{selected_structure}}:
|
||||
|
||||
{{structure_specific_prompts}}
|
||||
|
||||
Describe each act/section for {{game_name}}:"
|
||||
|
||||
### 6. Generate Foundation Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Story Foundation
|
||||
|
||||
### Narrative Premise
|
||||
|
||||
{{user_premise}}
|
||||
|
||||
### Core Themes
|
||||
|
||||
{{themes_list_with_descriptions}}
|
||||
|
||||
### Tone and Atmosphere
|
||||
|
||||
**Tone:** {{tone_description}}
|
||||
|
||||
**Atmosphere:** {{atmosphere_description}}
|
||||
|
||||
**Emotional Register:** {{emotional_goals}}
|
||||
|
||||
---
|
||||
|
||||
## Story Structure
|
||||
|
||||
### Structure Type
|
||||
|
||||
**{{structure_type}}**
|
||||
|
||||
{{structure_description}}
|
||||
|
||||
### Act Breakdown
|
||||
|
||||
{{act_breakdown_details}}
|
||||
```
|
||||
|
||||
### 7. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've drafted the Story Foundation based on our conversation.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 6]
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Does the premise capture your vision?
|
||||
- Do the themes resonate with your intent?
|
||||
- Does the structure fit your gameplay?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore themes and structure deeper
|
||||
[P] Party Mode - Get perspectives on foundation
|
||||
[C] Continue - Save this and move to Story Beats (Step 3 of 11)"
|
||||
|
||||
### 8. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [foundation content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Premise captured from user input
|
||||
- Themes identified and described
|
||||
- Tone and atmosphere defined
|
||||
- Story structure selected and broken down
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Generating premise FOR user
|
||||
- Generic themes not connected to user's vision
|
||||
- Proceeding without structure breakdown
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,239 @@
|
||||
---
|
||||
name: 'step-03-story'
|
||||
description: 'Define major story beats and narrative pacing'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-03-story.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-04-characters.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 3: Story Beats
|
||||
|
||||
**Progress: Step 3 of 11** - Next: Characters
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define the major story beats (key narrative moments) and establish pacing and flow throughout the game experience.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Story beats are the skeleton of the narrative
|
||||
- Help user identify key moments, don't create them
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to generate story beats without user input
|
||||
- Guide user through beat mapping
|
||||
- Connect beats to structure defined in Step 2
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore beats and connections
|
||||
- **P (Party Mode)**: Get perspectives on pacing
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Story Beats Discovery
|
||||
|
||||
"**Let's map the major story beats for {{game_name}}.**
|
||||
|
||||
Story beats are significant events that drive the narrative forward.
|
||||
|
||||
**Key beat types:**
|
||||
|
||||
- **Inciting Incident** - What sets the story in motion?
|
||||
- **Plot Points** - Major turning points
|
||||
- **Midpoint** - Central pivot moment
|
||||
- **Climax** - Highest tension point
|
||||
- **Resolution** - How things conclude
|
||||
|
||||
**Based on your {{structure_type}} structure, list 10-20 key moments.**
|
||||
|
||||
Format:
|
||||
|
||||
1. [Beat name] - Brief description
|
||||
2. [Beat name] - Brief description
|
||||
|
||||
What are the major story beats for {{game_name}}?"
|
||||
|
||||
### 2. Beat Placement
|
||||
|
||||
"**Now let's place these beats within your structure.**
|
||||
|
||||
For {{structure_type}}:
|
||||
|
||||
**Act 1 beats:**
|
||||
Which of your beats belong in the setup/introduction?
|
||||
|
||||
**Act 2 beats:**
|
||||
Which beats drive the main conflict/development?
|
||||
|
||||
**Act 3 beats:**
|
||||
Which beats resolve the story?
|
||||
|
||||
Let's organize your beats:"
|
||||
|
||||
### 3. Pacing Discovery
|
||||
|
||||
"**Let's define the pacing and flow.**
|
||||
|
||||
**Pacing considerations:**
|
||||
|
||||
| Aspect | Options |
|
||||
| ------------------- | --------------------------------- |
|
||||
| **Overall tempo** | Slow burn vs. fast-paced |
|
||||
| **Tension pattern** | Escalating vs. waves |
|
||||
| **Story density** | Heavy sections vs. light sections |
|
||||
| **Player agency** | Mandatory vs. optional content |
|
||||
|
||||
**Questions:**
|
||||
|
||||
- When should tension be highest?
|
||||
- Where are the breathing room moments?
|
||||
- How much story per gameplay hour?
|
||||
|
||||
Describe the pacing for {{game_name}}:"
|
||||
|
||||
### 4. Generate Story Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Story Beats
|
||||
|
||||
### Major Story Beats
|
||||
|
||||
{{beats_list_with_descriptions}}
|
||||
|
||||
### Beat Placement by Act
|
||||
|
||||
**Act 1: Setup**
|
||||
{{act1_beats}}
|
||||
|
||||
**Act 2: Confrontation**
|
||||
{{act2_beats}}
|
||||
|
||||
**Act 3: Resolution**
|
||||
{{act3_beats}}
|
||||
|
||||
---
|
||||
|
||||
## Pacing and Flow
|
||||
|
||||
### Narrative Tempo
|
||||
|
||||
{{pacing_description}}
|
||||
|
||||
### Tension Curve
|
||||
|
||||
{{tension_pattern}}
|
||||
|
||||
### Story Density
|
||||
|
||||
{{density_by_section}}
|
||||
|
||||
### Key Moments
|
||||
|
||||
**Highest tension:** {{peak_moment}}
|
||||
**Emotional climax:** {{emotional_peak}}
|
||||
**Resolution beat:** {{resolution_moment}}
|
||||
```
|
||||
|
||||
### 5. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've mapped out the story beats and pacing.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 4]
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Are all major moments captured?
|
||||
- Does pacing match your vision?
|
||||
- Are beats properly distributed?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore beats and connections
|
||||
[P] Party Mode - Get perspectives on pacing
|
||||
[C] Continue - Save this and move to Characters (Step 4 of 11)"
|
||||
|
||||
### 6. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [story content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- 10-20 story beats identified from user input
|
||||
- Beats organized by act/structure
|
||||
- Pacing and flow defined
|
||||
- Tension curve established
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Generating beats FOR user
|
||||
- Beats not connected to structure
|
||||
- Missing pacing considerations
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,298 @@
|
||||
---
|
||||
name: 'step-04-characters'
|
||||
description: 'Develop all characters including protagonists, antagonists, supporting cast, and their arcs'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-04-characters.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-05-world.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 4: Characters
|
||||
|
||||
**Progress: Step 4 of 11** - Next: World Building
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Develop all characters: protagonists, antagonists, and supporting cast. Define their backgrounds, motivations, relationships, and character arcs.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Characters should feel like user's creations
|
||||
- Draw out personality through questions
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to create characters without user input
|
||||
- Guide user through character development
|
||||
- Ensure characters connect to themes
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Deep dive into characters
|
||||
- **P (Party Mode)**: Get perspectives on character design
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Protagonist Discovery
|
||||
|
||||
"**Let's develop the protagonist(s) of {{game_name}}.**
|
||||
|
||||
For each protagonist, tell me:
|
||||
|
||||
- **Name and description** - Who are they?
|
||||
- **Background** - Where do they come from?
|
||||
- **Motivation** - What do they want?
|
||||
- **Strengths** - What are they good at?
|
||||
- **Flaws** - What holds them back?
|
||||
- **Internal conflict** - What do they struggle with inside?
|
||||
- **External conflict** - What obstacles do they face?
|
||||
|
||||
Describe your protagonist(s):"
|
||||
|
||||
### 2. Antagonist Discovery
|
||||
|
||||
"**Now let's develop the antagonist(s).**
|
||||
|
||||
Great antagonists:
|
||||
|
||||
- Have understandable motivations
|
||||
- Challenge the protagonist meaningfully
|
||||
- May have sympathetic elements
|
||||
- Represent or oppose the themes
|
||||
|
||||
For each antagonist:
|
||||
|
||||
- **Name and description**
|
||||
- **Background** - How did they become this way?
|
||||
- **Goals** - What do they want?
|
||||
- **Methods** - How do they pursue their goals?
|
||||
- **Relationship to protagonist**
|
||||
- **Sympathetic elements** (if any)
|
||||
|
||||
Describe your antagonist(s):"
|
||||
|
||||
### 3. Supporting Cast Discovery
|
||||
|
||||
"**Let's flesh out the supporting characters.**
|
||||
|
||||
Common supporting roles:
|
||||
|
||||
- **Mentor** - Guides the protagonist
|
||||
- **Ally/Companion** - Travels with protagonist
|
||||
- **Foil** - Contrasts protagonist's traits
|
||||
- **Love interest** - Romantic connection
|
||||
- **Comic relief** - Lightens tone
|
||||
- **Informant** - Provides information
|
||||
|
||||
For each supporting character:
|
||||
|
||||
- **Name and role**
|
||||
- **Personality and traits**
|
||||
- **Relationship to protagonist**
|
||||
- **Function in story**
|
||||
- **Key scenes/moments**
|
||||
|
||||
Describe your supporting characters:"
|
||||
|
||||
### 4. Character Arcs Discovery
|
||||
|
||||
"**Now let's map character arcs.**
|
||||
|
||||
A character arc shows how a character changes (or refuses to change) through the story.
|
||||
|
||||
**Arc types:**
|
||||
|
||||
- **Positive arc** - Character overcomes flaw, grows
|
||||
- **Negative arc** - Character falls, corrupts
|
||||
- **Flat arc** - Character's beliefs tested but hold
|
||||
- **Transformation** - Character becomes something new
|
||||
|
||||
For major characters:
|
||||
|
||||
- **Starting state** - Who are they at the beginning?
|
||||
- **Transformation moments** - What changes them?
|
||||
- **Ending state** - Who are they at the end?
|
||||
- **Lessons learned**
|
||||
|
||||
Describe the character arcs:"
|
||||
|
||||
### 5. Generate Characters Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Characters
|
||||
|
||||
### Protagonist(s)
|
||||
|
||||
#### {{protagonist_name}}
|
||||
|
||||
**Description:** {{description}}
|
||||
|
||||
**Background:** {{background}}
|
||||
|
||||
**Motivation:** {{motivation}}
|
||||
|
||||
**Strengths:** {{strengths}}
|
||||
|
||||
**Flaws:** {{flaws}}
|
||||
|
||||
**Conflicts:**
|
||||
|
||||
- Internal: {{internal_conflict}}
|
||||
- External: {{external_conflict}}
|
||||
|
||||
---
|
||||
|
||||
### Antagonist(s)
|
||||
|
||||
#### {{antagonist_name}}
|
||||
|
||||
**Description:** {{description}}
|
||||
|
||||
**Background:** {{background}}
|
||||
|
||||
**Goals:** {{goals}}
|
||||
|
||||
**Methods:** {{methods}}
|
||||
|
||||
**Relationship to Protagonist:** {{relationship}}
|
||||
|
||||
**Sympathetic Elements:** {{if_any}}
|
||||
|
||||
---
|
||||
|
||||
### Supporting Characters
|
||||
|
||||
{{for_each_supporting_character}}
|
||||
|
||||
#### {{character_name}}
|
||||
|
||||
**Role:** {{role}}
|
||||
**Personality:** {{personality}}
|
||||
**Function:** {{story_function}}
|
||||
**Key Moments:** {{key_scenes}}
|
||||
{{/for_each}}
|
||||
|
||||
---
|
||||
|
||||
## Character Arcs
|
||||
|
||||
### {{character_name}} Arc
|
||||
|
||||
**Starting State:** {{beginning}}
|
||||
|
||||
**Transformation Moments:**
|
||||
{{transformation_points}}
|
||||
|
||||
**Ending State:** {{end}}
|
||||
|
||||
**Lessons Learned:** {{lessons}}
|
||||
|
||||
{{repeat_for_each_major_character}}
|
||||
```
|
||||
|
||||
### 6. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented all characters and their arcs.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 5]
|
||||
|
||||
**Character Summary:**
|
||||
|
||||
- Protagonists: {{count}}
|
||||
- Antagonists: {{count}}
|
||||
- Supporting: {{count}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Do characters connect to your themes?
|
||||
- Are arcs meaningful and complete?
|
||||
- Do relationships create conflict?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Deep dive into characters
|
||||
[P] Party Mode - Get perspectives on character design
|
||||
[C] Continue - Save this and move to World Building (Step 5 of 11)"
|
||||
|
||||
### 7. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [characters content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Protagonists fully developed from user input
|
||||
- Antagonists with clear motivations
|
||||
- Supporting cast defined with functions
|
||||
- Character arcs mapped for major characters
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Creating characters without user input
|
||||
- Flat characters without depth
|
||||
- Missing character arcs
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,263 @@
|
||||
---
|
||||
name: 'step-05-world'
|
||||
description: 'Build the world including setting, history, factions, and key locations'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-05-world.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-06-dialogue.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 5: World Building
|
||||
|
||||
**Progress: Step 5 of 11** - Next: Dialogue Systems
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Build the game's world including setting, history/backstory, factions/organizations, and key locations where the narrative unfolds.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- World should support and enhance the story
|
||||
- Draw out user's vision of their world
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to create world elements without user input
|
||||
- Connect world to themes and story
|
||||
- Focus on narrative-relevant world-building
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore world depth
|
||||
- **P (Party Mode)**: Get perspectives on world-building
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. World Overview Discovery
|
||||
|
||||
"**Let's build the world of {{game_name}}.**
|
||||
|
||||
Describe your world:
|
||||
|
||||
- **Setting** - Where and when does this take place?
|
||||
- **World type** - Fantasy, sci-fi, modern, historical, etc.
|
||||
- **World rules** - Magic systems? Technology level? Physical laws?
|
||||
- **Atmosphere** - What mood does the world evoke?
|
||||
- **What makes it unique?**
|
||||
|
||||
Describe the world:"
|
||||
|
||||
### 2. History and Backstory Discovery
|
||||
|
||||
"**What's the history of your world?**
|
||||
|
||||
Consider:
|
||||
|
||||
- **Major historical events** - Wars, discoveries, cataclysms?
|
||||
- **How did the world reach its current state?**
|
||||
- **Legends and myths** - What do people believe?
|
||||
- **Past conflicts** - What shaped the present?
|
||||
- **Secrets** - What is hidden or forgotten?
|
||||
|
||||
Describe the history:"
|
||||
|
||||
### 3. Factions Discovery (Optional)
|
||||
|
||||
"**Are there factions, organizations, or groups?** (Optional)
|
||||
|
||||
If applicable, for each faction:
|
||||
|
||||
- **Name and purpose**
|
||||
- **Leadership and structure**
|
||||
- **Goals and methods**
|
||||
- **Relationships with other factions**
|
||||
- **Role in the story**
|
||||
|
||||
Describe any factions:"
|
||||
|
||||
### 4. Locations Discovery
|
||||
|
||||
"**Describe the key locations in your world.**
|
||||
|
||||
For each significant location:
|
||||
|
||||
- **Name and description**
|
||||
- **Narrative significance** - Why does it matter to the story?
|
||||
- **Atmosphere and mood**
|
||||
- **Key events that occur there**
|
||||
- **Who controls/inhabits it?**
|
||||
|
||||
What are the key locations?"
|
||||
|
||||
### 5. Generate World Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## World Building
|
||||
|
||||
### World Overview
|
||||
|
||||
**Setting:** {{setting_description}}
|
||||
|
||||
**World Type:** {{world_type}}
|
||||
|
||||
**World Rules:**
|
||||
{{rules_and_systems}}
|
||||
|
||||
**Atmosphere:** {{world_atmosphere}}
|
||||
|
||||
**Unique Elements:** {{what_makes_it_unique}}
|
||||
|
||||
---
|
||||
|
||||
### History and Backstory
|
||||
|
||||
**Timeline Overview:**
|
||||
{{historical_timeline}}
|
||||
|
||||
**Major Events:**
|
||||
{{significant_events}}
|
||||
|
||||
**Legends and Myths:**
|
||||
{{beliefs_and_legends}}
|
||||
|
||||
**Hidden Secrets:**
|
||||
{{world_secrets}}
|
||||
|
||||
---
|
||||
|
||||
### Factions and Organizations
|
||||
|
||||
{{for_each_faction}}
|
||||
|
||||
#### {{faction_name}}
|
||||
|
||||
**Purpose:** {{purpose}}
|
||||
**Leadership:** {{leadership}}
|
||||
**Goals:** {{goals}}
|
||||
**Methods:** {{methods}}
|
||||
**Relationships:** {{faction_relationships}}
|
||||
**Story Role:** {{narrative_function}}
|
||||
{{/for_each}}
|
||||
|
||||
---
|
||||
|
||||
### Key Locations
|
||||
|
||||
{{for_each_location}}
|
||||
|
||||
#### {{location_name}}
|
||||
|
||||
**Description:** {{description}}
|
||||
**Narrative Significance:** {{why_important}}
|
||||
**Atmosphere:** {{mood}}
|
||||
**Key Events:** {{events_here}}
|
||||
**Inhabitants:** {{who_is_here}}
|
||||
{{/for_each}}
|
||||
```
|
||||
|
||||
### 6. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the world of {{game_name}}.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 5]
|
||||
|
||||
**World Summary:**
|
||||
|
||||
- Setting: {{setting}}
|
||||
- Factions: {{count}}
|
||||
- Key locations: {{count}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Does the world support your themes?
|
||||
- Are locations narratively significant?
|
||||
- Is history relevant to the present story?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore world depth
|
||||
[P] Party Mode - Get perspectives on world-building
|
||||
[C] Continue - Save this and move to Dialogue Systems (Step 6 of 11)"
|
||||
|
||||
### 7. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [world content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- World setting clearly defined
|
||||
- History connects to current story
|
||||
- Factions developed (if applicable)
|
||||
- Locations are narratively significant
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Creating world without user input
|
||||
- World disconnected from story
|
||||
- Generic locations without significance
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,251 @@
|
||||
---
|
||||
name: 'step-06-dialogue'
|
||||
description: 'Define dialogue style, key conversations, and branching systems'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-06-dialogue.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-07-environmental.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 6: Dialogue Systems
|
||||
|
||||
**Progress: Step 6 of 11** - Next: Environmental Storytelling
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define dialogue style, key conversations, and branching dialogue systems if applicable.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Dialogue is how characters come alive
|
||||
- Style should match tone and setting
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to write dialogue without user direction
|
||||
- Define style and systems, not actual dialogue
|
||||
- Consider technical implementation implications
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore dialogue depth
|
||||
- **P (Party Mode)**: Get perspectives on dialogue approach
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Dialogue Style Discovery
|
||||
|
||||
"**Let's define how characters speak in {{game_name}}.**
|
||||
|
||||
**Style considerations:**
|
||||
|
||||
| Aspect | Options |
|
||||
| ------------- | ---------------------------- |
|
||||
| **Formality** | Formal ←→ Casual |
|
||||
| **Period** | Period-appropriate ←→ Modern |
|
||||
| **Length** | Verbose ←→ Concise |
|
||||
| **Humor** | Serious ←→ Comedic |
|
||||
| **Profanity** | None ←→ Heavy |
|
||||
|
||||
**Questions:**
|
||||
|
||||
- How do different characters speak differently?
|
||||
- Are there speech patterns or verbal tics?
|
||||
- What's the overall voice of the game?
|
||||
|
||||
Describe your dialogue style:"
|
||||
|
||||
### 2. Key Conversations Discovery
|
||||
|
||||
"**List key conversations/dialogue moments.**
|
||||
|
||||
For each important conversation:
|
||||
|
||||
- **Who is involved?**
|
||||
- **When does it occur?**
|
||||
- **What's discussed?**
|
||||
- **Narrative purpose** - What does it accomplish?
|
||||
- **Emotional tone**
|
||||
|
||||
What are the key conversations in {{game_name}}?"
|
||||
|
||||
### 3. Branching Dialogue Discovery
|
||||
|
||||
"**Does {{game_name}} have branching dialogue?**
|
||||
|
||||
If yes, describe:
|
||||
|
||||
- **How many branches/paths?**
|
||||
- **What determines branches?** (player choice, stats, flags)
|
||||
- **Do branches converge or stay separate?**
|
||||
- **How much unique dialogue?**
|
||||
- **What are the consequences of choices?**
|
||||
|
||||
Describe your branching system (or indicate N/A):"
|
||||
|
||||
### 4. Generate Dialogue Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Dialogue Framework
|
||||
|
||||
### Dialogue Style
|
||||
|
||||
**Overall Voice:** {{dialogue_voice}}
|
||||
|
||||
**Style Elements:**
|
||||
|
||||
- Formality: {{formality_level}}
|
||||
- Period: {{period_style}}
|
||||
- Verbosity: {{verbosity}}
|
||||
- Humor: {{humor_level}}
|
||||
- Profanity: {{profanity_level}}
|
||||
|
||||
**Character Voice Distinctions:**
|
||||
{{how_characters_differ}}
|
||||
|
||||
---
|
||||
|
||||
### Key Conversations
|
||||
|
||||
{{for_each_conversation}}
|
||||
|
||||
#### {{conversation_name}}
|
||||
|
||||
**Participants:** {{who}}
|
||||
**When:** {{timing}}
|
||||
**Topic:** {{what_discussed}}
|
||||
**Purpose:** {{narrative_function}}
|
||||
**Tone:** {{emotional_tone}}
|
||||
{{/for_each}}
|
||||
|
||||
---
|
||||
|
||||
### Branching Dialogue System
|
||||
|
||||
{{if_branching}}
|
||||
**System Type:** {{branching_type}}
|
||||
|
||||
**Branch Triggers:** {{what_causes_branches}}
|
||||
|
||||
**Branch Scope:**
|
||||
|
||||
- Total branches: {{branch_count}}
|
||||
- Convergence: {{do_they_converge}}
|
||||
- Unique content: {{percentage_unique}}
|
||||
|
||||
**Consequence System:**
|
||||
{{how_choices_matter}}
|
||||
{{/if_branching}}
|
||||
|
||||
{{if_not_branching}}
|
||||
**System:** Linear dialogue
|
||||
**Notes:** {{why_linear}}
|
||||
{{/if_not_branching}}
|
||||
```
|
||||
|
||||
### 5. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the dialogue framework.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 4]
|
||||
|
||||
**Dialogue Summary:**
|
||||
|
||||
- Style: {{style_summary}}
|
||||
- Key conversations: {{count}}
|
||||
- Branching: {{yes_no}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Does style match your tone?
|
||||
- Are key conversations identified?
|
||||
- Is branching scope realistic?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore dialogue depth
|
||||
[P] Party Mode - Get perspectives on dialogue approach
|
||||
[C] Continue - Save this and move to Environmental Storytelling (Step 7 of 11)"
|
||||
|
||||
### 6. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [dialogue content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Dialogue style clearly defined
|
||||
- Key conversations identified
|
||||
- Branching system documented (if applicable)
|
||||
- Style matches game tone
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Writing actual dialogue without direction
|
||||
- Style disconnected from tone
|
||||
- Missing branching documentation
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,245 @@
|
||||
---
|
||||
name: 'step-07-environmental'
|
||||
description: 'Plan environmental storytelling including visual, audio, and found documents'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-07-environmental.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-08-delivery.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 7: Environmental Storytelling
|
||||
|
||||
**Progress: Step 7 of 11** - Next: Narrative Delivery
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define how story is told through the environment: visual storytelling, audio storytelling, and found documents/collectibles.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Show, don't tell - environmental storytelling is powerful
|
||||
- Help user think beyond dialogue
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to design environmental narrative without user input
|
||||
- Connect environmental elements to story
|
||||
- Consider implementation effort
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore environmental depth
|
||||
- **P (Party Mode)**: Get perspectives on environmental storytelling
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Visual Storytelling Discovery
|
||||
|
||||
"**How will you tell story through visuals in {{game_name}}?**
|
||||
|
||||
**Visual storytelling elements:**
|
||||
|
||||
- **Set dressing and props** - What objects tell stories?
|
||||
- **Environmental damage/aftermath** - What happened here?
|
||||
- **Visual symbolism** - Recurring images with meaning
|
||||
- **Color and lighting** - Mood and meaning through visuals
|
||||
- **Character design details** - What do appearances reveal?
|
||||
|
||||
How will visuals tell story in {{game_name}}?"
|
||||
|
||||
### 2. Audio Storytelling Discovery
|
||||
|
||||
"**How will audio contribute to storytelling?**
|
||||
|
||||
**Audio storytelling elements:**
|
||||
|
||||
- **Ambient sounds** - What do players hear in the world?
|
||||
- **Music emotional cues** - How does music guide feeling?
|
||||
- **Voice acting** - How is it used beyond dialogue?
|
||||
- **Audio logs/recordings** - Found audio content?
|
||||
- **Sound design** - Sounds that carry meaning
|
||||
|
||||
How will audio tell story in {{game_name}}?"
|
||||
|
||||
### 3. Found Documents Discovery
|
||||
|
||||
"**Will you have found documents?** (Journals, notes, emails, etc.)
|
||||
|
||||
If yes, describe:
|
||||
|
||||
- **Types of documents** - What forms do they take?
|
||||
- **How many** - Approximate count
|
||||
- **What they reveal** - Backstory? World-building? Character?
|
||||
- **Optional vs required** - Must players find them?
|
||||
- **Reward for finding** - Achievement? Story unlock? Lore only?
|
||||
|
||||
Describe your found documents (or indicate N/A):"
|
||||
|
||||
### 4. Generate Environmental Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Environmental Storytelling
|
||||
|
||||
### Visual Storytelling
|
||||
|
||||
**Set Dressing:**
|
||||
{{set_dressing_approach}}
|
||||
|
||||
**Environmental Details:**
|
||||
{{environmental_storytelling_examples}}
|
||||
|
||||
**Visual Symbolism:**
|
||||
{{symbolic_elements}}
|
||||
|
||||
**Color and Lighting:**
|
||||
{{color_lighting_approach}}
|
||||
|
||||
---
|
||||
|
||||
### Audio Storytelling
|
||||
|
||||
**Ambient Design:**
|
||||
{{ambient_sound_approach}}
|
||||
|
||||
**Music Integration:**
|
||||
{{music_storytelling}}
|
||||
|
||||
**Voice Elements:**
|
||||
{{voice_beyond_dialogue}}
|
||||
|
||||
**Sound Design Narrative:**
|
||||
{{meaningful_sounds}}
|
||||
|
||||
---
|
||||
|
||||
### Found Documents
|
||||
|
||||
{{if_has_documents}}
|
||||
**Document Types:**
|
||||
{{document_types}}
|
||||
|
||||
**Quantity:** {{approximate_count}}
|
||||
|
||||
**Content Focus:**
|
||||
{{what_documents_reveal}}
|
||||
|
||||
**Discovery:**
|
||||
|
||||
- Required: {{required_documents}}
|
||||
- Optional: {{optional_documents}}
|
||||
|
||||
**Rewards:** {{finding_rewards}}
|
||||
{{/if_has_documents}}
|
||||
|
||||
{{if_no_documents}}
|
||||
**Approach:** No found documents
|
||||
**Rationale:** {{why_no_documents}}
|
||||
{{/if_no_documents}}
|
||||
```
|
||||
|
||||
### 5. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the environmental storytelling approach.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 4]
|
||||
|
||||
**Environmental Summary:**
|
||||
|
||||
- Visual elements: Defined
|
||||
- Audio elements: Defined
|
||||
- Found documents: {{yes_no}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Does visual storytelling match your world?
|
||||
- Is audio approach realistic for scope?
|
||||
- Are found documents well-integrated?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore environmental depth
|
||||
[P] Party Mode - Get perspectives on environmental storytelling
|
||||
[C] Continue - Save this and move to Narrative Delivery (Step 8 of 11)"
|
||||
|
||||
### 6. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [environmental content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Visual storytelling approach defined
|
||||
- Audio storytelling integrated
|
||||
- Found documents documented (if applicable)
|
||||
- Elements connect to story themes
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6, 7]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Creating environmental details without user input
|
||||
- Elements disconnected from story
|
||||
- Missing audio considerations
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,265 @@
|
||||
---
|
||||
name: 'step-08-delivery'
|
||||
description: 'Design narrative delivery methods including cutscenes, in-game storytelling, and endings'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-08-delivery.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-09-integration.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 8: Narrative Delivery
|
||||
|
||||
**Progress: Step 8 of 11** - Next: Gameplay Integration
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define how narrative content is delivered to players: cutscenes, in-game storytelling, optional content, and ending structures.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Delivery method affects player experience
|
||||
- Balance story delivery with gameplay
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to decide delivery without user input
|
||||
- Consider production effort for each method
|
||||
- Match delivery to game type
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore delivery methods
|
||||
- **P (Party Mode)**: Get perspectives on delivery approach
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Cutscenes Discovery
|
||||
|
||||
"**How will you use cutscenes in {{game_name}}?**
|
||||
|
||||
**Cutscene considerations:**
|
||||
|
||||
- **Quantity** - How many major cutscenes?
|
||||
- **Length** - Average duration?
|
||||
- **Style** - Real-time rendered? Pre-rendered? Animated?
|
||||
- **Skippable** - Can players skip?
|
||||
- **Interactive** - Any QTEs or choices during cutscenes?
|
||||
|
||||
Describe your cutscene approach:"
|
||||
|
||||
### 2. In-Game Storytelling Discovery
|
||||
|
||||
"**How will story be delivered during gameplay?**
|
||||
|
||||
**In-game storytelling methods:**
|
||||
|
||||
- **NPC conversations** - Talking to characters
|
||||
- **Radio/comm chatter** - Voice in player's ear
|
||||
- **Environmental cues** - Reading the world
|
||||
- **Player actions** - Story through doing
|
||||
- **UI elements** - Quest logs, journals, etc.
|
||||
|
||||
**Balance considerations:**
|
||||
|
||||
- Show vs. tell - How much is shown vs. explained?
|
||||
- Interruption tolerance - How often stop for story?
|
||||
- Player control - Can players skip/speed up?
|
||||
|
||||
How will you deliver story during gameplay?"
|
||||
|
||||
### 3. Optional Content Discovery
|
||||
|
||||
"**What narrative content is optional?**
|
||||
|
||||
**Optional content types:**
|
||||
|
||||
- **Side quests** - Optional story missions
|
||||
- **Collectible lore** - World-building items
|
||||
- **Optional conversations** - Extra NPC dialogue
|
||||
- **Secret endings** - Hidden conclusions
|
||||
- **Extended content** - Post-game, NG+, DLC hooks
|
||||
|
||||
What optional narrative content will {{game_name}} have?"
|
||||
|
||||
### 4. Endings Discovery
|
||||
|
||||
"**If your game has multiple endings, describe them.**
|
||||
|
||||
**Ending considerations:**
|
||||
|
||||
- **How many endings?**
|
||||
- **What determines the ending?** (choices, stats, completion)
|
||||
- **Ending variety** - Minor variations vs. drastically different
|
||||
- **True/golden ending** - Is there a "best" ending?
|
||||
- **Replayability** - Can players see all endings?
|
||||
|
||||
Describe your ending structure (or indicate single ending):"
|
||||
|
||||
### 5. Generate Delivery Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Narrative Delivery
|
||||
|
||||
### Cutscenes
|
||||
|
||||
**Quantity:** {{cutscene_count}}
|
||||
**Average Length:** {{typical_duration}}
|
||||
**Style:** {{cutscene_style}}
|
||||
**Skippable:** {{yes_no}}
|
||||
**Interactive Elements:** {{if_any}}
|
||||
|
||||
**Major Cutscenes:**
|
||||
{{list_of_major_cutscenes}}
|
||||
|
||||
---
|
||||
|
||||
### In-Game Storytelling
|
||||
|
||||
**Primary Methods:**
|
||||
{{delivery_methods_list}}
|
||||
|
||||
**Show vs. Tell Balance:** {{balance_description}}
|
||||
|
||||
**Interruption Approach:** {{how_often_story_stops_gameplay}}
|
||||
|
||||
**Player Control:** {{skip_speedup_options}}
|
||||
|
||||
---
|
||||
|
||||
### Optional Content
|
||||
|
||||
{{for_each_optional_type}}
|
||||
**{{content_type}}:**
|
||||
{{description_and_scope}}
|
||||
{{/for_each}}
|
||||
|
||||
---
|
||||
|
||||
### Ending Structure
|
||||
|
||||
{{if_multiple_endings}}
|
||||
**Number of Endings:** {{ending_count}}
|
||||
|
||||
**Ending Triggers:** {{what_determines_ending}}
|
||||
|
||||
**Ending Variety:**
|
||||
{{description_of_differences}}
|
||||
|
||||
**True Ending:** {{if_exists}}
|
||||
|
||||
**Replayability:** {{how_to_see_all}}
|
||||
{{/if_multiple_endings}}
|
||||
|
||||
{{if_single_ending}}
|
||||
**Ending Type:** Single ending
|
||||
**Description:** {{ending_approach}}
|
||||
{{/if_single_ending}}
|
||||
```
|
||||
|
||||
### 6. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the narrative delivery approach.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 5]
|
||||
|
||||
**Delivery Summary:**
|
||||
|
||||
- Cutscenes: {{count_or_none}}
|
||||
- In-game methods: {{methods_list}}
|
||||
- Optional content: {{types}}
|
||||
- Endings: {{single_or_multiple}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Is delivery method realistic for scope?
|
||||
- Does it match your narrative complexity?
|
||||
- Are endings meaningful?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore delivery methods
|
||||
[P] Party Mode - Get perspectives on delivery approach
|
||||
[C] Continue - Save this and move to Gameplay Integration (Step 9 of 11)"
|
||||
|
||||
### 7. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [delivery content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Cutscene approach defined
|
||||
- In-game delivery methods established
|
||||
- Optional content scoped
|
||||
- Ending structure documented
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Deciding delivery without user input
|
||||
- Methods unrealistic for scope
|
||||
- Missing ending documentation
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,255 @@
|
||||
---
|
||||
name: 'step-09-integration'
|
||||
description: 'Define how narrative integrates with gameplay including gating, agency, and ludonarrative harmony'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-09-integration.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-10-production.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 9: Gameplay Integration
|
||||
|
||||
**Progress: Step 9 of 11** - Next: Production Planning
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Define how narrative integrates with gameplay: story-gameplay connection, progression gating, and player agency within the narrative.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Ludonarrative harmony matters
|
||||
- Story and gameplay should reinforce each other
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to design integration without user input
|
||||
- Consider player experience flow
|
||||
- Address potential ludonarrative dissonance
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore integration depth
|
||||
- **P (Party Mode)**: Get perspectives on integration
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Narrative-Gameplay Connection Discovery
|
||||
|
||||
"**How does narrative integrate with gameplay in {{game_name}}?**
|
||||
|
||||
**Integration questions:**
|
||||
|
||||
- Does story unlock new mechanics or abilities?
|
||||
- Do mechanics reflect the themes?
|
||||
- Is there harmony between what player DOES and what story SAYS?
|
||||
- What's the balance of story vs. gameplay sections?
|
||||
|
||||
**Ludonarrative consideration:**
|
||||
Games work best when mechanics and narrative tell the same story. A game about pacifism shouldn't require combat.
|
||||
|
||||
Describe how narrative and gameplay connect:"
|
||||
|
||||
### 2. Story Gating Discovery
|
||||
|
||||
"**How does story gate progression?**
|
||||
|
||||
**Gating types:**
|
||||
|
||||
- **Hard gates** - Must complete story to proceed
|
||||
- **Soft gates** - Story available but optional
|
||||
- **Skill gates** - Narrative rewards for mastery
|
||||
- **Exploration gates** - Story found through exploring
|
||||
|
||||
**Questions:**
|
||||
|
||||
- What areas are story-locked?
|
||||
- What triggers cutscenes?
|
||||
- What story beats are mandatory?
|
||||
- What's optional vs. required?
|
||||
|
||||
How does story gate progress in {{game_name}}?"
|
||||
|
||||
### 3. Player Agency Discovery
|
||||
|
||||
"**How much narrative agency does the player have?**
|
||||
|
||||
**Agency spectrum:**
|
||||
|
||||
- **Full agency** - Player creates their own story
|
||||
- **Meaningful choices** - Player shapes outcomes
|
||||
- **Flavor choices** - Player affects tone, not outcome
|
||||
- **Witness** - Player observes a fixed story
|
||||
|
||||
**Questions:**
|
||||
|
||||
- Can player affect the story?
|
||||
- Are choices meaningful or cosmetic?
|
||||
- How much role-playing freedom?
|
||||
- Is the narrative predetermined or dynamic?
|
||||
|
||||
Describe player agency in {{game_name}}:"
|
||||
|
||||
### 4. Generate Integration Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Gameplay Integration
|
||||
|
||||
### Narrative-Gameplay Connection
|
||||
|
||||
**Integration Approach:**
|
||||
{{integration_description}}
|
||||
|
||||
**Mechanic-Theme Alignment:**
|
||||
{{how_mechanics_reflect_themes}}
|
||||
|
||||
**Story-Gameplay Balance:**
|
||||
{{balance_description}}
|
||||
|
||||
**Ludonarrative Considerations:**
|
||||
{{harmony_or_dissonance_notes}}
|
||||
|
||||
---
|
||||
|
||||
### Story Gating
|
||||
|
||||
**Gating Approach:** {{gating_type}}
|
||||
|
||||
**Story-Locked Elements:**
|
||||
{{what_requires_story_progress}}
|
||||
|
||||
**Cutscene Triggers:**
|
||||
{{when_cutscenes_play}}
|
||||
|
||||
**Mandatory Story Beats:**
|
||||
{{required_narrative_content}}
|
||||
|
||||
**Optional Narrative:**
|
||||
{{skippable_content}}
|
||||
|
||||
---
|
||||
|
||||
### Player Agency
|
||||
|
||||
**Agency Level:** {{agency_type}}
|
||||
|
||||
**Player Influence:**
|
||||
{{what_player_can_affect}}
|
||||
|
||||
**Choice System:**
|
||||
{{if_has_choices}}
|
||||
|
||||
- Choice types: {{choice_types}}
|
||||
- Consequence scope: {{how_choices_matter}}
|
||||
- Timing: {{when_choices_occur}}
|
||||
{{/if_has_choices}}
|
||||
|
||||
**Role-Playing Freedom:**
|
||||
{{roleplay_options}}
|
||||
```
|
||||
|
||||
### 5. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the gameplay-narrative integration.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 4]
|
||||
|
||||
**Integration Summary:**
|
||||
|
||||
- Connection: {{integration_type}}
|
||||
- Gating: {{gating_approach}}
|
||||
- Agency: {{agency_level}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Do mechanics support themes?
|
||||
- Is gating appropriate for your game?
|
||||
- Is agency level what you want?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore integration depth
|
||||
[P] Party Mode - Get perspectives on integration
|
||||
[C] Continue - Save this and move to Production Planning (Step 10 of 11)"
|
||||
|
||||
### 6. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [integration content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Narrative-gameplay connection defined
|
||||
- Gating structure documented
|
||||
- Player agency level established
|
||||
- Ludonarrative harmony considered
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Designing integration without user input
|
||||
- Ignoring ludonarrative harmony
|
||||
- Missing agency documentation
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,263 @@
|
||||
---
|
||||
name: 'step-10-production'
|
||||
description: 'Plan production scope including writing estimates, localization, and voice acting'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-10-production.md'
|
||||
nextStepFile: '{workflow_path}/steps/step-11-complete.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step 10: Production Planning
|
||||
|
||||
**Progress: Step 10 of 11** - Next: Complete
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Plan the production scope for narrative content: writing scope estimates, localization considerations, and voice acting plans.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- Production planning ensures realistic scope
|
||||
- Help user understand what they're committing to
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- FORBIDDEN to estimate scope without user input
|
||||
- Help user think through production needs
|
||||
- Be realistic about effort required
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Present A/P/C menu after generating content
|
||||
- ONLY save when user chooses C (Continue)
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]` before loading next step
|
||||
|
||||
## COLLABORATION MENUS (A/P/C):
|
||||
|
||||
- **A (Advanced Elicitation)**: Explore production details
|
||||
- **P (Party Mode)**: Get perspectives on scope
|
||||
- **C (Continue)**: Save the content and proceed
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Writing Scope Discovery
|
||||
|
||||
"**Let's estimate the writing scope for {{game_name}}.**
|
||||
|
||||
**Scope elements:**
|
||||
|
||||
- **Word count estimate** - Total written content
|
||||
- **Scene/chapter count** - Major narrative sections
|
||||
- **Dialogue lines** - Approximate line count
|
||||
- **Branching complexity** - How much unique content per path?
|
||||
|
||||
**For reference:**
|
||||
|
||||
- Light narrative game: ~5,000-15,000 words
|
||||
- Moderate narrative: ~15,000-50,000 words
|
||||
- Heavy narrative: ~50,000-150,000 words
|
||||
- Story-driven/Visual novel: 100,000+ words
|
||||
|
||||
Estimate your writing scope:"
|
||||
|
||||
### 2. Localization Discovery
|
||||
|
||||
"**Are you planning localization?**
|
||||
|
||||
**Localization considerations:**
|
||||
|
||||
- **Target languages** - Which languages?
|
||||
- **Cultural adaptation** - What needs to change per region?
|
||||
- **Text expansion** - Some languages use 30% more space
|
||||
- **UI implications** - Can UI handle longer text?
|
||||
- **Audio implications** - Will you dub or subtitle?
|
||||
|
||||
Describe your localization plans (or indicate English-only):"
|
||||
|
||||
### 3. Voice Acting Discovery
|
||||
|
||||
"**What are your voice acting plans?**
|
||||
|
||||
**Voice acting scope:**
|
||||
|
||||
- **Fully voiced** - All dialogue recorded
|
||||
- **Partially voiced** - Key scenes only
|
||||
- **Grunts/barks only** - No full dialogue
|
||||
- **Text only** - No voice acting
|
||||
|
||||
**If voiced:**
|
||||
|
||||
- Number of characters needing voices?
|
||||
- Approximate dialogue volume?
|
||||
- Professional or placeholder voices?
|
||||
|
||||
Describe your voice acting approach:"
|
||||
|
||||
### 4. Generate Production Content
|
||||
|
||||
Based on the conversation, prepare the content:
|
||||
|
||||
```markdown
|
||||
## Production Planning
|
||||
|
||||
### Writing Scope
|
||||
|
||||
**Estimated Word Count:** {{word_count}}
|
||||
|
||||
**Content Breakdown:**
|
||||
|
||||
- Main story: {{main_story_words}}
|
||||
- Side content: {{side_content_words}}
|
||||
- Environmental/lore: {{lore_words}}
|
||||
- UI/system text: {{ui_words}}
|
||||
|
||||
**Scene Count:** {{scene_count}}
|
||||
|
||||
**Dialogue Lines:** {{line_count}}
|
||||
|
||||
**Branching Complexity:**
|
||||
{{branching_impact_on_scope}}
|
||||
|
||||
---
|
||||
|
||||
### Localization
|
||||
|
||||
{{if_localizing}}
|
||||
**Target Languages:**
|
||||
{{language_list}}
|
||||
|
||||
**Cultural Adaptation Notes:**
|
||||
{{adaptation_needs}}
|
||||
|
||||
**Technical Considerations:**
|
||||
|
||||
- Text expansion buffer: {{percentage}}
|
||||
- UI flexibility: {{notes}}
|
||||
- Audio approach: {{dub_or_subtitle}}
|
||||
{{/if_localizing}}
|
||||
|
||||
{{if_english_only}}
|
||||
**Approach:** English only
|
||||
**Future consideration:** {{maybe_later_notes}}
|
||||
{{/if_english_only}}
|
||||
|
||||
---
|
||||
|
||||
### Voice Acting
|
||||
|
||||
**Approach:** {{voice_acting_level}}
|
||||
|
||||
{{if_voiced}}
|
||||
**Characters Needing Voices:** {{character_count}}
|
||||
|
||||
**Dialogue Volume:** {{line_count_for_recording}}
|
||||
|
||||
**Voice Cast Notes:**
|
||||
{{casting_considerations}}
|
||||
|
||||
**Recording Approach:**
|
||||
{{professional_or_placeholder}}
|
||||
{{/if_voiced}}
|
||||
|
||||
{{if_not_voiced}}
|
||||
**Rationale:** {{why_no_voice}}
|
||||
{{/if_not_voiced}}
|
||||
```
|
||||
|
||||
### 5. Present Content and Menu
|
||||
|
||||
Show the generated content to the user and present:
|
||||
|
||||
"I've documented the production planning.
|
||||
|
||||
**Here's what I'll add to the document:**
|
||||
|
||||
[Show the complete markdown content from step 4]
|
||||
|
||||
**Production Summary:**
|
||||
|
||||
- Writing: ~{{word_count}} words
|
||||
- Localization: {{languages_or_none}}
|
||||
- Voice acting: {{level}}
|
||||
|
||||
**Validation Check:**
|
||||
|
||||
- Is scope realistic for your resources?
|
||||
- Have you considered all production needs?
|
||||
- Are localization needs addressed?
|
||||
|
||||
**Select an Option:**
|
||||
[A] Advanced Elicitation - Explore production details
|
||||
[P] Party Mode - Get perspectives on scope
|
||||
[C] Continue - Save this and move to Completion (Step 11 of 11)"
|
||||
|
||||
### 6. Handle Menu Selection
|
||||
|
||||
#### IF A (Advanced Elicitation):
|
||||
|
||||
- Execute {advancedElicitationTask} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF P (Party Mode):
|
||||
|
||||
- Execute {partyModeWorkflow} with the current content
|
||||
- Ask user: "Accept these changes? (y/n)"
|
||||
- If yes: Update content, return to A/P/C menu
|
||||
- If no: Keep original, return to A/P/C menu
|
||||
|
||||
#### IF C (Continue):
|
||||
|
||||
- Append the final content to `{outputFile}`
|
||||
- Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]`
|
||||
- Load `{nextStepFile}`
|
||||
|
||||
## CRITICAL STEP COMPLETION NOTE
|
||||
|
||||
ONLY WHEN [C continue option] is selected and [production content saved with frontmatter updated], will you then load and read fully `{nextStepFile}`.
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Writing scope estimated
|
||||
- Localization needs addressed
|
||||
- Voice acting approach defined
|
||||
- Realistic production expectations set
|
||||
- A/P/C menu presented and handled correctly
|
||||
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Estimating scope without user input
|
||||
- Missing major production considerations
|
||||
- Unrealistic expectations set
|
||||
- Not presenting A/P/C menu after content
|
||||
- Proceeding without user selecting 'C'
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
@@ -0,0 +1,332 @@
|
||||
---
|
||||
name: 'step-11-complete'
|
||||
description: 'Complete the narrative workflow with final summary, visualizations, and handoff'
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: '{project-root}/_bmad/bmgd/workflows/2-design/narrative'
|
||||
|
||||
# File References
|
||||
thisStepFile: '{workflow_path}/steps/step-11-complete.md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
outputFile: '{output_folder}/narrative-design.md'
|
||||
|
||||
# Handoff References
|
||||
architectureWorkflow: '{project-root}/_bmad/bmgd/workflows/3-technical/game-architecture/workflow.yaml'
|
||||
---
|
||||
|
||||
# Step 11: Complete
|
||||
|
||||
**Progress: Step 11 of 11** - Narrative Design Complete!
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Generate final visualizations (character relationships, timeline), capture references, update workflow status, and provide clear handoff guidance.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- NEVER generate content without user input
|
||||
- CRITICAL: Read the complete step file before taking any action
|
||||
- YOU ARE A FACILITATOR, not a content generator
|
||||
- NEVER mention time estimates
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- You are a narrative design facilitator
|
||||
- This is the final step - ensure completeness
|
||||
- Provide actionable next steps
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- Generate relationship map from characters defined
|
||||
- Generate timeline from story beats
|
||||
- Capture any references user wants to note
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- Show your analysis before taking any action
|
||||
- Generate final visualizations
|
||||
- Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]`
|
||||
- Present completion summary and next steps
|
||||
|
||||
## Sequence of Instructions (Do not deviate, skip, or optimize)
|
||||
|
||||
### 1. Generate Character Relationship Map
|
||||
|
||||
**Create text-based relationship visualization:**
|
||||
|
||||
Based on all characters documented, generate:
|
||||
|
||||
```markdown
|
||||
## Appendix: Character Relationships
|
||||
|
||||
### Relationship Map
|
||||
```
|
||||
|
||||
[ANTAGONIST]
|
||||
|
|
||||
(opposes)
|
||||
|
|
||||
[MENTOR] ---(guides)--- [PROTAGONIST] ---(allies)--- [COMPANION]
|
||||
|
|
||||
(romantic)
|
||||
|
|
||||
[LOVE INTEREST]
|
||||
|
||||
```
|
||||
|
||||
### Relationship Key
|
||||
|
||||
- {{character_1}} → {{character_2}}: {{relationship_type}}
|
||||
- {{character_2}} → {{character_3}}: {{relationship_type}}
|
||||
{{continue_for_all_relationships}}
|
||||
```
|
||||
|
||||
### 2. Generate Story Timeline
|
||||
|
||||
**Create timeline visualization:**
|
||||
|
||||
Based on story beats documented, generate:
|
||||
|
||||
```markdown
|
||||
## Appendix: Story Timeline
|
||||
|
||||
### Chronological Events
|
||||
```
|
||||
|
||||
[BACKSTORY]
|
||||
|
|
||||
v
|
||||
[ACT 1: SETUP]
|
||||
├── {{beat_1}}
|
||||
├── {{beat_2}}
|
||||
└── {{inciting_incident}}
|
||||
|
|
||||
v
|
||||
[ACT 2: CONFRONTATION]
|
||||
├── {{beat_3}}
|
||||
├── {{midpoint}}
|
||||
├── {{beat_4}}
|
||||
└── {{crisis}}
|
||||
|
|
||||
v
|
||||
[ACT 3: RESOLUTION]
|
||||
├── {{climax}}
|
||||
└── {{resolution}}
|
||||
|
||||
```
|
||||
|
||||
### Timeline Notes
|
||||
|
||||
{{any_timeline_clarifications}}
|
||||
```
|
||||
|
||||
### 3. References Discovery
|
||||
|
||||
"**Do you have any references or inspirations to note?**
|
||||
|
||||
This helps future writers understand your vision:
|
||||
|
||||
- Books, movies, games that inspired you
|
||||
- Reference materials for tone/style
|
||||
- Mood boards or concept art references
|
||||
- Theme or narrative references
|
||||
|
||||
What references should be documented? (or 'none'):"
|
||||
|
||||
### 4. Finalize Document
|
||||
|
||||
**Update the document with final content:**
|
||||
|
||||
Add relationship map and timeline to document.
|
||||
|
||||
**Final frontmatter:**
|
||||
|
||||
```yaml
|
||||
---
|
||||
title: 'Narrative Design Document'
|
||||
project: '{{game_name}}'
|
||||
date: '{{date}}'
|
||||
author: '{{user_name}}'
|
||||
version: '1.0'
|
||||
stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
|
||||
status: 'complete'
|
||||
narrativeComplexity: '{{complexity}}'
|
||||
---
|
||||
```
|
||||
|
||||
### 5. Update Workflow Status
|
||||
|
||||
**If not in standalone mode:**
|
||||
|
||||
Load `{output_folder}/bmgd-workflow-status.yaml` and:
|
||||
|
||||
- Update `narrative` status to the output file path
|
||||
- Preserve all comments and structure
|
||||
- Determine next workflow in sequence
|
||||
|
||||
### 6. Present Completion Summary
|
||||
|
||||
"**Narrative Design Complete!**
|
||||
|
||||
{{user_name}}, the Narrative Design Document for **{{game_name}}** is complete!
|
||||
|
||||
**Narrative Summary:**
|
||||
|
||||
- **Premise:** {{premise_summary}}
|
||||
- **Themes:** {{themes_list}}
|
||||
- **Characters:** {{character_count}} ({{protagonist_count}} protagonist, {{antagonist_count}} antagonist, {{supporting_count}} supporting)
|
||||
- **Story Structure:** {{structure_type}}
|
||||
- **Writing Scope:** ~{{word_count}} words
|
||||
|
||||
**Sections Completed:**
|
||||
|
||||
1. Story Foundation (premise, themes, structure)
|
||||
2. Story Beats (major moments, pacing)
|
||||
3. Characters (all characters and arcs)
|
||||
4. World Building (setting, history, locations)
|
||||
5. Dialogue Framework (style, key conversations)
|
||||
6. Environmental Storytelling (visual, audio, documents)
|
||||
7. Narrative Delivery (cutscenes, in-game, endings)
|
||||
8. Gameplay Integration (gating, agency)
|
||||
9. Production Planning (scope, localization, voice)
|
||||
10. Appendices (relationships, timeline)
|
||||
|
||||
**Document saved to:** `{outputFile}`
|
||||
|
||||
Do you want to review or adjust anything before we finalize?"
|
||||
|
||||
### 7. Handle Review Requests
|
||||
|
||||
**If user wants to review:**
|
||||
|
||||
"Which would you like to review?
|
||||
|
||||
1. Story Foundation
|
||||
2. Story Beats
|
||||
3. Characters
|
||||
4. World Building
|
||||
5. Dialogue
|
||||
6. Environmental Storytelling
|
||||
7. Narrative Delivery
|
||||
8. Gameplay Integration
|
||||
9. Production Planning
|
||||
10. Full Document
|
||||
|
||||
Select a section:"
|
||||
|
||||
### 8. Present Next Steps Menu
|
||||
|
||||
"**Recommended Next Steps:**
|
||||
|
||||
1. **Technical Architecture** - Define how narrative systems will be implemented
|
||||
- Workflow: `create-architecture`
|
||||
- Input: GDD + Narrative Design
|
||||
- Output: Technical architecture document
|
||||
|
||||
2. **Create Script/Screenplay** - Write the actual dialogue and scenes
|
||||
- This is done outside the workflow
|
||||
- Use the Narrative Design as your blueprint
|
||||
|
||||
3. **Review with Team** - Share with collaborators for feedback
|
||||
|
||||
4. **Exit Workflow**
|
||||
|
||||
**Which would you like to do next?**
|
||||
|
||||
1. Start Architecture workflow
|
||||
2. Review the narrative document
|
||||
3. Exit workflow"
|
||||
|
||||
### 9. Handle User Selection
|
||||
|
||||
Based on user choice:
|
||||
|
||||
**If 1 (Architecture):**
|
||||
|
||||
- Confirm document is saved
|
||||
- Provide handoff guidance
|
||||
- Note narrative will inform technical decisions
|
||||
|
||||
**If 2 (Review):**
|
||||
|
||||
- Present full document or requested section
|
||||
- Return to next steps menu
|
||||
|
||||
**If 3 (Exit):**
|
||||
|
||||
- Confirm document is saved and complete
|
||||
- Exit workflow gracefully
|
||||
|
||||
### 10. Final Completion Message
|
||||
|
||||
"**Narrative Design Complete!**
|
||||
|
||||
**Deliverables:**
|
||||
|
||||
- Narrative design saved to: `{outputFile}`
|
||||
- {{character_count}} characters documented
|
||||
- {{beat_count}} story beats mapped
|
||||
- {{location_count}} locations defined
|
||||
|
||||
{{#if standalone_mode != true}}
|
||||
**Status Updated:**
|
||||
|
||||
- Progress tracking updated: narrative marked complete
|
||||
- Next recommended: Architecture workflow
|
||||
{{/if}}
|
||||
|
||||
**Your Narrative Is Ready For:**
|
||||
|
||||
- Script/screenplay writing
|
||||
- Technical implementation planning
|
||||
- Team review and iteration
|
||||
- Production scheduling
|
||||
|
||||
Excellent work crafting the narrative for {{game_name}}, {{user_name}}!"
|
||||
|
||||
---
|
||||
|
||||
## SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### SUCCESS:
|
||||
|
||||
- Relationship map generated
|
||||
- Timeline generated
|
||||
- References captured
|
||||
- All content saved to document
|
||||
- Workflow status updated (if tracking)
|
||||
- Frontmatter shows all 11 steps completed
|
||||
- User has clear next steps
|
||||
|
||||
### SYSTEM FAILURE:
|
||||
|
||||
- Missing visualizations
|
||||
- Incomplete document
|
||||
- Status not updated when tracking
|
||||
- No clear next steps provided
|
||||
- User left without guidance
|
||||
|
||||
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
||||
|
||||
---
|
||||
|
||||
## Narrative Design Workflow Complete
|
||||
|
||||
The Narrative Design workflow creates comprehensive narrative documentation through 11 collaborative steps:
|
||||
|
||||
1. **Initialize** - Validate readiness, assess complexity
|
||||
2. **Foundation** - Premise, themes, tone, structure
|
||||
3. **Story** - Beats and pacing
|
||||
4. **Characters** - All characters and arcs
|
||||
5. **World** - Setting, history, factions, locations
|
||||
6. **Dialogue** - Style and systems
|
||||
7. **Environmental** - Environmental storytelling
|
||||
8. **Delivery** - Narrative delivery methods
|
||||
9. **Integration** - Gameplay-narrative connection
|
||||
10. **Production** - Scope and planning
|
||||
11. **Complete** - Visualizations and handoff
|
||||
|
||||
This step-file architecture ensures consistent, thorough narrative design with user collaboration at every step.
|
||||
Reference in new issue
Block a user