fix: build web bundles with new file extension includsion
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -50,6 +50,10 @@ activation-instructions:
|
||||
- Only read the files/tasks listed here when user selects them for execution to minimize context usage
|
||||
- The customization field ALWAYS takes precedence over any conflicting instructions
|
||||
- When listing tasks/templates or presenting options during conversations, always show as numbered options list, allowing the user to type a number to select or execute
|
||||
- Greet the user with your name and role, and inform of the *help command
|
||||
- Offer to help with game story preparation but wait for explicit user confirmation
|
||||
- Only execute tasks when user explicitly requests them
|
||||
- 'CRITICAL RULE: You are ONLY allowed to create/modify story files - NEVER implement! If asked to implement, tell user they MUST switch to Game Developer Agent'
|
||||
agent:
|
||||
name: Jordan
|
||||
id: game-sm
|
||||
@@ -69,13 +73,6 @@ core_principles:
|
||||
- Focus on One Story at a Time - Complete one before starting next
|
||||
- Game-Specific Context - Understand Phaser 3, game mechanics, and performance requirements
|
||||
- Numbered Options Protocol - Always use numbered lists for selections
|
||||
startup:
|
||||
- Greet the user with your name and role, and inform of the *help command
|
||||
- CRITICAL: Do NOT automatically execute create-game-story tasks during startup
|
||||
- CRITICAL: Do NOT create or modify any files during startup
|
||||
- Offer to help with game story preparation but wait for explicit user confirmation
|
||||
- Only execute tasks when user explicitly requests them
|
||||
- 'CRITICAL RULE: You are ONLY allowed to create/modify story files - NEVER implement! If asked to implement, tell user they MUST switch to Game Developer Agent'
|
||||
commands:
|
||||
- '*help" - Show numbered list of available commands for selection'
|
||||
- '*chat-mode" - Conversational mode with advanced-elicitation for game dev advice'
|
||||
@@ -84,12 +81,12 @@ commands:
|
||||
- '*exit" - Say goodbye as the Game Scrum Master, and then abandon inhabiting this persona'
|
||||
dependencies:
|
||||
tasks:
|
||||
- create-game-story
|
||||
- execute-checklist
|
||||
- create-game-story.md
|
||||
- execute-checklist.md
|
||||
templates:
|
||||
- game-story-tmpl
|
||||
- game-story-tmpl.yaml
|
||||
checklists:
|
||||
- game-story-dod-checklist
|
||||
- game-story-dod-checklist.md
|
||||
```
|
||||
==================== END: .bmad-2d-phaser-game-dev/agents/game-sm.md ====================
|
||||
|
||||
@@ -408,243 +405,261 @@ The LLM will:
|
||||
- Offer to provide detailed analysis of any section, especially those with warnings or failures
|
||||
==================== END: .bmad-2d-phaser-game-dev/tasks/execute-checklist.md ====================
|
||||
|
||||
==================== START: .bmad-2d-phaser-game-dev/templates/game-story-tmpl.md ====================
|
||||
# Story: {{Story Title}}
|
||||
|
||||
**Epic:** {{Epic Name}}
|
||||
**Story ID:** {{ID}}
|
||||
**Priority:** {{High|Medium|Low}}
|
||||
**Points:** {{Story Points}}
|
||||
**Status:** Draft
|
||||
|
||||
[[LLM: This template creates detailed game development stories that are immediately actionable by game developers. Each story should focus on a single, implementable feature that contributes to the overall game functionality.
|
||||
|
||||
Before starting, ensure you have access to:
|
||||
|
||||
- Game Design Document (GDD)
|
||||
- Game Architecture Document
|
||||
- Any existing stories in this epic
|
||||
|
||||
The story should be specific enough that a developer can implement it without requiring additional design decisions.]]
|
||||
|
||||
## Description
|
||||
|
||||
[[LLM: Provide a clear, concise description of what this story implements. Focus on the specific game feature or system being built. Reference the GDD section that defines this feature.]]
|
||||
|
||||
{{clear_description_of_what_needs_to_be_implemented}}
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
[[LLM: Define specific, testable conditions that must be met for the story to be considered complete. Each criterion should be verifiable and directly related to gameplay functionality.]]
|
||||
|
||||
### Functional Requirements
|
||||
|
||||
- [ ] {{specific_functional_requirement_1}}
|
||||
- [ ] {{specific_functional_requirement_2}}
|
||||
- [ ] {{specific_functional_requirement_3}}
|
||||
|
||||
### Technical Requirements
|
||||
|
||||
- [ ] Code follows TypeScript strict mode standards
|
||||
- [ ] Maintains 60 FPS on target devices
|
||||
- [ ] No memory leaks or performance degradation
|
||||
- [ ] {{specific_technical_requirement}}
|
||||
|
||||
### Game Design Requirements
|
||||
|
||||
- [ ] {{gameplay_requirement_from_gdd}}
|
||||
- [ ] {{balance_requirement_if_applicable}}
|
||||
- [ ] {{player_experience_requirement}}
|
||||
|
||||
## Technical Specifications
|
||||
|
||||
[[LLM: Provide specific technical details that guide implementation. Include class names, file locations, and integration points based on the game architecture.]]
|
||||
|
||||
### Files to Create/Modify
|
||||
|
||||
**New Files:**
|
||||
|
||||
- `{{file_path_1}}` - {{purpose}}
|
||||
- `{{file_path_2}}` - {{purpose}}
|
||||
|
||||
**Modified Files:**
|
||||
|
||||
- `{{existing_file_1}}` - {{changes_needed}}
|
||||
- `{{existing_file_2}}` - {{changes_needed}}
|
||||
|
||||
### Class/Interface Definitions
|
||||
|
||||
[[LLM: Define specific TypeScript interfaces and class structures needed]]
|
||||
|
||||
```typescript
|
||||
// {{interface_name}}
|
||||
interface {{InterfaceName}} {
|
||||
{{property_1}}: {{type}};
|
||||
{{property_2}}: {{type}};
|
||||
{{method_1}}({{params}}): {{return_type}};
|
||||
}
|
||||
|
||||
// {{class_name}}
|
||||
class {{ClassName}} extends {{PhaseClass}} {
|
||||
private {{property}}: {{type}};
|
||||
|
||||
constructor({{params}}) {
|
||||
// Implementation requirements
|
||||
}
|
||||
|
||||
public {{method}}({{params}}): {{return_type}} {
|
||||
// Method requirements
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Integration Points
|
||||
|
||||
[[LLM: Specify how this feature integrates with existing systems]]
|
||||
|
||||
**Scene Integration:**
|
||||
|
||||
- {{scene_name}}: {{integration_details}}
|
||||
|
||||
**System Dependencies:**
|
||||
|
||||
- {{system_name}}: {{dependency_description}}
|
||||
|
||||
**Event Communication:**
|
||||
|
||||
- Emits: `{{event_name}}` when {{condition}}
|
||||
- Listens: `{{event_name}}` to {{response}}
|
||||
|
||||
## Implementation Tasks
|
||||
|
||||
[[LLM: Break down the implementation into specific, ordered tasks. Each task should be completable in 1-4 hours.]]
|
||||
|
||||
### Dev Agent Record
|
||||
|
||||
**Tasks:**
|
||||
|
||||
- [ ] {{task_1_description}}
|
||||
- [ ] {{task_2_description}}
|
||||
- [ ] {{task_3_description}}
|
||||
- [ ] {{task_4_description}}
|
||||
- [ ] Write unit tests for {{component}}
|
||||
- [ ] Integration testing with {{related_system}}
|
||||
- [ ] Performance testing and optimization
|
||||
|
||||
**Debug Log:**
|
||||
| Task | File | Change | Reverted? |
|
||||
|------|------|--------|-----------|
|
||||
| | | | |
|
||||
|
||||
**Completion Notes:**
|
||||
|
||||
<!-- Only note deviations from requirements, keep under 50 words -->
|
||||
|
||||
**Change Log:**
|
||||
|
||||
<!-- Only requirement changes during implementation -->
|
||||
|
||||
## Game Design Context
|
||||
|
||||
[[LLM: Reference the specific sections of the GDD that this story implements]]
|
||||
|
||||
**GDD Reference:** {{section_name}} ({{page_or_section_number}})
|
||||
|
||||
**Game Mechanic:** {{mechanic_name}}
|
||||
|
||||
**Player Experience Goal:** {{experience_description}}
|
||||
|
||||
**Balance Parameters:**
|
||||
|
||||
- {{parameter_1}}: {{value_or_range}}
|
||||
- {{parameter_2}}: {{value_or_range}}
|
||||
|
||||
## Testing Requirements
|
||||
|
||||
[[LLM: Define specific testing criteria for this game feature]]
|
||||
|
||||
### Unit Tests
|
||||
|
||||
**Test Files:**
|
||||
|
||||
- `tests/{{component_name}}.test.ts`
|
||||
|
||||
**Test Scenarios:**
|
||||
|
||||
- {{test_scenario_1}}
|
||||
- {{test_scenario_2}}
|
||||
- {{edge_case_test}}
|
||||
|
||||
### Game Testing
|
||||
|
||||
**Manual Test Cases:**
|
||||
|
||||
1. {{test_case_1_description}}
|
||||
|
||||
- Expected: {{expected_behavior}}
|
||||
- Performance: {{performance_expectation}}
|
||||
|
||||
2. {{test_case_2_description}}
|
||||
- Expected: {{expected_behavior}}
|
||||
- Edge Case: {{edge_case_handling}}
|
||||
|
||||
### Performance Tests
|
||||
|
||||
**Metrics to Verify:**
|
||||
|
||||
- Frame rate maintains {{fps_target}} FPS
|
||||
- Memory usage stays under {{memory_limit}}MB
|
||||
- {{feature_specific_performance_metric}}
|
||||
|
||||
## Dependencies
|
||||
|
||||
[[LLM: List any dependencies that must be completed before this story can be implemented]]
|
||||
|
||||
**Story Dependencies:**
|
||||
|
||||
- {{story_id}}: {{dependency_description}}
|
||||
|
||||
**Technical Dependencies:**
|
||||
|
||||
- {{system_or_file}}: {{requirement}}
|
||||
|
||||
**Asset Dependencies:**
|
||||
|
||||
- {{asset_type}}: {{asset_description}}
|
||||
- Location: `{{asset_path}}`
|
||||
|
||||
## Definition of Done
|
||||
|
||||
[[LLM: Checklist that must be completed before the story is considered finished]]
|
||||
|
||||
- [ ] All acceptance criteria met
|
||||
- [ ] Code reviewed and approved
|
||||
- [ ] Unit tests written and passing
|
||||
- [ ] Integration tests passing
|
||||
- [ ] Performance targets met
|
||||
- [ ] No linting errors
|
||||
- [ ] Documentation updated
|
||||
- [ ] {{game_specific_dod_item}}
|
||||
|
||||
## Notes
|
||||
|
||||
[[LLM: Any additional context, design decisions, or implementation notes]]
|
||||
|
||||
**Implementation Notes:**
|
||||
|
||||
- {{note_1}}
|
||||
- {{note_2}}
|
||||
|
||||
**Design Decisions:**
|
||||
|
||||
- {{decision_1}}: {{rationale}}
|
||||
- {{decision_2}}: {{rationale}}
|
||||
|
||||
**Future Considerations:**
|
||||
|
||||
- {{future_enhancement_1}}
|
||||
- {{future_optimization_1}}
|
||||
==================== END: .bmad-2d-phaser-game-dev/templates/game-story-tmpl.md ====================
|
||||
==================== START: .bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml ====================
|
||||
template:
|
||||
id: game-story-template-v2
|
||||
name: Game Development Story
|
||||
version: 2.0
|
||||
output:
|
||||
format: markdown
|
||||
filename: "stories/{{epic_name}}/{{story_id}}-{{story_name}}.md"
|
||||
title: "Story: {{story_title}}"
|
||||
|
||||
workflow:
|
||||
mode: interactive
|
||||
|
||||
sections:
|
||||
- id: initial-setup
|
||||
instruction: |
|
||||
This template creates detailed game development stories that are immediately actionable by game developers. Each story should focus on a single, implementable feature that contributes to the overall game functionality.
|
||||
|
||||
Before starting, ensure you have access to:
|
||||
|
||||
- Game Design Document (GDD)
|
||||
- Game Architecture Document
|
||||
- Any existing stories in this epic
|
||||
|
||||
The story should be specific enough that a developer can implement it without requiring additional design decisions.
|
||||
|
||||
- id: story-header
|
||||
content: |
|
||||
**Epic:** {{epic_name}}
|
||||
**Story ID:** {{story_id}}
|
||||
**Priority:** {{High|Medium|Low}}
|
||||
**Points:** {{story_points}}
|
||||
**Status:** Draft
|
||||
|
||||
- id: description
|
||||
title: Description
|
||||
instruction: Provide a clear, concise description of what this story implements. Focus on the specific game feature or system being built. Reference the GDD section that defines this feature.
|
||||
template: "{{clear_description_of_what_needs_to_be_implemented}}"
|
||||
|
||||
- id: acceptance-criteria
|
||||
title: Acceptance Criteria
|
||||
instruction: Define specific, testable conditions that must be met for the story to be considered complete. Each criterion should be verifiable and directly related to gameplay functionality.
|
||||
sections:
|
||||
- id: functional-requirements
|
||||
title: Functional Requirements
|
||||
type: checklist
|
||||
items:
|
||||
- "{{specific_functional_requirement}}"
|
||||
- id: technical-requirements
|
||||
title: Technical Requirements
|
||||
type: checklist
|
||||
items:
|
||||
- "Code follows TypeScript strict mode standards"
|
||||
- "Maintains 60 FPS on target devices"
|
||||
- "No memory leaks or performance degradation"
|
||||
- "{{specific_technical_requirement}}"
|
||||
- id: game-design-requirements
|
||||
title: Game Design Requirements
|
||||
type: checklist
|
||||
items:
|
||||
- "{{gameplay_requirement_from_gdd}}"
|
||||
- "{{balance_requirement_if_applicable}}"
|
||||
- "{{player_experience_requirement}}"
|
||||
|
||||
- id: technical-specifications
|
||||
title: Technical Specifications
|
||||
instruction: Provide specific technical details that guide implementation. Include class names, file locations, and integration points based on the game architecture.
|
||||
sections:
|
||||
- id: files-to-modify
|
||||
title: Files to Create/Modify
|
||||
template: |
|
||||
**New Files:**
|
||||
|
||||
- `{{file_path_1}}` - {{purpose}}
|
||||
- `{{file_path_2}}` - {{purpose}}
|
||||
|
||||
**Modified Files:**
|
||||
|
||||
- `{{existing_file_1}}` - {{changes_needed}}
|
||||
- `{{existing_file_2}}` - {{changes_needed}}
|
||||
- id: class-interface-definitions
|
||||
title: Class/Interface Definitions
|
||||
instruction: Define specific TypeScript interfaces and class structures needed
|
||||
type: code
|
||||
language: typescript
|
||||
template: |
|
||||
// {{interface_name}}
|
||||
interface {{interface_name}} {
|
||||
{{property_1}}: {{type}};
|
||||
{{property_2}}: {{type}};
|
||||
{{method_1}}({{params}}): {{return_type}};
|
||||
}
|
||||
|
||||
// {{class_name}}
|
||||
class {{class_name}} extends {{phaser_class}} {
|
||||
private {{property}}: {{type}};
|
||||
|
||||
constructor({{params}}) {
|
||||
// Implementation requirements
|
||||
}
|
||||
|
||||
public {{method}}({{params}}): {{return_type}} {
|
||||
// Method requirements
|
||||
}
|
||||
}
|
||||
- id: integration-points
|
||||
title: Integration Points
|
||||
instruction: Specify how this feature integrates with existing systems
|
||||
template: |
|
||||
**Scene Integration:**
|
||||
|
||||
- {{scene_name}}: {{integration_details}}
|
||||
|
||||
**System Dependencies:**
|
||||
|
||||
- {{system_name}}: {{dependency_description}}
|
||||
|
||||
**Event Communication:**
|
||||
|
||||
- Emits: `{{event_name}}` when {{condition}}
|
||||
- Listens: `{{event_name}}` to {{response}}
|
||||
|
||||
- id: implementation-tasks
|
||||
title: Implementation Tasks
|
||||
instruction: Break down the implementation into specific, ordered tasks. Each task should be completable in 1-4 hours.
|
||||
sections:
|
||||
- id: dev-agent-record
|
||||
title: Dev Agent Record
|
||||
template: |
|
||||
**Tasks:**
|
||||
|
||||
- [ ] {{task_1_description}}
|
||||
- [ ] {{task_2_description}}
|
||||
- [ ] {{task_3_description}}
|
||||
- [ ] {{task_4_description}}
|
||||
- [ ] Write unit tests for {{component}}
|
||||
- [ ] Integration testing with {{related_system}}
|
||||
- [ ] Performance testing and optimization
|
||||
|
||||
**Debug Log:**
|
||||
| Task | File | Change | Reverted? |
|
||||
|------|------|--------|-----------|
|
||||
| | | | |
|
||||
|
||||
**Completion Notes:**
|
||||
|
||||
<!-- Only note deviations from requirements, keep under 50 words -->
|
||||
|
||||
**Change Log:**
|
||||
|
||||
<!-- Only requirement changes during implementation -->
|
||||
|
||||
- id: game-design-context
|
||||
title: Game Design Context
|
||||
instruction: Reference the specific sections of the GDD that this story implements
|
||||
template: |
|
||||
**GDD Reference:** {{section_name}} ({{page_or_section_number}})
|
||||
|
||||
**Game Mechanic:** {{mechanic_name}}
|
||||
|
||||
**Player Experience Goal:** {{experience_description}}
|
||||
|
||||
**Balance Parameters:**
|
||||
|
||||
- {{parameter_1}}: {{value_or_range}}
|
||||
- {{parameter_2}}: {{value_or_range}}
|
||||
|
||||
- id: testing-requirements
|
||||
title: Testing Requirements
|
||||
instruction: Define specific testing criteria for this game feature
|
||||
sections:
|
||||
- id: unit-tests
|
||||
title: Unit Tests
|
||||
template: |
|
||||
**Test Files:**
|
||||
|
||||
- `tests/{{component_name}}.test.ts`
|
||||
|
||||
**Test Scenarios:**
|
||||
|
||||
- {{test_scenario_1}}
|
||||
- {{test_scenario_2}}
|
||||
- {{edge_case_test}}
|
||||
- id: game-testing
|
||||
title: Game Testing
|
||||
template: |
|
||||
**Manual Test Cases:**
|
||||
|
||||
1. {{test_case_1_description}}
|
||||
|
||||
- Expected: {{expected_behavior}}
|
||||
- Performance: {{performance_expectation}}
|
||||
|
||||
2. {{test_case_2_description}}
|
||||
- Expected: {{expected_behavior}}
|
||||
- Edge Case: {{edge_case_handling}}
|
||||
- id: performance-tests
|
||||
title: Performance Tests
|
||||
template: |
|
||||
**Metrics to Verify:**
|
||||
|
||||
- Frame rate maintains {{fps_target}} FPS
|
||||
- Memory usage stays under {{memory_limit}}MB
|
||||
- {{feature_specific_performance_metric}}
|
||||
|
||||
- id: dependencies
|
||||
title: Dependencies
|
||||
instruction: List any dependencies that must be completed before this story can be implemented
|
||||
template: |
|
||||
**Story Dependencies:**
|
||||
|
||||
- {{story_id}}: {{dependency_description}}
|
||||
|
||||
**Technical Dependencies:**
|
||||
|
||||
- {{system_or_file}}: {{requirement}}
|
||||
|
||||
**Asset Dependencies:**
|
||||
|
||||
- {{asset_type}}: {{asset_description}}
|
||||
- Location: `{{asset_path}}`
|
||||
|
||||
- id: definition-of-done
|
||||
title: Definition of Done
|
||||
instruction: Checklist that must be completed before the story is considered finished
|
||||
type: checklist
|
||||
items:
|
||||
- "All acceptance criteria met"
|
||||
- "Code reviewed and approved"
|
||||
- "Unit tests written and passing"
|
||||
- "Integration tests passing"
|
||||
- "Performance targets met"
|
||||
- "No linting errors"
|
||||
- "Documentation updated"
|
||||
- "{{game_specific_dod_item}}"
|
||||
|
||||
- id: notes
|
||||
title: Notes
|
||||
instruction: Any additional context, design decisions, or implementation notes
|
||||
template: |
|
||||
**Implementation Notes:**
|
||||
|
||||
- {{note_1}}
|
||||
- {{note_2}}
|
||||
|
||||
**Design Decisions:**
|
||||
|
||||
- {{decision_1}}: {{rationale}}
|
||||
- {{decision_2}}: {{rationale}}
|
||||
|
||||
**Future Considerations:**
|
||||
|
||||
- {{future_enhancement_1}}
|
||||
- {{future_optimization_1}}
|
||||
==================== END: .bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml ====================
|
||||
|
||||
==================== START: .bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md ====================
|
||||
# Game Development Story Definition of Done Checklist
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user