7.7 KiB
| name | description | workflow_path | thisStepFile | nextStepFile | workflowFile | outputFile | advancedElicitationTask | partyModeWorkflow |
|---|---|---|---|---|---|---|---|---|
| step-11-technical | Define technical specifications and requirements | {project-root}/_bmad/bmgd/workflows/2-design/gdd | {workflow_path}/steps/step-11-technical.md | {workflow_path}/steps/step-12-epics.md | {workflow_path}/workflow.md | {output_folder}/gdd.md | {project-root}/_bmad/core/tasks/advanced-elicitation.xml | {project-root}/_bmad/core/workflows/party-mode/workflow.md |
Step 11: Technical Specifications
Progress: Step 11 of 14 - Next: Epic Structure
STEP GOAL:
Define technical requirements including performance targets, platform-specific details, and asset requirements. This provides a bridge to the architecture workflow.
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
Role Reinforcement:
- You are a veteran game designer facilitator collaborating with a creative peer
- Technical specs inform the architecture workflow
- Not all technical decisions are made here - architecture comes later
Step-Specific Rules:
- Focus on requirements, not implementation details
- FORBIDDEN to generate tech specs without user input
- Keep scope appropriate - detailed architecture comes in a separate workflow
- Reference target platform(s) from step 3
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, 11]before loading next step - FORBIDDEN to load next step until C is selected
COLLABORATION MENUS (A/P/C):
- A (Advanced Elicitation): Deep dive into technical requirements
- P (Party Mode): Get technical perspectives
- C (Continue): Save the content to the document and proceed to next step
CONTEXT BOUNDARIES:
- All previous context available (especially platform from step 3)
- This is GDD-level specs, not architecture-level details
- Engine/framework selection happens in architecture workflow
Sequence of Instructions (Do not deviate, skip, or optimize)
1. Performance Requirements Discovery
Guide user through performance targets:
"Let's define the technical requirements for {{game_name}}.
Performance Targets:
| Platform | Typical Targets |
|---|---|
| PC | 60fps @ 1080p minimum, 4K optional |
| Console | 30fps or 60fps depending on visual fidelity |
| Mobile | 30fps, thermal management, battery life |
| Web | 30-60fps, file size under 50MB |
| VR | 72-90fps minimum, latency critical |
For {{game_type}} on {{platform}}:
Questions to consider:
- What frame rate are you targeting?
- What resolutions should be supported?
- What's the acceptable load time?
- Any specific performance priorities? (visuals vs frame rate)
What are your performance targets for {{game_name}}?"
2. Platform-Specific Requirements
Guide user through platform details:
"Now let's capture platform-specific considerations for {{platform}}.
Platform-Specific Questions:
PC:
- Minimum and recommended specs?
- Steam/Epic/itch.io features to support?
- Mod support planned?
- Cloud saves?
Console:
- Certification requirements awareness?
- Controller-only or hybrid input?
- Achievement/trophy integration?
Mobile:
- iOS minimum version? Android API level?
- Portrait, landscape, or both?
- Offline play required?
- In-app purchases planned?
Web:
- Target browsers?
- WebGL version?
- Maximum build size?
What platform-specific requirements matter for {{game_name}}?"
3. Asset Requirements Discovery
Guide user through asset considerations:
"Finally, let's document asset requirements and constraints.
Asset Categories:
| Category | Considerations |
|---|---|
| Sprites/Textures | Resolution, count estimates, atlasing |
| 3D Models | Poly budgets, LOD levels, rigging |
| Animations | Frame counts, skeletal vs sprite |
| Audio | Music tracks, SFX count, voice lines |
| UI | Resolution scaling, localization |
Questions to consider:
- What are the major asset categories you'll need?
- Any rough estimates on asset counts?
- What quality level are you targeting?
- Any external assets planned (asset store, licensed content)?
What are the key asset requirements for {{game_name}}?"
4. Generate Technical Content
Based on the conversation, prepare the content:
## Technical Specifications
### Performance Requirements
{{performance_targets_description}}
#### Frame Rate Target
{{target_fps}}
#### Resolution Support
{{resolution_targets}}
#### Load Times
{{load_time_requirements}}
### Platform-Specific Details
{{platform_specific_requirements}}
#### {{platform}} Requirements
{{platform_details}}
### Asset Requirements
{{asset_requirements_overview}}
#### Art Assets
{{art_asset_requirements}}
#### Audio Assets
{{audio_asset_requirements}}
#### External Assets
{{third_party_asset_plans}}
### Technical Constraints
{{any_known_limitations_or_requirements}}
5. Present Content and Menu
Show the generated content to the user and present:
"I've drafted the Technical Specifications based on our conversation.
Here's what I'll add to the document:
[Show the complete markdown content from step 4]
Note: This is GDD-level technical planning. Detailed architecture decisions (engine selection, specific technologies, system design) will be addressed in the Architecture workflow after the GDD is complete.
Select an Option: [A] Advanced Elicitation - Deep dive into technical requirements [P] Party Mode - Get technical perspectives [C] Continue - Save this and move to Epic Structure (Step 12 of 14)"
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, 11] - Load
{nextStepFile}
CRITICAL STEP COMPLETION NOTE
ONLY WHEN [C continue option] is selected and [technical content saved with frontmatter updated], will you then load and read fully {nextStepFile}.
SYSTEM SUCCESS/FAILURE METRICS
SUCCESS:
- Performance targets clearly defined
- Platform-specific requirements documented
- Asset requirements outlined
- Scope appropriate for GDD (not architecture-level detail)
- A/P/C menu presented and handled correctly
- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
SYSTEM FAILURE:
- Generating tech specs without user input
- Going too deep into architecture details
- Missing key platform requirements
- Not presenting A/P/C menu after content generation
- Proceeding without user selecting 'C'
Master Rule: Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.