bmad-method 4.26.0 → 4.27.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/.vscode/settings.json +2 -0
  2. package/CHANGELOG.md +22 -0
  3. package/README.md +29 -282
  4. package/bmad-core/agent-teams/team-all.yaml +6 -6
  5. package/bmad-core/agent-teams/team-fullstack.yaml +6 -6
  6. package/bmad-core/agent-teams/team-no-ui.yaml +2 -2
  7. package/bmad-core/agents/analyst.md +17 -18
  8. package/bmad-core/agents/architect.md +15 -18
  9. package/bmad-core/agents/bmad-master.md +56 -53
  10. package/bmad-core/agents/bmad-orchestrator.md +24 -23
  11. package/bmad-core/agents/dev.md +10 -10
  12. package/bmad-core/agents/pm.md +17 -20
  13. package/bmad-core/agents/po.md +12 -15
  14. package/bmad-core/agents/qa.md +7 -8
  15. package/bmad-core/agents/sm.md +8 -13
  16. package/bmad-core/agents/ux-expert.md +7 -11
  17. package/bmad-core/core-config.yaml +1 -1
  18. package/bmad-core/data/bmad-kb.md +74 -15
  19. package/bmad-core/data/brainstorming-techniques.md +36 -0
  20. package/bmad-core/data/elicitation-methods.md +134 -0
  21. package/bmad-core/tasks/advanced-elicitation.md +82 -57
  22. package/bmad-core/tasks/facilitate-brainstorming-session.md +136 -0
  23. package/bmad-core/templates/architecture-tmpl.yaml +658 -0
  24. package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  25. package/bmad-core/templates/brownfield-architecture-tmpl.yaml +476 -0
  26. package/bmad-core/templates/brownfield-prd-tmpl.yaml +280 -0
  27. package/bmad-core/templates/competitor-analysis-tmpl.yaml +293 -0
  28. package/bmad-core/templates/front-end-architecture-tmpl.yaml +206 -0
  29. package/bmad-core/templates/front-end-spec-tmpl.yaml +349 -0
  30. package/bmad-core/templates/fullstack-architecture-tmpl.yaml +805 -0
  31. package/bmad-core/templates/market-research-tmpl.yaml +252 -0
  32. package/bmad-core/templates/prd-tmpl.yaml +202 -0
  33. package/bmad-core/templates/project-brief-tmpl.yaml +221 -0
  34. package/bmad-core/templates/story-tmpl.yaml +137 -0
  35. package/bmad-core/utils/plan-management.md +9 -13
  36. package/bmad-core/workflows/greenfield-service.yaml +1 -1
  37. package/common/tasks/create-doc.md +55 -67
  38. package/common/utils/bmad-doc-template.md +325 -0
  39. package/dist/agents/analyst.txt +1312 -1193
  40. package/dist/agents/architect.txt +2484 -2895
  41. package/dist/agents/bmad-master.txt +4680 -4897
  42. package/dist/agents/bmad-orchestrator.txt +400 -195
  43. package/dist/agents/dev.txt +21 -24
  44. package/dist/agents/pm.txt +590 -619
  45. package/dist/agents/po.txt +178 -130
  46. package/dist/agents/qa.txt +159 -48
  47. package/dist/agents/sm.txt +166 -120
  48. package/dist/agents/ux-expert.txt +436 -544
  49. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +1283 -1260
  50. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +642 -591
  51. package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +284 -268
  52. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +9258 -4977
  53. package/dist/expansion-packs/bmad-creator-tools/agents/bmad-the-creator.txt +388 -325
  54. package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +1144 -1165
  55. package/dist/teams/team-all.txt +4885 -4967
  56. package/dist/teams/team-fullstack.txt +5621 -5693
  57. package/dist/teams/team-ide-minimal.txt +604 -333
  58. package/dist/teams/team-no-ui.txt +5209 -5213
  59. package/docs/agentic-tools/github-copilot-guide.md +29 -9
  60. package/docs/bmad-workflow-guide.md +2 -2
  61. package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +2 -2
  62. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +17 -15
  63. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +13 -11
  64. package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +13 -11
  65. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
  66. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +2 -2
  67. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +613 -0
  68. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +356 -0
  69. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +343 -0
  70. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +253 -0
  71. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +484 -0
  72. package/expansion-packs/bmad-creator-tools/agents/bmad-the-creator.md +14 -12
  73. package/expansion-packs/bmad-creator-tools/config.yaml +1 -1
  74. package/expansion-packs/bmad-creator-tools/templates/agent-teams-tmpl.yaml +178 -0
  75. package/expansion-packs/bmad-creator-tools/templates/agent-tmpl.yaml +154 -0
  76. package/expansion-packs/bmad-creator-tools/templates/expansion-pack-plan-tmpl.yaml +120 -0
  77. package/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +14 -14
  78. package/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
  79. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +424 -0
  80. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +629 -0
  81. package/package.json +1 -1
  82. package/tools/builders/web-builder.js +170 -95
  83. package/tools/installer/config/install.config.yaml +2 -2
  84. package/tools/installer/lib/ide-setup.js +2 -2
  85. package/tools/installer/package.json +1 -1
  86. package/tools/lib/dependency-resolver.js +11 -22
  87. package/tools/md-assets/web-agent-startup-instructions.md +10 -10
  88. package/bmad-core/tasks/brainstorming-techniques.md +0 -238
  89. package/bmad-core/templates/architecture-tmpl.md +0 -776
  90. package/bmad-core/templates/brownfield-architecture-tmpl.md +0 -544
  91. package/bmad-core/templates/brownfield-prd-tmpl.md +0 -266
  92. package/bmad-core/templates/competitor-analysis-tmpl.md +0 -291
  93. package/bmad-core/templates/front-end-architecture-tmpl.md +0 -175
  94. package/bmad-core/templates/front-end-spec-tmpl.md +0 -413
  95. package/bmad-core/templates/fullstack-architecture-tmpl.md +0 -1018
  96. package/bmad-core/templates/market-research-tmpl.md +0 -263
  97. package/bmad-core/templates/prd-tmpl.md +0 -202
  98. package/bmad-core/templates/project-brief-tmpl.md +0 -232
  99. package/bmad-core/templates/story-tmpl.md +0 -58
  100. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.md +0 -560
  101. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.md +0 -345
  102. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.md +0 -331
  103. package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.md +0 -235
  104. package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.md +0 -470
  105. package/expansion-packs/bmad-creator-tools/templates/agent-teams-tmpl.md +0 -154
  106. package/expansion-packs/bmad-creator-tools/templates/agent-tmpl.md +0 -143
  107. package/expansion-packs/bmad-creator-tools/templates/expansion-pack-plan-tmpl.md +0 -91
  108. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.md +0 -415
  109. package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.md +0 -0
@@ -1,58 +0,0 @@
1
- ---
2
- defaultOutput: docs/stories/{{EpicNum}}.{{StoryNum}}.{{Short Title Copied from Epic File specific story}}.md
3
- smAgent:
4
- editableSections: Status, Story, Acceptance Criteria, Tasks / Subtasks, Dev Notes, Testing, Change Log
5
- sectionSpecificInstructions:
6
- "Dev Notes":
7
- - Populate relevant information, only what was pulled from actual artifacts from docs folder, relevant to this story
8
- - Do not invent information.
9
- - If known add Relevant Source Tree info that relates to this story.
10
- - If there were important notes from previous story that are relevant to this one, include them here.
11
- - Put enough information in this section so that the dev agent should NEVER need to read the architecture documents, these notes along with the tasks and subtasks must give the Dev Agent the complete context it needs to comprehend with the least amount of overhead the information to complete the story, meeting all AC and completing all tasks+subtasks.
12
- Testing:
13
- - List Relevant Testing Standards from Architecture the Developer needs to conform to (test file location, test standards, etc)
14
- ---
15
-
16
- # Story {{EpicNum}}.{{StoryNum}}: {{Short Title Copied from Epic File specific story}}
17
-
18
- ## Status: {{ Draft | Approved | InProgress | Review | Done }}
19
-
20
- ## Story
21
-
22
- **As a** {{role}},\
23
- **I want** {{action}},\
24
- **so that** {{benefit}}
25
-
26
- ## Acceptance Criteria
27
-
28
- {{ Copy of Acceptance Criteria numbered list }}
29
-
30
- ## Tasks / Subtasks
31
-
32
- - [ ] Task 1 (AC: # if applicable)
33
- - [ ] Subtask1.1...
34
- - [ ] Task 2 (AC: # if applicable)
35
- - [ ] Subtask 2.1...
36
- - [ ] Task 3 (AC: # if applicable)
37
- - [ ] Subtask 3.1...
38
-
39
- ## Dev Notes
40
-
41
- ### Testing
42
-
43
- ## Change Log
44
-
45
- | Date | Version | Description | Author |
46
- | :--- | :------ | :---------- | :----- |
47
-
48
- ## Dev Agent Record
49
-
50
- ### Agent Model Used: {{Agent Model Name/Version}}
51
-
52
- ### Debug Log References
53
-
54
- ### Completion Notes List
55
-
56
- ### File List
57
-
58
- ## QA Results
@@ -1,560 +0,0 @@
1
- # {{Game Title}} Game Architecture Document
2
-
3
- [[LLM: This template creates a comprehensive game architecture document specifically for Phaser 3 + TypeScript projects. This should provide the technical foundation for all game development stories and epics.
4
-
5
- If available, review any provided documents: Game Design Document (GDD), Technical Preferences. This architecture should support all game mechanics defined in the GDD.]]
6
-
7
- ## Introduction
8
-
9
- [[LLM: Establish the document's purpose and scope for game development]]
10
-
11
- This document outlines the complete technical architecture for {{Game Title}}, a 2D game built with Phaser 3 and TypeScript. It serves as the technical foundation for AI-driven game development, ensuring consistency and scalability across all game systems.
12
-
13
- This architecture is designed to support the gameplay mechanics defined in the Game Design Document while maintaining 60 FPS performance and cross-platform compatibility.
14
-
15
- ### Change Log
16
-
17
- [[LLM: Track document versions and changes]]
18
-
19
- | Date | Version | Description | Author |
20
- | :--- | :------ | :---------- | :----- |
21
-
22
- ## Technical Overview
23
-
24
- [[LLM: Present all subsections together, then apply `tasks#advanced-elicitation` protocol to the complete section.]]
25
-
26
- ### Architecture Summary
27
-
28
- [[LLM: Provide a comprehensive overview covering:
29
-
30
- - Game engine choice and configuration
31
- - Project structure and organization
32
- - Key systems and their interactions
33
- - Performance and optimization strategy
34
- - How this architecture achieves GDD requirements]]
35
-
36
- ### Platform Targets
37
-
38
- [[LLM: Based on GDD requirements, confirm platform support]]
39
-
40
- **Primary Platform:** {{primary_platform}}
41
- **Secondary Platforms:** {{secondary_platforms}}
42
- **Minimum Requirements:** {{min_specs}}
43
- **Target Performance:** 60 FPS on {{target_device}}
44
-
45
- ### Technology Stack
46
-
47
- **Core Engine:** Phaser 3.70+
48
- **Language:** TypeScript 5.0+ (Strict Mode)
49
- **Build Tool:** {{build_tool}} (Webpack/Vite/Parcel)
50
- **Package Manager:** {{package_manager}}
51
- **Testing:** {{test_framework}}
52
- **Deployment:** {{deployment_platform}}
53
-
54
- ## Project Structure
55
-
56
- [[LLM: Define the complete project organization that developers will follow]]
57
-
58
- ### Repository Organization
59
-
60
- [[LLM: Design a clear folder structure for game development]]
61
-
62
- ```text
63
- {{game_name}}/
64
- ├── src/
65
- │ ├── scenes/ # Game scenes
66
- │ ├── gameObjects/ # Custom game objects
67
- │ ├── systems/ # Core game systems
68
- │ ├── utils/ # Utility functions
69
- │ ├── types/ # TypeScript type definitions
70
- │ ├── config/ # Game configuration
71
- │ └── main.ts # Entry point
72
- ├── assets/
73
- │ ├── images/ # Sprite assets
74
- │ ├── audio/ # Sound files
75
- │ ├── data/ # JSON data files
76
- │ └── fonts/ # Font files
77
- ├── public/ # Static web assets
78
- ├── tests/ # Test files
79
- ├── docs/ # Documentation
80
- │ ├── stories/ # Development stories
81
- │ └── architecture/ # Technical docs
82
- └── dist/ # Built game files
83
- ```
84
-
85
- ### Module Organization
86
-
87
- [[LLM: Define how TypeScript modules should be organized]]
88
-
89
- **Scene Structure:**
90
-
91
- - Each scene in separate file
92
- - Scene-specific logic contained
93
- - Clear data passing between scenes
94
-
95
- **Game Object Pattern:**
96
-
97
- - Component-based architecture
98
- - Reusable game object classes
99
- - Type-safe property definitions
100
-
101
- **System Architecture:**
102
-
103
- - Singleton managers for global systems
104
- - Event-driven communication
105
- - Clear separation of concerns
106
-
107
- ## Core Game Systems
108
-
109
- [[LLM: Detail each major system that needs to be implemented. Each system should be specific enough for developers to create implementation stories.]]
110
-
111
- ### Scene Management System
112
-
113
- **Purpose:** Handle game flow and scene transitions
114
-
115
- **Key Components:**
116
-
117
- - Scene loading and unloading
118
- - Data passing between scenes
119
- - Transition effects
120
- - Memory management
121
-
122
- **Implementation Requirements:**
123
-
124
- - Preload scene for asset loading
125
- - Menu system with navigation
126
- - Gameplay scenes with state management
127
- - Pause/resume functionality
128
-
129
- **Files to Create:**
130
-
131
- - `src/scenes/BootScene.ts`
132
- - `src/scenes/PreloadScene.ts`
133
- - `src/scenes/MenuScene.ts`
134
- - `src/scenes/GameScene.ts`
135
- - `src/systems/SceneManager.ts`
136
-
137
- ### Game State Management
138
-
139
- **Purpose:** Track player progress and game status
140
-
141
- **State Categories:**
142
-
143
- - Player progress (levels, unlocks)
144
- - Game settings (audio, controls)
145
- - Session data (current level, score)
146
- - Persistent data (achievements, statistics)
147
-
148
- **Implementation Requirements:**
149
-
150
- - Save/load system with localStorage
151
- - State validation and error recovery
152
- - Cross-session data persistence
153
- - Settings management
154
-
155
- **Files to Create:**
156
-
157
- - `src/systems/GameState.ts`
158
- - `src/systems/SaveManager.ts`
159
- - `src/types/GameData.ts`
160
-
161
- ### Asset Management System
162
-
163
- **Purpose:** Efficient loading and management of game assets
164
-
165
- **Asset Categories:**
166
-
167
- - Sprite sheets and animations
168
- - Audio files and music
169
- - Level data and configurations
170
- - UI assets and fonts
171
-
172
- **Implementation Requirements:**
173
-
174
- - Progressive loading strategy
175
- - Asset caching and optimization
176
- - Error handling for failed loads
177
- - Memory management for large assets
178
-
179
- **Files to Create:**
180
-
181
- - `src/systems/AssetManager.ts`
182
- - `src/config/AssetConfig.ts`
183
- - `src/utils/AssetLoader.ts`
184
-
185
- ### Input Management System
186
-
187
- **Purpose:** Handle all player input across platforms
188
-
189
- **Input Types:**
190
-
191
- - Keyboard controls
192
- - Mouse/pointer interaction
193
- - Touch gestures (mobile)
194
- - Gamepad support (optional)
195
-
196
- **Implementation Requirements:**
197
-
198
- - Input mapping and configuration
199
- - Touch-friendly mobile controls
200
- - Input buffering for responsive gameplay
201
- - Customizable control schemes
202
-
203
- **Files to Create:**
204
-
205
- - `src/systems/InputManager.ts`
206
- - `src/utils/TouchControls.ts`
207
- - `src/types/InputTypes.ts`
208
-
209
- ### Game Mechanics Systems
210
-
211
- [[LLM: For each major mechanic defined in the GDD, create a system specification]]
212
-
213
- <<REPEAT section="mechanic_system" count="based_on_gdd">>
214
-
215
- #### {{mechanic_name}} System
216
-
217
- **Purpose:** {{system_purpose}}
218
-
219
- **Core Functionality:**
220
-
221
- - {{feature_1}}
222
- - {{feature_2}}
223
- - {{feature_3}}
224
-
225
- **Dependencies:** {{required_systems}}
226
-
227
- **Performance Considerations:** {{optimization_notes}}
228
-
229
- **Files to Create:**
230
-
231
- - `src/systems/{{SystemName}}.ts`
232
- - `src/gameObjects/{{RelatedObject}}.ts`
233
- - `src/types/{{SystemTypes}}.ts`
234
-
235
- <</REPEAT>>
236
-
237
- ### Physics & Collision System
238
-
239
- **Physics Engine:** {{physics_choice}} (Arcade Physics/Matter.js)
240
-
241
- **Collision Categories:**
242
-
243
- - Player collision
244
- - Enemy interactions
245
- - Environmental objects
246
- - Collectibles and items
247
-
248
- **Implementation Requirements:**
249
-
250
- - Optimized collision detection
251
- - Physics body management
252
- - Collision callbacks and events
253
- - Performance monitoring
254
-
255
- **Files to Create:**
256
-
257
- - `src/systems/PhysicsManager.ts`
258
- - `src/utils/CollisionGroups.ts`
259
-
260
- ### Audio System
261
-
262
- **Audio Requirements:**
263
-
264
- - Background music with looping
265
- - Sound effects for actions
266
- - Audio settings and volume control
267
- - Mobile audio optimization
268
-
269
- **Implementation Features:**
270
-
271
- - Audio sprite management
272
- - Dynamic music system
273
- - Spatial audio (if applicable)
274
- - Audio pooling for performance
275
-
276
- **Files to Create:**
277
-
278
- - `src/systems/AudioManager.ts`
279
- - `src/config/AudioConfig.ts`
280
-
281
- ### UI System
282
-
283
- **UI Components:**
284
-
285
- - HUD elements (score, health, etc.)
286
- - Menu navigation
287
- - Modal dialogs
288
- - Settings screens
289
-
290
- **Implementation Requirements:**
291
-
292
- - Responsive layout system
293
- - Touch-friendly interface
294
- - Keyboard navigation support
295
- - Animation and transitions
296
-
297
- **Files to Create:**
298
-
299
- - `src/systems/UIManager.ts`
300
- - `src/gameObjects/UI/`
301
- - `src/types/UITypes.ts`
302
-
303
- ## Performance Architecture
304
-
305
- [[LLM: Define performance requirements and optimization strategies]]
306
-
307
- ### Performance Targets
308
-
309
- **Frame Rate:** 60 FPS sustained, 30 FPS minimum
310
- **Memory Usage:** <{{memory_limit}}MB total
311
- **Load Times:** <{{initial_load}}s initial, <{{level_load}}s per level
312
- **Battery Optimization:** Reduced updates when not visible
313
-
314
- ### Optimization Strategies
315
-
316
- **Object Pooling:**
317
-
318
- - Bullets and projectiles
319
- - Particle effects
320
- - Enemy objects
321
- - UI elements
322
-
323
- **Asset Optimization:**
324
-
325
- - Texture atlases for sprites
326
- - Audio compression
327
- - Lazy loading for large assets
328
- - Progressive enhancement
329
-
330
- **Rendering Optimization:**
331
-
332
- - Sprite batching
333
- - Culling off-screen objects
334
- - Reduced particle counts on mobile
335
- - Texture resolution scaling
336
-
337
- **Files to Create:**
338
-
339
- - `src/utils/ObjectPool.ts`
340
- - `src/utils/PerformanceMonitor.ts`
341
- - `src/config/OptimizationConfig.ts`
342
-
343
- ## Game Configuration
344
-
345
- [[LLM: Define all configurable aspects of the game]]
346
-
347
- ### Phaser Configuration
348
-
349
- ```typescript
350
- // src/config/GameConfig.ts
351
- const gameConfig: Phaser.Types.Core.GameConfig = {
352
- type: Phaser.AUTO,
353
- width: {{game_width}},
354
- height: {{game_height}},
355
- scale: {
356
- mode: {{scale_mode}},
357
- autoCenter: Phaser.Scale.CENTER_BOTH
358
- },
359
- physics: {
360
- default: '{{physics_system}}',
361
- {{physics_system}}: {
362
- gravity: { y: {{gravity}} },
363
- debug: false
364
- }
365
- },
366
- // Additional configuration...
367
- };
368
- ```
369
-
370
- ### Game Balance Configuration
371
-
372
- [[LLM: Based on GDD, define configurable game parameters]]
373
-
374
- ```typescript
375
- // src/config/GameBalance.ts
376
- export const GameBalance = {
377
- player: {
378
- speed: {{player_speed}},
379
- health: {{player_health}},
380
- // Additional player parameters...
381
- },
382
- difficulty: {
383
- easy: {{easy_params}},
384
- normal: {{normal_params}},
385
- hard: {{hard_params}}
386
- },
387
- // Additional balance parameters...
388
- };
389
- ```
390
-
391
- ## Development Guidelines
392
-
393
- [[LLM: Provide coding standards specific to game development]]
394
-
395
- ### TypeScript Standards
396
-
397
- **Type Safety:**
398
-
399
- - Use strict mode
400
- - Define interfaces for all data structures
401
- - Avoid `any` type usage
402
- - Use enums for game states
403
-
404
- **Code Organization:**
405
-
406
- - One class per file
407
- - Clear naming conventions
408
- - Proper error handling
409
- - Comprehensive documentation
410
-
411
- ### Phaser 3 Best Practices
412
-
413
- **Scene Management:**
414
-
415
- - Clean up resources in shutdown()
416
- - Use scene data for communication
417
- - Implement proper event handling
418
- - Avoid memory leaks
419
-
420
- **Game Object Design:**
421
-
422
- - Extend Phaser classes appropriately
423
- - Use component-based architecture
424
- - Implement object pooling where needed
425
- - Follow consistent update patterns
426
-
427
- ### Testing Strategy
428
-
429
- **Unit Testing:**
430
-
431
- - Test game logic separately from Phaser
432
- - Mock Phaser dependencies
433
- - Test utility functions
434
- - Validate game balance calculations
435
-
436
- **Integration Testing:**
437
-
438
- - Scene loading and transitions
439
- - Save/load functionality
440
- - Input handling
441
- - Performance benchmarks
442
-
443
- **Files to Create:**
444
-
445
- - `tests/utils/GameLogic.test.ts`
446
- - `tests/systems/SaveManager.test.ts`
447
- - `tests/performance/FrameRate.test.ts`
448
-
449
- ## Deployment Architecture
450
-
451
- [[LLM: Define how the game will be built and deployed]]
452
-
453
- ### Build Process
454
-
455
- **Development Build:**
456
-
457
- - Fast compilation
458
- - Source maps enabled
459
- - Debug logging active
460
- - Hot reload support
461
-
462
- **Production Build:**
463
-
464
- - Minified and optimized
465
- - Asset compression
466
- - Performance monitoring
467
- - Error tracking
468
-
469
- ### Deployment Strategy
470
-
471
- **Web Deployment:**
472
-
473
- - Static hosting ({{hosting_platform}})
474
- - CDN for assets
475
- - Progressive loading
476
- - Browser compatibility
477
-
478
- **Mobile Packaging:**
479
-
480
- - Cordova/Capacitor wrapper
481
- - Platform-specific optimization
482
- - App store requirements
483
- - Performance testing
484
-
485
- ## Implementation Roadmap
486
-
487
- [[LLM: Break down the architecture implementation into phases that align with the GDD development phases]]
488
-
489
- ### Phase 1: Foundation ({{duration}})
490
-
491
- **Core Systems:**
492
-
493
- - Project setup and configuration
494
- - Basic scene management
495
- - Asset loading pipeline
496
- - Input handling framework
497
-
498
- **Story Epics:**
499
-
500
- - "Engine Setup and Configuration"
501
- - "Basic Scene Management System"
502
- - "Asset Loading Foundation"
503
-
504
- ### Phase 2: Game Systems ({{duration}})
505
-
506
- **Gameplay Systems:**
507
-
508
- - {{primary_mechanic}} implementation
509
- - Physics and collision system
510
- - Game state management
511
- - UI framework
512
-
513
- **Story Epics:**
514
-
515
- - "{{Primary_Mechanic}} System Implementation"
516
- - "Physics and Collision Framework"
517
- - "Game State Management System"
518
-
519
- ### Phase 3: Content & Polish ({{duration}})
520
-
521
- **Content Systems:**
522
-
523
- - Level loading and management
524
- - Audio system integration
525
- - Performance optimization
526
- - Final polish and testing
527
-
528
- **Story Epics:**
529
-
530
- - "Level Management System"
531
- - "Audio Integration and Optimization"
532
- - "Performance Optimization and Testing"
533
-
534
- ## Risk Assessment
535
-
536
- [[LLM: Identify potential technical risks and mitigation strategies]]
537
-
538
- | Risk | Probability | Impact | Mitigation Strategy |
539
- | ---------------------------- | ----------- | ---------- | ------------------- |
540
- | Performance issues on mobile | {{prob}} | {{impact}} | {{mitigation}} |
541
- | Asset loading bottlenecks | {{prob}} | {{impact}} | {{mitigation}} |
542
- | Cross-platform compatibility | {{prob}} | {{impact}} | {{mitigation}} |
543
-
544
- ## Success Criteria
545
-
546
- [[LLM: Define measurable technical success criteria]]
547
-
548
- **Technical Metrics:**
549
-
550
- - All systems implemented per specification
551
- - Performance targets met consistently
552
- - Zero critical bugs in core systems
553
- - Successful deployment across target platforms
554
-
555
- **Code Quality:**
556
-
557
- - 90%+ test coverage on game logic
558
- - Zero TypeScript errors in strict mode
559
- - Consistent adherence to coding standards
560
- - Comprehensive documentation coverage