From 5bfaf81b25148602d2eaa3888790d3eade9a4f54 Mon Sep 17 00:00:00 2001 From: pbean Date: Mon, 21 Jul 2025 11:02:24 -0700 Subject: [PATCH] feat:Created more comprehensive game story matching new format system as well --- .../bmad-2d-unity-game-dev/agents/game-sm.txt | 316 ++++----- .../teams/unity-2d-game-team.txt | 632 ++++++++---------- .../tasks/create-game-story.md | 316 ++++----- 3 files changed, 568 insertions(+), 696 deletions(-) diff --git a/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt b/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt index a6c15bd3..9f6d8957 100644 --- a/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +++ b/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt @@ -88,223 +88,191 @@ dependencies: ==================== END: .bmad-2d-unity-game-dev/agents/game-sm.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== -# Create Game Development Story Task +# Create Game Story Task ## Purpose -Create detailed, actionable game development stories that enable AI developers to implement specific game features in Unity without requiring additional design decisions. +To identify the next logical game story based on project progress and epic definitions, and then to prepare a comprehensive, self-contained, and actionable story file using the `Game Story Template`. This task ensures the story is enriched with all necessary technical context, Unity-specific requirements, and acceptance criteria, making it ready for efficient implementation by a Game Developer Agent with minimal need for additional research or finding its own context. -## When to Use +## SEQUENTIAL Task Execution (Do not proceed until current Task is complete) -- Breaking down game epics into implementable stories -- Converting GDD features into development tasks -- Preparing work for game developers -- Ensuring clear handoffs from design to development +### 0. Load Core Configuration and Check Workflow -## Prerequisites +- Load `.bmad-2d-unity-game-dev/game-core-config.yaml` from the project root +- If the file does not exist, check for `.bmad-2d-unity-game-dev/core-config.yaml` as fallback +- If neither exists, HALT and inform the user: "game-core-config.yaml (or core-config.yaml) not found. This file is required for story creation. You can either: 1) Copy core-config.yaml from GITHUB bmad-core/ and configure it for your game project OR 2) Run the BMad installer against your project to upgrade and add the file automatically. Please add and configure before proceeding." +- Extract key configurations: `devStoryLocation`, `gdd.*`, `architecture.*`, `workflow.*` -Before creating stories, ensure you have: +### 1. Identify Next Story for Preparation -- Completed Game Design Document (GDD) -- Game Architecture Document -- Epic definition this story belongs to -- Clear understanding of the specific game feature +#### 1.1 Locate Epic Files and Review Existing Stories -## Process +- Based on `gddSharded` from config, locate epic files (sharded location/pattern or monolithic GDD sections) +- If `devStoryLocation` has story files, load the highest `{epicNum}.{storyNum}.story.md` file +- **If highest story exists:** + - Verify status is 'Done'. If not, alert user: "ALERT: Found incomplete story! File: {lastEpicNum}.{lastStoryNum}.story.md Status: [current status] You should fix this story first, but would you like to accept risk & override to create the next story in draft?" + - If proceeding, select next sequential story in the current epic + - If epic is complete, prompt user: "Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed. Would you like to: 1) Begin Epic {epicNum + 1} with story 1 2) Select a specific story to work on 3) Cancel story creation" + - **CRITICAL**: NEVER automatically skip to another epic. User MUST explicitly instruct which story to create. +- **If no story files exist:** The next story is ALWAYS 1.1 (first story of first epic) +- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}" -### 1. Story Identification +### 2. Gather Story Requirements and Previous Story Context -**Review Epic Context:** +- Extract story requirements from the identified epic file or GDD section +- If previous story exists, review Dev Agent Record sections for: + - Completion Notes and Debug Log References + - Implementation deviations and technical decisions + - Unity-specific challenges (prefab issues, scene management, performance) + - Asset pipeline decisions and optimizations +- Extract relevant insights that inform the current story's preparation -- Understand the epic's overall goal -- Identify specific features that need implementation -- Review any existing stories in the epic -- Ensure no duplicate work +### 3. Gather Architecture Context -**Feature Analysis:** +#### 3.1 Determine Architecture Reading Strategy -- Reference specific GDD sections -- Understand player experience goals -- Identify technical complexity -- Estimate implementation scope +- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below +- **Else**: Use monolithic `architectureFile` for similar sections -### 2. Story Scoping +#### 3.2 Read Architecture Documents Based on Story Type -**Single Responsibility:** +**For ALL Game Stories:** tech-stack.md, unified-project-structure.md, coding-standards.md, testing-strategy.md, unity-conventions.md -- Focus on one specific game feature -- Ensure story is completable in 1-3 days -- Break down complex features into multiple stories -- Maintain clear boundaries with other stories +**For Gameplay/Mechanics Stories, additionally:** gameplay-systems.md, component-architecture.md, physics-config.md, input-system.md, state-machines.md -**Implementation Clarity:** +**For UI/UX Stories, additionally:** ui-architecture.md, ui-components.md, ui-state-management.md, scene-management.md -- Define exactly what needs to be built -- Specify all technical requirements -- Include all necessary integration points -- Provide clear success criteria +**For Backend/Services Stories, additionally:** data-persistence.md, save-system.md, analytics-integration.md, multiplayer-architecture.md -### 3. Template Execution +**For Graphics/Rendering Stories, additionally:** rendering-pipeline.md, shader-guidelines.md, sprite-management.md, particle-systems.md -**Load Template:** -Use `templates#game-story-tmpl` following all embedded LLM instructions +**For Audio Stories, additionally:** audio-architecture.md, audio-mixing.md, sound-banks.md -**Key Focus Areas:** +#### 3.3 Extract Story-Specific Technical Details -- Clear, actionable description -- Specific acceptance criteria -- Detailed technical specifications -- Complete implementation task list -- Comprehensive testing requirements +Extract ONLY information directly relevant to implementing the current story. Do NOT invent new patterns, systems, or standards not in the source documents. -### 4. Story Validation +Extract: -**Technical Review:** +- Specific Unity components and MonoBehaviours the story will use +- Unity Package Manager dependencies and their APIs (e.g., Cinemachine, Input System, URP) +- Package-specific configurations and setup requirements +- Prefab structures and scene organization requirements +- Input system bindings and configurations +- Physics settings and collision layers +- UI canvas and layout specifications +- Asset naming conventions and folder structures +- Performance budgets (target FPS, memory limits, draw calls) +- Platform-specific considerations (mobile vs desktop) +- Testing requirements specific to Unity features -- Verify all technical specifications are complete -- Ensure integration points are clearly defined -- Confirm file paths match architecture -- Validate C# interfaces and classes -- Check for proper use of prefabs and scenes +ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]` -**Game Design Alignment:** +### 4. Unity-Specific Technical Analysis -- Confirm story implements GDD requirements -- Verify player experience goals are met -- Check balance parameters are included -- Ensure game mechanics are correctly interpreted +#### 4.1 Package Dependencies Analysis -**Implementation Readiness:** +- Identify Unity Package Manager packages required for the story +- Document package versions from manifest.json +- Note any package-specific APIs or components being used +- List package configuration requirements (e.g., Input System settings, URP asset config) +- Identify any third-party Asset Store packages and their integration points -- All dependencies identified -- Assets requirements specified -- Testing criteria defined -- Definition of Done complete +#### 4.2 Scene and Prefab Planning -### 5. Quality Assurance +- Identify which scenes will be modified or created +- List prefabs that need to be created or updated +- Document prefab variant requirements +- Specify scene loading/unloading requirements -**Apply Checklist:** -Execute `checklists#game-story-dod-checklist` against completed story +#### 4.3 Component Architecture -**Story Criteria:** +- Define MonoBehaviour scripts needed +- Specify ScriptableObject assets required +- Document component dependencies and execution order +- Identify required Unity Events and UnityActions +- Note any package-specific components (e.g., Cinemachine VirtualCamera, InputActionAsset) -- Story is immediately actionable -- No design decisions left to developer -- Technical requirements are complete -- Testing requirements are comprehensive -- Performance requirements are specified +#### 4.4 Asset Requirements -### 6. Story Refinement +- List sprite/texture requirements with resolution specs +- Define animation clips and animator controllers needed +- Specify audio clips and their import settings +- Document any shader or material requirements +- Note any package-specific assets (e.g., URP materials, Input Action maps) -**Developer Perspective:** +### 5. Populate Story Template with Full Context -- Can a developer start implementation immediately? -- Are all technical questions answered? -- Is the scope appropriate for the estimated points? -- Are all dependencies clearly identified? +- Create new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` using Game Story Template +- Fill in basic story information: Title, Status (Draft), Story statement, Acceptance Criteria from Epic/GDD +- **`Dev Notes` section (CRITICAL):** + - CRITICAL: This section MUST contain ONLY information extracted from architecture documents and GDD. NEVER invent or assume technical details. + - Include ALL relevant technical details from Steps 2-4, organized by category: + - **Previous Story Insights**: Key learnings from previous story implementation + - **Package Dependencies**: Unity packages required, versions, configurations [with source references] + - **Unity Components**: Specific MonoBehaviours, ScriptableObjects, systems [with source references] + - **Scene & Prefab Specs**: Scene modifications, prefab structures, variants [with source references] + - **Input Configuration**: Input actions, bindings, control schemes [with source references] + - **UI Implementation**: Canvas setup, layout groups, UI events [with source references] + - **Asset Pipeline**: Asset requirements, import settings, optimization notes + - **Performance Targets**: FPS targets, memory budgets, profiler metrics + - **Platform Considerations**: Mobile vs desktop differences, input variations + - **Testing Requirements**: PlayMode tests, Unity Test Framework specifics + - Every technical detail MUST include its source reference: `[Source: architecture/{filename}.md#{section}]` + - If information for a category is not found in the architecture docs, explicitly state: "No specific guidance found in architecture docs" +- **`Tasks / Subtasks` section:** + - Generate detailed, sequential list of technical tasks based ONLY on: Epic/GDD Requirements, Story AC, Reviewed Architecture Information + - Include Unity-specific tasks: + - Scene setup and configuration + - Prefab creation and testing + - Component implementation with proper lifecycle methods + - Input system integration + - Physics configuration + - UI implementation with proper anchoring + - Performance profiling checkpoints + - Each task must reference relevant architecture documentation + - Include PlayMode testing as explicit subtasks + - Link tasks to ACs where applicable (e.g., `Task 1 (AC: 1, 3)`) +- Add notes on Unity project structure alignment or discrepancies found in Step 4 -**Iterative Improvement:** +### 6. Story Draft Completion and Review -- Address any gaps or ambiguities -- Clarify complex technical requirements -- Ensure story fits within epic scope -- Verify story points estimation +- Review all sections for completeness and accuracy +- Verify all source references are included for technical details +- Ensure Unity-specific requirements are comprehensive: + - All scenes and prefabs documented + - Component dependencies clear + - Asset requirements specified + - Performance targets defined +- Update status to "Draft" and save the story file +- Execute `.bmad-2d-unity-game-dev/tasks/execute-checklist` `.bmad-2d-unity-game-dev/checklists/game-story-dod-checklist` +- Provide summary to user including: + - Story created: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` + - Status: Draft + - Key Unity components and systems included + - Scene/prefab modifications required + - Asset requirements identified + - Any deviations or conflicts noted between GDD and architecture + - Checklist Results + - Next steps: For complex Unity features, suggest the user review the story draft and optionally test critical assumptions in Unity Editor -## Story Elements Checklist +### 7. Unity-Specific Validation -### Required Sections +Before finalizing, ensure: -- [ ] Clear, specific description -- [ ] Complete acceptance criteria (functional, technical, game design) -- [ ] Detailed technical specifications -- [ ] File creation/modification list -- [ ] C# interfaces and classes -- [ ] Integration point specifications -- [ ] Ordered implementation tasks -- [ ] Comprehensive testing requirements -- [ ] Performance criteria -- [ ] Dependencies clearly identified -- [ ] Definition of Done checklist +- [ ] All required Unity packages are documented with versions +- [ ] Package-specific APIs and configurations are included +- [ ] All MonoBehaviour lifecycle methods are considered +- [ ] Prefab workflows are clearly defined +- [ ] Scene management approach is specified +- [ ] Input system integration is complete (legacy or new Input System) +- [ ] UI canvas setup follows Unity best practices +- [ ] Performance profiling points are identified +- [ ] Asset import settings are documented +- [ ] Platform-specific code paths are noted +- [ ] Package compatibility is verified (e.g., URP vs Built-in pipeline) -### Game-Specific Requirements - -- [ ] GDD section references -- [ ] Game mechanic implementation details -- [ ] Player experience goals -- [ ] Balance parameters -- [ ] Unity-specific requirements (components, prefabs, scenes) -- [ ] Performance targets (stable frame rate) -- [ ] Cross-platform considerations - -### Technical Quality - -- [ ] C# best practices compliance -- [ ] Architecture document alignment -- [ ] Code organization follows standards -- [ ] Error handling requirements -- [ ] Memory management considerations -- [ ] Testing strategy defined - -## Common Pitfalls - -**Scope Issues:** - -- Story too large (break into multiple stories) -- Story too vague (add specific requirements) -- Missing dependencies (identify all prerequisites) -- Unclear boundaries (define what's in/out of scope) - -**Technical Issues:** - -- Missing integration details -- Incomplete technical specifications -- Undefined interfaces or classes -- Missing performance requirements - -**Game Design Issues:** - -- Not referencing GDD properly -- Missing player experience context -- Unclear game mechanic implementation -- Missing balance parameters - -## Success Criteria - -**Story Readiness:** - -- [ ] Developer can start implementation immediately -- [ ] No additional design decisions required -- [ ] All technical questions answered -- [ ] Testing strategy is complete -- [ ] Performance requirements are clear -- [ ] Story fits within epic scope - -**Quality Validation:** - -- [ ] Game story DOD checklist passes -- [ ] Architecture alignment confirmed -- [ ] GDD requirements covered -- [ ] Implementation tasks are ordered and specific -- [ ] Dependencies are complete and accurate - -## Handoff Protocol - -**To Game Developer:** - -1. Provide story document -2. Confirm GDD and architecture access -3. Verify all dependencies are met -4. Answer any clarification questions -5. Establish check-in schedule - -**Story Status Updates:** - -- Draft → Ready for Development -- In Development → Code Review -- Code Review → Testing -- Testing → Done - -This task ensures game development stories are immediately actionable and enable efficient AI-driven development of game features in Unity. +This task ensures game development stories are immediately actionable and enable efficient AI-driven development of Unity 2D game features. ==================== END: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/execute-checklist.md ==================== diff --git a/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt b/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt index 9ebfd960..169a8d55 100644 --- a/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +++ b/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt @@ -6011,223 +6011,191 @@ These guidelines ensure consistent, high-quality game development that meets per ==================== END: .bmad-2d-unity-game-dev/data/development-guidelines.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== -# Create Game Development Story Task +# Create Game Story Task ## Purpose -Create detailed, actionable game development stories that enable AI developers to implement specific game features in Unity without requiring additional design decisions. +To identify the next logical game story based on project progress and epic definitions, and then to prepare a comprehensive, self-contained, and actionable story file using the `Game Story Template`. This task ensures the story is enriched with all necessary technical context, Unity-specific requirements, and acceptance criteria, making it ready for efficient implementation by a Game Developer Agent with minimal need for additional research or finding its own context. -## When to Use +## SEQUENTIAL Task Execution (Do not proceed until current Task is complete) -- Breaking down game epics into implementable stories -- Converting GDD features into development tasks -- Preparing work for game developers -- Ensuring clear handoffs from design to development +### 0. Load Core Configuration and Check Workflow -## Prerequisites +- Load `.bmad-2d-unity-game-dev/game-core-config.yaml` from the project root +- If the file does not exist, check for `.bmad-2d-unity-game-dev/core-config.yaml` as fallback +- If neither exists, HALT and inform the user: "game-core-config.yaml (or core-config.yaml) not found. This file is required for story creation. You can either: 1) Copy core-config.yaml from GITHUB bmad-core/ and configure it for your game project OR 2) Run the BMad installer against your project to upgrade and add the file automatically. Please add and configure before proceeding." +- Extract key configurations: `devStoryLocation`, `gdd.*`, `architecture.*`, `workflow.*` -Before creating stories, ensure you have: +### 1. Identify Next Story for Preparation -- Completed Game Design Document (GDD) -- Game Architecture Document -- Epic definition this story belongs to -- Clear understanding of the specific game feature +#### 1.1 Locate Epic Files and Review Existing Stories -## Process +- Based on `gddSharded` from config, locate epic files (sharded location/pattern or monolithic GDD sections) +- If `devStoryLocation` has story files, load the highest `{epicNum}.{storyNum}.story.md` file +- **If highest story exists:** + - Verify status is 'Done'. If not, alert user: "ALERT: Found incomplete story! File: {lastEpicNum}.{lastStoryNum}.story.md Status: [current status] You should fix this story first, but would you like to accept risk & override to create the next story in draft?" + - If proceeding, select next sequential story in the current epic + - If epic is complete, prompt user: "Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed. Would you like to: 1) Begin Epic {epicNum + 1} with story 1 2) Select a specific story to work on 3) Cancel story creation" + - **CRITICAL**: NEVER automatically skip to another epic. User MUST explicitly instruct which story to create. +- **If no story files exist:** The next story is ALWAYS 1.1 (first story of first epic) +- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}" -### 1. Story Identification +### 2. Gather Story Requirements and Previous Story Context -**Review Epic Context:** +- Extract story requirements from the identified epic file or GDD section +- If previous story exists, review Dev Agent Record sections for: + - Completion Notes and Debug Log References + - Implementation deviations and technical decisions + - Unity-specific challenges (prefab issues, scene management, performance) + - Asset pipeline decisions and optimizations +- Extract relevant insights that inform the current story's preparation -- Understand the epic's overall goal -- Identify specific features that need implementation -- Review any existing stories in the epic -- Ensure no duplicate work +### 3. Gather Architecture Context -**Feature Analysis:** +#### 3.1 Determine Architecture Reading Strategy -- Reference specific GDD sections -- Understand player experience goals -- Identify technical complexity -- Estimate implementation scope +- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below +- **Else**: Use monolithic `architectureFile` for similar sections -### 2. Story Scoping +#### 3.2 Read Architecture Documents Based on Story Type -**Single Responsibility:** +**For ALL Game Stories:** tech-stack.md, unified-project-structure.md, coding-standards.md, testing-strategy.md, unity-conventions.md -- Focus on one specific game feature -- Ensure story is completable in 1-3 days -- Break down complex features into multiple stories -- Maintain clear boundaries with other stories +**For Gameplay/Mechanics Stories, additionally:** gameplay-systems.md, component-architecture.md, physics-config.md, input-system.md, state-machines.md -**Implementation Clarity:** +**For UI/UX Stories, additionally:** ui-architecture.md, ui-components.md, ui-state-management.md, scene-management.md -- Define exactly what needs to be built -- Specify all technical requirements -- Include all necessary integration points -- Provide clear success criteria +**For Backend/Services Stories, additionally:** data-persistence.md, save-system.md, analytics-integration.md, multiplayer-architecture.md -### 3. Template Execution +**For Graphics/Rendering Stories, additionally:** rendering-pipeline.md, shader-guidelines.md, sprite-management.md, particle-systems.md -**Load Template:** -Use `templates#game-story-tmpl` following all embedded LLM instructions +**For Audio Stories, additionally:** audio-architecture.md, audio-mixing.md, sound-banks.md -**Key Focus Areas:** +#### 3.3 Extract Story-Specific Technical Details -- Clear, actionable description -- Specific acceptance criteria -- Detailed technical specifications -- Complete implementation task list -- Comprehensive testing requirements +Extract ONLY information directly relevant to implementing the current story. Do NOT invent new patterns, systems, or standards not in the source documents. -### 4. Story Validation +Extract: -**Technical Review:** +- Specific Unity components and MonoBehaviours the story will use +- Unity Package Manager dependencies and their APIs (e.g., Cinemachine, Input System, URP) +- Package-specific configurations and setup requirements +- Prefab structures and scene organization requirements +- Input system bindings and configurations +- Physics settings and collision layers +- UI canvas and layout specifications +- Asset naming conventions and folder structures +- Performance budgets (target FPS, memory limits, draw calls) +- Platform-specific considerations (mobile vs desktop) +- Testing requirements specific to Unity features -- Verify all technical specifications are complete -- Ensure integration points are clearly defined -- Confirm file paths match architecture -- Validate C# interfaces and classes -- Check for proper use of prefabs and scenes +ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]` -**Game Design Alignment:** +### 4. Unity-Specific Technical Analysis -- Confirm story implements GDD requirements -- Verify player experience goals are met -- Check balance parameters are included -- Ensure game mechanics are correctly interpreted +#### 4.1 Package Dependencies Analysis -**Implementation Readiness:** +- Identify Unity Package Manager packages required for the story +- Document package versions from manifest.json +- Note any package-specific APIs or components being used +- List package configuration requirements (e.g., Input System settings, URP asset config) +- Identify any third-party Asset Store packages and their integration points -- All dependencies identified -- Assets requirements specified -- Testing criteria defined -- Definition of Done complete +#### 4.2 Scene and Prefab Planning -### 5. Quality Assurance +- Identify which scenes will be modified or created +- List prefabs that need to be created or updated +- Document prefab variant requirements +- Specify scene loading/unloading requirements -**Apply Checklist:** -Execute `checklists#game-story-dod-checklist` against completed story +#### 4.3 Component Architecture -**Story Criteria:** +- Define MonoBehaviour scripts needed +- Specify ScriptableObject assets required +- Document component dependencies and execution order +- Identify required Unity Events and UnityActions +- Note any package-specific components (e.g., Cinemachine VirtualCamera, InputActionAsset) -- Story is immediately actionable -- No design decisions left to developer -- Technical requirements are complete -- Testing requirements are comprehensive -- Performance requirements are specified +#### 4.4 Asset Requirements -### 6. Story Refinement +- List sprite/texture requirements with resolution specs +- Define animation clips and animator controllers needed +- Specify audio clips and their import settings +- Document any shader or material requirements +- Note any package-specific assets (e.g., URP materials, Input Action maps) -**Developer Perspective:** +### 5. Populate Story Template with Full Context -- Can a developer start implementation immediately? -- Are all technical questions answered? -- Is the scope appropriate for the estimated points? -- Are all dependencies clearly identified? +- Create new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` using Game Story Template +- Fill in basic story information: Title, Status (Draft), Story statement, Acceptance Criteria from Epic/GDD +- **`Dev Notes` section (CRITICAL):** + - CRITICAL: This section MUST contain ONLY information extracted from architecture documents and GDD. NEVER invent or assume technical details. + - Include ALL relevant technical details from Steps 2-4, organized by category: + - **Previous Story Insights**: Key learnings from previous story implementation + - **Package Dependencies**: Unity packages required, versions, configurations [with source references] + - **Unity Components**: Specific MonoBehaviours, ScriptableObjects, systems [with source references] + - **Scene & Prefab Specs**: Scene modifications, prefab structures, variants [with source references] + - **Input Configuration**: Input actions, bindings, control schemes [with source references] + - **UI Implementation**: Canvas setup, layout groups, UI events [with source references] + - **Asset Pipeline**: Asset requirements, import settings, optimization notes + - **Performance Targets**: FPS targets, memory budgets, profiler metrics + - **Platform Considerations**: Mobile vs desktop differences, input variations + - **Testing Requirements**: PlayMode tests, Unity Test Framework specifics + - Every technical detail MUST include its source reference: `[Source: architecture/{filename}.md#{section}]` + - If information for a category is not found in the architecture docs, explicitly state: "No specific guidance found in architecture docs" +- **`Tasks / Subtasks` section:** + - Generate detailed, sequential list of technical tasks based ONLY on: Epic/GDD Requirements, Story AC, Reviewed Architecture Information + - Include Unity-specific tasks: + - Scene setup and configuration + - Prefab creation and testing + - Component implementation with proper lifecycle methods + - Input system integration + - Physics configuration + - UI implementation with proper anchoring + - Performance profiling checkpoints + - Each task must reference relevant architecture documentation + - Include PlayMode testing as explicit subtasks + - Link tasks to ACs where applicable (e.g., `Task 1 (AC: 1, 3)`) +- Add notes on Unity project structure alignment or discrepancies found in Step 4 -**Iterative Improvement:** +### 6. Story Draft Completion and Review -- Address any gaps or ambiguities -- Clarify complex technical requirements -- Ensure story fits within epic scope -- Verify story points estimation +- Review all sections for completeness and accuracy +- Verify all source references are included for technical details +- Ensure Unity-specific requirements are comprehensive: + - All scenes and prefabs documented + - Component dependencies clear + - Asset requirements specified + - Performance targets defined +- Update status to "Draft" and save the story file +- Execute `.bmad-2d-unity-game-dev/tasks/execute-checklist` `.bmad-2d-unity-game-dev/checklists/game-story-dod-checklist` +- Provide summary to user including: + - Story created: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` + - Status: Draft + - Key Unity components and systems included + - Scene/prefab modifications required + - Asset requirements identified + - Any deviations or conflicts noted between GDD and architecture + - Checklist Results + - Next steps: For complex Unity features, suggest the user review the story draft and optionally test critical assumptions in Unity Editor -## Story Elements Checklist +### 7. Unity-Specific Validation -### Required Sections +Before finalizing, ensure: -- [ ] Clear, specific description -- [ ] Complete acceptance criteria (functional, technical, game design) -- [ ] Detailed technical specifications -- [ ] File creation/modification list -- [ ] C# interfaces and classes -- [ ] Integration point specifications -- [ ] Ordered implementation tasks -- [ ] Comprehensive testing requirements -- [ ] Performance criteria -- [ ] Dependencies clearly identified -- [ ] Definition of Done checklist +- [ ] All required Unity packages are documented with versions +- [ ] Package-specific APIs and configurations are included +- [ ] All MonoBehaviour lifecycle methods are considered +- [ ] Prefab workflows are clearly defined +- [ ] Scene management approach is specified +- [ ] Input system integration is complete (legacy or new Input System) +- [ ] UI canvas setup follows Unity best practices +- [ ] Performance profiling points are identified +- [ ] Asset import settings are documented +- [ ] Platform-specific code paths are noted +- [ ] Package compatibility is verified (e.g., URP vs Built-in pipeline) -### Game-Specific Requirements - -- [ ] GDD section references -- [ ] Game mechanic implementation details -- [ ] Player experience goals -- [ ] Balance parameters -- [ ] Unity-specific requirements (components, prefabs, scenes) -- [ ] Performance targets (stable frame rate) -- [ ] Cross-platform considerations - -### Technical Quality - -- [ ] C# best practices compliance -- [ ] Architecture document alignment -- [ ] Code organization follows standards -- [ ] Error handling requirements -- [ ] Memory management considerations -- [ ] Testing strategy defined - -## Common Pitfalls - -**Scope Issues:** - -- Story too large (break into multiple stories) -- Story too vague (add specific requirements) -- Missing dependencies (identify all prerequisites) -- Unclear boundaries (define what's in/out of scope) - -**Technical Issues:** - -- Missing integration details -- Incomplete technical specifications -- Undefined interfaces or classes -- Missing performance requirements - -**Game Design Issues:** - -- Not referencing GDD properly -- Missing player experience context -- Unclear game mechanic implementation -- Missing balance parameters - -## Success Criteria - -**Story Readiness:** - -- [ ] Developer can start implementation immediately -- [ ] No additional design decisions required -- [ ] All technical questions answered -- [ ] Testing strategy is complete -- [ ] Performance requirements are clear -- [ ] Story fits within epic scope - -**Quality Validation:** - -- [ ] Game story DOD checklist passes -- [ ] Architecture alignment confirmed -- [ ] GDD requirements covered -- [ ] Implementation tasks are ordered and specific -- [ ] Dependencies are complete and accurate - -## Handoff Protocol - -**To Game Developer:** - -1. Provide story document -2. Confirm GDD and architecture access -3. Verify all dependencies are met -4. Answer any clarification questions -5. Establish check-in schedule - -**Story Status Updates:** - -- Draft → Ready for Development -- In Development → Code Review -- Code Review → Testing -- Testing → Done - -This task ensures game development stories are immediately actionable and enable efficient AI-driven development of game features in Unity. +This task ensures game development stories are immediately actionable and enable efficient AI-driven development of Unity 2D game features. ==================== END: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/correct-course.md ==================== @@ -8676,223 +8644,191 @@ The questions and perspectives offered should always consider: ==================== END: .bmad-2d-unity-game-dev/tasks/advanced-elicitation.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== -# Create Game Development Story Task +# Create Game Story Task ## Purpose -Create detailed, actionable game development stories that enable AI developers to implement specific game features in Unity without requiring additional design decisions. +To identify the next logical game story based on project progress and epic definitions, and then to prepare a comprehensive, self-contained, and actionable story file using the `Game Story Template`. This task ensures the story is enriched with all necessary technical context, Unity-specific requirements, and acceptance criteria, making it ready for efficient implementation by a Game Developer Agent with minimal need for additional research or finding its own context. -## When to Use +## SEQUENTIAL Task Execution (Do not proceed until current Task is complete) -- Breaking down game epics into implementable stories -- Converting GDD features into development tasks -- Preparing work for game developers -- Ensuring clear handoffs from design to development +### 0. Load Core Configuration and Check Workflow -## Prerequisites +- Load `.bmad-2d-unity-game-dev/game-core-config.yaml` from the project root +- If the file does not exist, check for `.bmad-2d-unity-game-dev/core-config.yaml` as fallback +- If neither exists, HALT and inform the user: "game-core-config.yaml (or core-config.yaml) not found. This file is required for story creation. You can either: 1) Copy core-config.yaml from GITHUB bmad-core/ and configure it for your game project OR 2) Run the BMad installer against your project to upgrade and add the file automatically. Please add and configure before proceeding." +- Extract key configurations: `devStoryLocation`, `gdd.*`, `architecture.*`, `workflow.*` -Before creating stories, ensure you have: +### 1. Identify Next Story for Preparation -- Completed Game Design Document (GDD) -- Game Architecture Document -- Epic definition this story belongs to -- Clear understanding of the specific game feature +#### 1.1 Locate Epic Files and Review Existing Stories -## Process +- Based on `gddSharded` from config, locate epic files (sharded location/pattern or monolithic GDD sections) +- If `devStoryLocation` has story files, load the highest `{epicNum}.{storyNum}.story.md` file +- **If highest story exists:** + - Verify status is 'Done'. If not, alert user: "ALERT: Found incomplete story! File: {lastEpicNum}.{lastStoryNum}.story.md Status: [current status] You should fix this story first, but would you like to accept risk & override to create the next story in draft?" + - If proceeding, select next sequential story in the current epic + - If epic is complete, prompt user: "Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed. Would you like to: 1) Begin Epic {epicNum + 1} with story 1 2) Select a specific story to work on 3) Cancel story creation" + - **CRITICAL**: NEVER automatically skip to another epic. User MUST explicitly instruct which story to create. +- **If no story files exist:** The next story is ALWAYS 1.1 (first story of first epic) +- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}" -### 1. Story Identification +### 2. Gather Story Requirements and Previous Story Context -**Review Epic Context:** +- Extract story requirements from the identified epic file or GDD section +- If previous story exists, review Dev Agent Record sections for: + - Completion Notes and Debug Log References + - Implementation deviations and technical decisions + - Unity-specific challenges (prefab issues, scene management, performance) + - Asset pipeline decisions and optimizations +- Extract relevant insights that inform the current story's preparation -- Understand the epic's overall goal -- Identify specific features that need implementation -- Review any existing stories in the epic -- Ensure no duplicate work +### 3. Gather Architecture Context -**Feature Analysis:** +#### 3.1 Determine Architecture Reading Strategy -- Reference specific GDD sections -- Understand player experience goals -- Identify technical complexity -- Estimate implementation scope +- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below +- **Else**: Use monolithic `architectureFile` for similar sections -### 2. Story Scoping +#### 3.2 Read Architecture Documents Based on Story Type -**Single Responsibility:** +**For ALL Game Stories:** tech-stack.md, unified-project-structure.md, coding-standards.md, testing-strategy.md, unity-conventions.md -- Focus on one specific game feature -- Ensure story is completable in 1-3 days -- Break down complex features into multiple stories -- Maintain clear boundaries with other stories +**For Gameplay/Mechanics Stories, additionally:** gameplay-systems.md, component-architecture.md, physics-config.md, input-system.md, state-machines.md -**Implementation Clarity:** +**For UI/UX Stories, additionally:** ui-architecture.md, ui-components.md, ui-state-management.md, scene-management.md -- Define exactly what needs to be built -- Specify all technical requirements -- Include all necessary integration points -- Provide clear success criteria +**For Backend/Services Stories, additionally:** data-persistence.md, save-system.md, analytics-integration.md, multiplayer-architecture.md -### 3. Template Execution +**For Graphics/Rendering Stories, additionally:** rendering-pipeline.md, shader-guidelines.md, sprite-management.md, particle-systems.md -**Load Template:** -Use `templates#game-story-tmpl` following all embedded LLM instructions +**For Audio Stories, additionally:** audio-architecture.md, audio-mixing.md, sound-banks.md -**Key Focus Areas:** +#### 3.3 Extract Story-Specific Technical Details -- Clear, actionable description -- Specific acceptance criteria -- Detailed technical specifications -- Complete implementation task list -- Comprehensive testing requirements +Extract ONLY information directly relevant to implementing the current story. Do NOT invent new patterns, systems, or standards not in the source documents. -### 4. Story Validation +Extract: -**Technical Review:** +- Specific Unity components and MonoBehaviours the story will use +- Unity Package Manager dependencies and their APIs (e.g., Cinemachine, Input System, URP) +- Package-specific configurations and setup requirements +- Prefab structures and scene organization requirements +- Input system bindings and configurations +- Physics settings and collision layers +- UI canvas and layout specifications +- Asset naming conventions and folder structures +- Performance budgets (target FPS, memory limits, draw calls) +- Platform-specific considerations (mobile vs desktop) +- Testing requirements specific to Unity features -- Verify all technical specifications are complete -- Ensure integration points are clearly defined -- Confirm file paths match architecture -- Validate C# interfaces and classes -- Check for proper use of prefabs and scenes +ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]` -**Game Design Alignment:** +### 4. Unity-Specific Technical Analysis -- Confirm story implements GDD requirements -- Verify player experience goals are met -- Check balance parameters are included -- Ensure game mechanics are correctly interpreted +#### 4.1 Package Dependencies Analysis -**Implementation Readiness:** +- Identify Unity Package Manager packages required for the story +- Document package versions from manifest.json +- Note any package-specific APIs or components being used +- List package configuration requirements (e.g., Input System settings, URP asset config) +- Identify any third-party Asset Store packages and their integration points -- All dependencies identified -- Assets requirements specified -- Testing criteria defined -- Definition of Done complete +#### 4.2 Scene and Prefab Planning -### 5. Quality Assurance +- Identify which scenes will be modified or created +- List prefabs that need to be created or updated +- Document prefab variant requirements +- Specify scene loading/unloading requirements -**Apply Checklist:** -Execute `checklists#game-story-dod-checklist` against completed story +#### 4.3 Component Architecture -**Story Criteria:** +- Define MonoBehaviour scripts needed +- Specify ScriptableObject assets required +- Document component dependencies and execution order +- Identify required Unity Events and UnityActions +- Note any package-specific components (e.g., Cinemachine VirtualCamera, InputActionAsset) -- Story is immediately actionable -- No design decisions left to developer -- Technical requirements are complete -- Testing requirements are comprehensive -- Performance requirements are specified +#### 4.4 Asset Requirements -### 6. Story Refinement +- List sprite/texture requirements with resolution specs +- Define animation clips and animator controllers needed +- Specify audio clips and their import settings +- Document any shader or material requirements +- Note any package-specific assets (e.g., URP materials, Input Action maps) -**Developer Perspective:** +### 5. Populate Story Template with Full Context -- Can a developer start implementation immediately? -- Are all technical questions answered? -- Is the scope appropriate for the estimated points? -- Are all dependencies clearly identified? +- Create new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` using Game Story Template +- Fill in basic story information: Title, Status (Draft), Story statement, Acceptance Criteria from Epic/GDD +- **`Dev Notes` section (CRITICAL):** + - CRITICAL: This section MUST contain ONLY information extracted from architecture documents and GDD. NEVER invent or assume technical details. + - Include ALL relevant technical details from Steps 2-4, organized by category: + - **Previous Story Insights**: Key learnings from previous story implementation + - **Package Dependencies**: Unity packages required, versions, configurations [with source references] + - **Unity Components**: Specific MonoBehaviours, ScriptableObjects, systems [with source references] + - **Scene & Prefab Specs**: Scene modifications, prefab structures, variants [with source references] + - **Input Configuration**: Input actions, bindings, control schemes [with source references] + - **UI Implementation**: Canvas setup, layout groups, UI events [with source references] + - **Asset Pipeline**: Asset requirements, import settings, optimization notes + - **Performance Targets**: FPS targets, memory budgets, profiler metrics + - **Platform Considerations**: Mobile vs desktop differences, input variations + - **Testing Requirements**: PlayMode tests, Unity Test Framework specifics + - Every technical detail MUST include its source reference: `[Source: architecture/{filename}.md#{section}]` + - If information for a category is not found in the architecture docs, explicitly state: "No specific guidance found in architecture docs" +- **`Tasks / Subtasks` section:** + - Generate detailed, sequential list of technical tasks based ONLY on: Epic/GDD Requirements, Story AC, Reviewed Architecture Information + - Include Unity-specific tasks: + - Scene setup and configuration + - Prefab creation and testing + - Component implementation with proper lifecycle methods + - Input system integration + - Physics configuration + - UI implementation with proper anchoring + - Performance profiling checkpoints + - Each task must reference relevant architecture documentation + - Include PlayMode testing as explicit subtasks + - Link tasks to ACs where applicable (e.g., `Task 1 (AC: 1, 3)`) +- Add notes on Unity project structure alignment or discrepancies found in Step 4 -**Iterative Improvement:** +### 6. Story Draft Completion and Review -- Address any gaps or ambiguities -- Clarify complex technical requirements -- Ensure story fits within epic scope -- Verify story points estimation +- Review all sections for completeness and accuracy +- Verify all source references are included for technical details +- Ensure Unity-specific requirements are comprehensive: + - All scenes and prefabs documented + - Component dependencies clear + - Asset requirements specified + - Performance targets defined +- Update status to "Draft" and save the story file +- Execute `.bmad-2d-unity-game-dev/tasks/execute-checklist` `.bmad-2d-unity-game-dev/checklists/game-story-dod-checklist` +- Provide summary to user including: + - Story created: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` + - Status: Draft + - Key Unity components and systems included + - Scene/prefab modifications required + - Asset requirements identified + - Any deviations or conflicts noted between GDD and architecture + - Checklist Results + - Next steps: For complex Unity features, suggest the user review the story draft and optionally test critical assumptions in Unity Editor -## Story Elements Checklist +### 7. Unity-Specific Validation -### Required Sections +Before finalizing, ensure: -- [ ] Clear, specific description -- [ ] Complete acceptance criteria (functional, technical, game design) -- [ ] Detailed technical specifications -- [ ] File creation/modification list -- [ ] C# interfaces and classes -- [ ] Integration point specifications -- [ ] Ordered implementation tasks -- [ ] Comprehensive testing requirements -- [ ] Performance criteria -- [ ] Dependencies clearly identified -- [ ] Definition of Done checklist +- [ ] All required Unity packages are documented with versions +- [ ] Package-specific APIs and configurations are included +- [ ] All MonoBehaviour lifecycle methods are considered +- [ ] Prefab workflows are clearly defined +- [ ] Scene management approach is specified +- [ ] Input system integration is complete (legacy or new Input System) +- [ ] UI canvas setup follows Unity best practices +- [ ] Performance profiling points are identified +- [ ] Asset import settings are documented +- [ ] Platform-specific code paths are noted +- [ ] Package compatibility is verified (e.g., URP vs Built-in pipeline) -### Game-Specific Requirements - -- [ ] GDD section references -- [ ] Game mechanic implementation details -- [ ] Player experience goals -- [ ] Balance parameters -- [ ] Unity-specific requirements (components, prefabs, scenes) -- [ ] Performance targets (stable frame rate) -- [ ] Cross-platform considerations - -### Technical Quality - -- [ ] C# best practices compliance -- [ ] Architecture document alignment -- [ ] Code organization follows standards -- [ ] Error handling requirements -- [ ] Memory management considerations -- [ ] Testing strategy defined - -## Common Pitfalls - -**Scope Issues:** - -- Story too large (break into multiple stories) -- Story too vague (add specific requirements) -- Missing dependencies (identify all prerequisites) -- Unclear boundaries (define what's in/out of scope) - -**Technical Issues:** - -- Missing integration details -- Incomplete technical specifications -- Undefined interfaces or classes -- Missing performance requirements - -**Game Design Issues:** - -- Not referencing GDD properly -- Missing player experience context -- Unclear game mechanic implementation -- Missing balance parameters - -## Success Criteria - -**Story Readiness:** - -- [ ] Developer can start implementation immediately -- [ ] No additional design decisions required -- [ ] All technical questions answered -- [ ] Testing strategy is complete -- [ ] Performance requirements are clear -- [ ] Story fits within epic scope - -**Quality Validation:** - -- [ ] Game story DOD checklist passes -- [ ] Architecture alignment confirmed -- [ ] GDD requirements covered -- [ ] Implementation tasks are ordered and specific -- [ ] Dependencies are complete and accurate - -## Handoff Protocol - -**To Game Developer:** - -1. Provide story document -2. Confirm GDD and architecture access -3. Verify all dependencies are met -4. Answer any clarification questions -5. Establish check-in schedule - -**Story Status Updates:** - -- Draft → Ready for Development -- In Development → Code Review -- Code Review → Testing -- Testing → Done - -This task ensures game development stories are immediately actionable and enable efficient AI-driven development of game features in Unity. +This task ensures game development stories are immediately actionable and enable efficient AI-driven development of Unity 2D game features. ==================== END: .bmad-2d-unity-game-dev/tasks/create-game-story.md ==================== ==================== START: .bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md ==================== diff --git a/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md b/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md index b17af982..be086f63 100644 --- a/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +++ b/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md @@ -1,217 +1,185 @@ -# Create Game Development Story Task +# Create Game Story Task ## Purpose -Create detailed, actionable game development stories that enable AI developers to implement specific game features in Unity without requiring additional design decisions. +To identify the next logical game story based on project progress and epic definitions, and then to prepare a comprehensive, self-contained, and actionable story file using the `Game Story Template`. This task ensures the story is enriched with all necessary technical context, Unity-specific requirements, and acceptance criteria, making it ready for efficient implementation by a Game Developer Agent with minimal need for additional research or finding its own context. -## When to Use +## SEQUENTIAL Task Execution (Do not proceed until current Task is complete) -- Breaking down game epics into implementable stories -- Converting GDD features into development tasks -- Preparing work for game developers -- Ensuring clear handoffs from design to development +### 0. Load Core Configuration and Check Workflow -## Prerequisites +- Load `{root}/game-core-config.yaml` from the project root +- If the file does not exist, check for `{root}/core-config.yaml` as fallback +- If neither exists, HALT and inform the user: "game-core-config.yaml (or core-config.yaml) not found. This file is required for story creation. You can either: 1) Copy core-config.yaml from GITHUB bmad-core/ and configure it for your game project OR 2) Run the BMad installer against your project to upgrade and add the file automatically. Please add and configure before proceeding." +- Extract key configurations: `devStoryLocation`, `gdd.*`, `architecture.*`, `workflow.*` -Before creating stories, ensure you have: +### 1. Identify Next Story for Preparation -- Completed Game Design Document (GDD) -- Game Architecture Document -- Epic definition this story belongs to -- Clear understanding of the specific game feature +#### 1.1 Locate Epic Files and Review Existing Stories -## Process +- Based on `gddSharded` from config, locate epic files (sharded location/pattern or monolithic GDD sections) +- If `devStoryLocation` has story files, load the highest `{epicNum}.{storyNum}.story.md` file +- **If highest story exists:** + - Verify status is 'Done'. If not, alert user: "ALERT: Found incomplete story! File: {lastEpicNum}.{lastStoryNum}.story.md Status: [current status] You should fix this story first, but would you like to accept risk & override to create the next story in draft?" + - If proceeding, select next sequential story in the current epic + - If epic is complete, prompt user: "Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed. Would you like to: 1) Begin Epic {epicNum + 1} with story 1 2) Select a specific story to work on 3) Cancel story creation" + - **CRITICAL**: NEVER automatically skip to another epic. User MUST explicitly instruct which story to create. +- **If no story files exist:** The next story is ALWAYS 1.1 (first story of first epic) +- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}" -### 1. Story Identification +### 2. Gather Story Requirements and Previous Story Context -**Review Epic Context:** +- Extract story requirements from the identified epic file or GDD section +- If previous story exists, review Dev Agent Record sections for: + - Completion Notes and Debug Log References + - Implementation deviations and technical decisions + - Unity-specific challenges (prefab issues, scene management, performance) + - Asset pipeline decisions and optimizations +- Extract relevant insights that inform the current story's preparation -- Understand the epic's overall goal -- Identify specific features that need implementation -- Review any existing stories in the epic -- Ensure no duplicate work +### 3. Gather Architecture Context -**Feature Analysis:** +#### 3.1 Determine Architecture Reading Strategy -- Reference specific GDD sections -- Understand player experience goals -- Identify technical complexity -- Estimate implementation scope +- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below +- **Else**: Use monolithic `architectureFile` for similar sections -### 2. Story Scoping +#### 3.2 Read Architecture Documents Based on Story Type -**Single Responsibility:** +**For ALL Game Stories:** tech-stack.md, unified-project-structure.md, coding-standards.md, testing-strategy.md, unity-conventions.md -- Focus on one specific game feature -- Ensure story is completable in 1-3 days -- Break down complex features into multiple stories -- Maintain clear boundaries with other stories +**For Gameplay/Mechanics Stories, additionally:** gameplay-systems.md, component-architecture.md, physics-config.md, input-system.md, state-machines.md -**Implementation Clarity:** +**For UI/UX Stories, additionally:** ui-architecture.md, ui-components.md, ui-state-management.md, scene-management.md -- Define exactly what needs to be built -- Specify all technical requirements -- Include all necessary integration points -- Provide clear success criteria +**For Backend/Services Stories, additionally:** data-persistence.md, save-system.md, analytics-integration.md, multiplayer-architecture.md -### 3. Template Execution +**For Graphics/Rendering Stories, additionally:** rendering-pipeline.md, shader-guidelines.md, sprite-management.md, particle-systems.md -**Load Template:** -Use `templates#game-story-tmpl` following all embedded LLM instructions +**For Audio Stories, additionally:** audio-architecture.md, audio-mixing.md, sound-banks.md -**Key Focus Areas:** +#### 3.3 Extract Story-Specific Technical Details -- Clear, actionable description -- Specific acceptance criteria -- Detailed technical specifications -- Complete implementation task list -- Comprehensive testing requirements +Extract ONLY information directly relevant to implementing the current story. Do NOT invent new patterns, systems, or standards not in the source documents. -### 4. Story Validation +Extract: -**Technical Review:** +- Specific Unity components and MonoBehaviours the story will use +- Unity Package Manager dependencies and their APIs (e.g., Cinemachine, Input System, URP) +- Package-specific configurations and setup requirements +- Prefab structures and scene organization requirements +- Input system bindings and configurations +- Physics settings and collision layers +- UI canvas and layout specifications +- Asset naming conventions and folder structures +- Performance budgets (target FPS, memory limits, draw calls) +- Platform-specific considerations (mobile vs desktop) +- Testing requirements specific to Unity features -- Verify all technical specifications are complete -- Ensure integration points are clearly defined -- Confirm file paths match architecture -- Validate C# interfaces and classes -- Check for proper use of prefabs and scenes +ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]` -**Game Design Alignment:** +### 4. Unity-Specific Technical Analysis -- Confirm story implements GDD requirements -- Verify player experience goals are met -- Check balance parameters are included -- Ensure game mechanics are correctly interpreted +#### 4.1 Package Dependencies Analysis -**Implementation Readiness:** +- Identify Unity Package Manager packages required for the story +- Document package versions from manifest.json +- Note any package-specific APIs or components being used +- List package configuration requirements (e.g., Input System settings, URP asset config) +- Identify any third-party Asset Store packages and their integration points -- All dependencies identified -- Assets requirements specified -- Testing criteria defined -- Definition of Done complete +#### 4.2 Scene and Prefab Planning -### 5. Quality Assurance +- Identify which scenes will be modified or created +- List prefabs that need to be created or updated +- Document prefab variant requirements +- Specify scene loading/unloading requirements -**Apply Checklist:** -Execute `checklists#game-story-dod-checklist` against completed story +#### 4.3 Component Architecture -**Story Criteria:** +- Define MonoBehaviour scripts needed +- Specify ScriptableObject assets required +- Document component dependencies and execution order +- Identify required Unity Events and UnityActions +- Note any package-specific components (e.g., Cinemachine VirtualCamera, InputActionAsset) -- Story is immediately actionable -- No design decisions left to developer -- Technical requirements are complete -- Testing requirements are comprehensive -- Performance requirements are specified +#### 4.4 Asset Requirements -### 6. Story Refinement +- List sprite/texture requirements with resolution specs +- Define animation clips and animator controllers needed +- Specify audio clips and their import settings +- Document any shader or material requirements +- Note any package-specific assets (e.g., URP materials, Input Action maps) -**Developer Perspective:** +### 5. Populate Story Template with Full Context -- Can a developer start implementation immediately? -- Are all technical questions answered? -- Is the scope appropriate for the estimated points? -- Are all dependencies clearly identified? +- Create new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` using Game Story Template +- Fill in basic story information: Title, Status (Draft), Story statement, Acceptance Criteria from Epic/GDD +- **`Dev Notes` section (CRITICAL):** + - CRITICAL: This section MUST contain ONLY information extracted from architecture documents and GDD. NEVER invent or assume technical details. + - Include ALL relevant technical details from Steps 2-4, organized by category: + - **Previous Story Insights**: Key learnings from previous story implementation + - **Package Dependencies**: Unity packages required, versions, configurations [with source references] + - **Unity Components**: Specific MonoBehaviours, ScriptableObjects, systems [with source references] + - **Scene & Prefab Specs**: Scene modifications, prefab structures, variants [with source references] + - **Input Configuration**: Input actions, bindings, control schemes [with source references] + - **UI Implementation**: Canvas setup, layout groups, UI events [with source references] + - **Asset Pipeline**: Asset requirements, import settings, optimization notes + - **Performance Targets**: FPS targets, memory budgets, profiler metrics + - **Platform Considerations**: Mobile vs desktop differences, input variations + - **Testing Requirements**: PlayMode tests, Unity Test Framework specifics + - Every technical detail MUST include its source reference: `[Source: architecture/{filename}.md#{section}]` + - If information for a category is not found in the architecture docs, explicitly state: "No specific guidance found in architecture docs" +- **`Tasks / Subtasks` section:** + - Generate detailed, sequential list of technical tasks based ONLY on: Epic/GDD Requirements, Story AC, Reviewed Architecture Information + - Include Unity-specific tasks: + - Scene setup and configuration + - Prefab creation and testing + - Component implementation with proper lifecycle methods + - Input system integration + - Physics configuration + - UI implementation with proper anchoring + - Performance profiling checkpoints + - Each task must reference relevant architecture documentation + - Include PlayMode testing as explicit subtasks + - Link tasks to ACs where applicable (e.g., `Task 1 (AC: 1, 3)`) +- Add notes on Unity project structure alignment or discrepancies found in Step 4 -**Iterative Improvement:** +### 6. Story Draft Completion and Review -- Address any gaps or ambiguities -- Clarify complex technical requirements -- Ensure story fits within epic scope -- Verify story points estimation +- Review all sections for completeness and accuracy +- Verify all source references are included for technical details +- Ensure Unity-specific requirements are comprehensive: + - All scenes and prefabs documented + - Component dependencies clear + - Asset requirements specified + - Performance targets defined +- Update status to "Draft" and save the story file +- Execute `{root}/tasks/execute-checklist` `{root}/checklists/game-story-dod-checklist` +- Provide summary to user including: + - Story created: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` + - Status: Draft + - Key Unity components and systems included + - Scene/prefab modifications required + - Asset requirements identified + - Any deviations or conflicts noted between GDD and architecture + - Checklist Results + - Next steps: For complex Unity features, suggest the user review the story draft and optionally test critical assumptions in Unity Editor -## Story Elements Checklist +### 7. Unity-Specific Validation -### Required Sections +Before finalizing, ensure: -- [ ] Clear, specific description -- [ ] Complete acceptance criteria (functional, technical, game design) -- [ ] Detailed technical specifications -- [ ] File creation/modification list -- [ ] C# interfaces and classes -- [ ] Integration point specifications -- [ ] Ordered implementation tasks -- [ ] Comprehensive testing requirements -- [ ] Performance criteria -- [ ] Dependencies clearly identified -- [ ] Definition of Done checklist +- [ ] All required Unity packages are documented with versions +- [ ] Package-specific APIs and configurations are included +- [ ] All MonoBehaviour lifecycle methods are considered +- [ ] Prefab workflows are clearly defined +- [ ] Scene management approach is specified +- [ ] Input system integration is complete (legacy or new Input System) +- [ ] UI canvas setup follows Unity best practices +- [ ] Performance profiling points are identified +- [ ] Asset import settings are documented +- [ ] Platform-specific code paths are noted +- [ ] Package compatibility is verified (e.g., URP vs Built-in pipeline) -### Game-Specific Requirements - -- [ ] GDD section references -- [ ] Game mechanic implementation details -- [ ] Player experience goals -- [ ] Balance parameters -- [ ] Unity-specific requirements (components, prefabs, scenes) -- [ ] Performance targets (stable frame rate) -- [ ] Cross-platform considerations - -### Technical Quality - -- [ ] C# best practices compliance -- [ ] Architecture document alignment -- [ ] Code organization follows standards -- [ ] Error handling requirements -- [ ] Memory management considerations -- [ ] Testing strategy defined - -## Common Pitfalls - -**Scope Issues:** - -- Story too large (break into multiple stories) -- Story too vague (add specific requirements) -- Missing dependencies (identify all prerequisites) -- Unclear boundaries (define what's in/out of scope) - -**Technical Issues:** - -- Missing integration details -- Incomplete technical specifications -- Undefined interfaces or classes -- Missing performance requirements - -**Game Design Issues:** - -- Not referencing GDD properly -- Missing player experience context -- Unclear game mechanic implementation -- Missing balance parameters - -## Success Criteria - -**Story Readiness:** - -- [ ] Developer can start implementation immediately -- [ ] No additional design decisions required -- [ ] All technical questions answered -- [ ] Testing strategy is complete -- [ ] Performance requirements are clear -- [ ] Story fits within epic scope - -**Quality Validation:** - -- [ ] Game story DOD checklist passes -- [ ] Architecture alignment confirmed -- [ ] GDD requirements covered -- [ ] Implementation tasks are ordered and specific -- [ ] Dependencies are complete and accurate - -## Handoff Protocol - -**To Game Developer:** - -1. Provide story document -2. Confirm GDD and architecture access -3. Verify all dependencies are met -4. Answer any clarification questions -5. Establish check-in schedule - -**Story Status Updates:** - -- Draft → Ready for Development -- In Development → Code Review -- Code Review → Testing -- Testing → Done - -This task ensures game development stories are immediately actionable and enable efficient AI-driven development of game features in Unity. \ No newline at end of file +This task ensures game development stories are immediately actionable and enable efficient AI-driven development of Unity 2D game features.