bmad-method 4.31.0 → 4.33.0

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 (92) hide show
  1. package/.vscode/settings.json +1 -7
  2. package/CHANGELOG.md +113 -173
  3. package/README.md +47 -0
  4. package/bmad-core/agents/analyst.md +1 -1
  5. package/bmad-core/agents/architect.md +2 -3
  6. package/bmad-core/agents/bmad-master.md +0 -1
  7. package/bmad-core/agents/bmad-orchestrator.md +9 -10
  8. package/bmad-core/agents/dev.md +1 -2
  9. package/bmad-core/agents/pm.md +3 -1
  10. package/bmad-core/agents/po.md +1 -1
  11. package/bmad-core/agents/qa.md +1 -1
  12. package/bmad-core/agents/sm.md +1 -1
  13. package/bmad-core/agents/ux-expert.md +1 -1
  14. package/bmad-core/bmad-core/user-guide.md +0 -0
  15. package/bmad-core/checklists/architect-checklist.md +0 -5
  16. package/bmad-core/checklists/pm-checklist.md +0 -5
  17. package/bmad-core/checklists/po-master-checklist.md +0 -9
  18. package/bmad-core/checklists/story-dod-checklist.md +0 -7
  19. package/bmad-core/checklists/story-draft-checklist.md +0 -3
  20. package/bmad-core/data/bmad-kb.md +5 -2
  21. package/bmad-core/data/elicitation-methods.md +20 -0
  22. package/bmad-core/enhanced-ide-development-workflow.md +43 -0
  23. package/bmad-core/tasks/create-brownfield-story.md +11 -3
  24. package/bmad-core/tasks/create-deep-research-prompt.md +0 -11
  25. package/bmad-core/tasks/document-project.md +15 -13
  26. package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
  27. package/bmad-core/tasks/index-docs.md +0 -6
  28. package/bmad-core/tasks/kb-mode-interaction.md +3 -3
  29. package/bmad-core/tasks/review-story.md +10 -1
  30. package/bmad-core/tasks/shard-doc.md +0 -2
  31. package/bmad-core/user-guide.md +7 -6
  32. package/bmad-core/working-in-the-brownfield.md +39 -36
  33. package/common/tasks/execute-checklist.md +0 -7
  34. package/dist/agents/analyst.txt +6 -6
  35. package/dist/agents/architect.txt +8 -3
  36. package/dist/agents/bmad-master.txt +2 -1
  37. package/dist/agents/pm.txt +9 -2
  38. package/dist/agents/po.txt +2 -318
  39. package/dist/agents/qa.txt +0 -1
  40. package/dist/agents/sm.txt +3 -3
  41. package/dist/agents/ux-expert.txt +2 -297
  42. package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +6 -6
  43. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4047 -0
  44. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +1520 -185
  45. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +214 -1229
  46. package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +537 -373
  47. package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +6917 -2140
  48. package/dist/teams/team-all.txt +30 -25
  49. package/dist/teams/team-fullstack.txt +27 -21
  50. package/dist/teams/team-ide-minimal.txt +5 -322
  51. package/dist/teams/team-no-ui.txt +25 -16
  52. package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
  53. package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -4
  54. package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +3 -5
  55. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -1
  56. package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -18
  57. package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +1 -0
  58. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
  59. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +21 -16
  60. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +25 -25
  61. package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +15 -14
  62. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +391 -0
  63. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
  64. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +1 -1
  65. package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +103 -139
  66. package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
  67. package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +586 -68
  68. package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -4
  69. package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -1
  70. package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +141 -0
  71. package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +165 -198
  72. package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -18
  73. package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
  74. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +938 -453
  75. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +3 -3
  76. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +517 -155
  77. package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +12 -12
  78. package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +11 -11
  79. package/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
  80. package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -3
  81. package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -1
  82. package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -1
  83. package/package.json +4 -1
  84. package/tools/bmad-npx-wrapper.js +5 -7
  85. package/tools/flattener/main.js +570 -0
  86. package/tools/installer/bin/bmad.js +14 -0
  87. package/tools/installer/lib/installer.js +29 -3
  88. package/tools/installer/package-lock.json +89 -89
  89. package/tools/installer/package.json +1 -1
  90. package/.husky/pre-commit +0 -2
  91. package/.prettierignore +0 -21
  92. package/.prettierrc +0 -23
@@ -62,27 +62,29 @@ persona:
62
62
  style: Creative, player-focused, systematic, data-informed
63
63
  identity: Visionary who creates compelling game experiences through thoughtful design and player psychology understanding
64
64
  focus: Defining engaging gameplay systems, balanced progression, and clear development requirements for implementation teams
65
- core_principles:
66
- - Player-First Design - Every mechanic serves player engagement and fun
67
- - Checklist-Driven Validation - Apply game-design-checklist meticulously
68
- - Document Everything - Clear specifications enable proper development
69
- - Iterative Design - Prototype, test, refine approach to all systems
70
- - Technical Awareness - Design within feasible implementation constraints
71
- - Data-Driven Decisions - Use metrics and feedback to guide design choices
72
- - Numbered Options Protocol - Always use numbered lists for user selections
65
+ core_principles:
66
+ - Player-First Design - Every mechanic serves player engagement and fun
67
+ - Checklist-Driven Validation - Apply game-design-checklist meticulously
68
+ - Document Everything - Clear specifications enable proper development
69
+ - Iterative Design - Prototype, test, refine approach to all systems
70
+ - Technical Awareness - Design within feasible implementation constraints
71
+ - Data-Driven Decisions - Use metrics and feedback to guide design choices
72
+ - Numbered Options Protocol - Always use numbered lists for selections
73
73
  commands:
74
- - '*help" - Show numbered list of available commands for selection'
75
- - '*chat-mode" - Conversational mode with advanced-elicitation for design advice'
76
- - '*create" - Show numbered list of documents I can create (from templates below)'
77
- - '*brainstorm {topic}" - Facilitate structured game design brainstorming session'
78
- - '*research {topic}" - Generate deep research prompt for game-specific investigation'
79
- - '*elicit" - Run advanced elicitation to clarify game design requirements'
80
- - '*checklist {checklist}" - Show numbered list of checklists, execute selection'
81
- - '*exit" - Say goodbye as the Game Designer, and then abandon inhabiting this persona'
74
+ - help: Show numbered list of available commands for selection
75
+ - chat-mode: Conversational mode with advanced-elicitation for design advice
76
+ - create: Show numbered list of documents I can create (from templates below)
77
+ - brainstorm {topic}: Facilitate structured game design brainstorming session
78
+ - research {topic}: Generate deep research prompt for game-specific investigation
79
+ - elicit: Run advanced elicitation to clarify game design requirements
80
+ - checklist {checklist}: Show numbered list of checklists, execute selection
81
+ - shard-gdd: run the task shard-doc.md for the provided game-design-doc.md (ask if not found)
82
+ - exit: Say goodbye as the Game Designer, and then abandon inhabiting this persona
82
83
  dependencies:
83
84
  tasks:
84
85
  - create-doc.md
85
86
  - execute-checklist.md
87
+ - shard-doc.md
86
88
  - game-design-brainstorming.md
87
89
  - create-deep-research-prompt.md
88
90
  - advanced-elicitation.md
@@ -92,6 +94,8 @@ dependencies:
92
94
  - game-brief-tmpl.yaml
93
95
  checklists:
94
96
  - game-design-checklist.md
97
+ data:
98
+ - bmad-kb.md
95
99
  ```
96
100
  ==================== END: .bmad-2d-unity-game-dev/agents/game-designer.md ====================
97
101
 
@@ -295,6 +299,196 @@ The LLM will:
295
299
  - Offer to provide detailed analysis of any section, especially those with warnings or failures
296
300
  ==================== END: .bmad-2d-unity-game-dev/tasks/execute-checklist.md ====================
297
301
 
302
+ ==================== START: .bmad-2d-unity-game-dev/tasks/shard-doc.md ====================
303
+ # Document Sharding Task
304
+
305
+ ## Purpose
306
+
307
+ - Split a large document into multiple smaller documents based on level 2 sections
308
+ - Create a folder structure to organize the sharded documents
309
+ - Maintain all content integrity including code blocks, diagrams, and markdown formatting
310
+
311
+ ## Primary Method: Automatic with markdown-tree
312
+
313
+ [[LLM: First, check if markdownExploder is set to true in .bmad-2d-unity-game-dev/core-config.yaml. If it is, attempt to run the command: `md-tree explode {input file} {output path}`.
314
+
315
+ If the command succeeds, inform the user that the document has been sharded successfully and STOP - do not proceed further.
316
+
317
+ If the command fails (especially with an error indicating the command is not found or not available), inform the user: "The markdownExploder setting is enabled but the md-tree command is not available. Please either:
318
+
319
+ 1. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
320
+ 2. Or set markdownExploder to false in .bmad-2d-unity-game-dev/core-config.yaml
321
+
322
+ **IMPORTANT: STOP HERE - do not proceed with manual sharding until one of the above actions is taken.**"
323
+
324
+ If markdownExploder is set to false, inform the user: "The markdownExploder setting is currently false. For better performance and reliability, you should:
325
+
326
+ 1. Set markdownExploder to true in .bmad-2d-unity-game-dev/core-config.yaml
327
+ 2. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
328
+
329
+ I will now proceed with the manual sharding process."
330
+
331
+ Then proceed with the manual method below ONLY if markdownExploder is false.]]
332
+
333
+ ### Installation and Usage
334
+
335
+ 1. **Install globally**:
336
+
337
+ ```bash
338
+ npm install -g @kayvan/markdown-tree-parser
339
+ ```
340
+
341
+ 2. **Use the explode command**:
342
+
343
+ ```bash
344
+ # For PRD
345
+ md-tree explode docs/prd.md docs/prd
346
+
347
+ # For Architecture
348
+ md-tree explode docs/architecture.md docs/architecture
349
+
350
+ # For any document
351
+ md-tree explode [source-document] [destination-folder]
352
+ ```
353
+
354
+ 3. **What it does**:
355
+ - Automatically splits the document by level 2 sections
356
+ - Creates properly named files
357
+ - Adjusts heading levels appropriately
358
+ - Handles all edge cases with code blocks and special markdown
359
+
360
+ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manual process below.
361
+
362
+ ---
363
+
364
+ ## Manual Method (if @kayvan/markdown-tree-parser is not available or user indicated manual method)
365
+
366
+ ### Task Instructions
367
+
368
+ 1. Identify Document and Target Location
369
+
370
+ - Determine which document to shard (user-provided path)
371
+ - Create a new folder under `docs/` with the same name as the document (without extension)
372
+ - Example: `docs/prd.md` → create folder `docs/prd/`
373
+
374
+ 2. Parse and Extract Sections
375
+
376
+ CRITICAL AEGNT SHARDING RULES:
377
+
378
+ 1. Read the entire document content
379
+ 2. Identify all level 2 sections (## headings)
380
+ 3. For each level 2 section:
381
+ - Extract the section heading and ALL content until the next level 2 section
382
+ - Include all subsections, code blocks, diagrams, lists, tables, etc.
383
+ - Be extremely careful with:
384
+ - Fenced code blocks (```) - ensure you capture the full block including closing backticks and account for potential misleading level 2's that are actually part of a fenced section example
385
+ - Mermaid diagrams - preserve the complete diagram syntax
386
+ - Nested markdown elements
387
+ - Multi-line content that might contain ## inside code blocks
388
+
389
+ CRITICAL: Use proper parsing that understands markdown context. A ## inside a code block is NOT a section header.]]
390
+
391
+ ### 3. Create Individual Files
392
+
393
+ For each extracted section:
394
+
395
+ 1. **Generate filename**: Convert the section heading to lowercase-dash-case
396
+
397
+ - Remove special characters
398
+ - Replace spaces with dashes
399
+ - Example: "## Tech Stack" → `tech-stack.md`
400
+
401
+ 2. **Adjust heading levels**:
402
+
403
+ - The level 2 heading becomes level 1 (# instead of ##) in the sharded new document
404
+ - All subsection levels decrease by 1:
405
+
406
+ ```txt
407
+ - ### → ##
408
+ - #### → ###
409
+ - ##### → ####
410
+ - etc.
411
+ ```
412
+
413
+ 3. **Write content**: Save the adjusted content to the new file
414
+
415
+ ### 4. Create Index File
416
+
417
+ Create an `index.md` file in the sharded folder that:
418
+
419
+ 1. Contains the original level 1 heading and any content before the first level 2 section
420
+ 2. Lists all the sharded files with links:
421
+
422
+ ```markdown
423
+ # Original Document Title
424
+
425
+ [Original introduction content if any]
426
+
427
+ ## Sections
428
+
429
+ - [Section Name 1](./section-name-1.md)
430
+ - [Section Name 2](./section-name-2.md)
431
+ - [Section Name 3](./section-name-3.md)
432
+ ...
433
+ ```
434
+
435
+ ### 5. Preserve Special Content
436
+
437
+ 1. **Code blocks**: Must capture complete blocks including:
438
+
439
+ ```language
440
+ content
441
+ ```
442
+
443
+ 2. **Mermaid diagrams**: Preserve complete syntax:
444
+
445
+ ```mermaid
446
+ graph TD
447
+ ...
448
+ ```
449
+
450
+ 3. **Tables**: Maintain proper markdown table formatting
451
+
452
+ 4. **Lists**: Preserve indentation and nesting
453
+
454
+ 5. **Inline code**: Preserve backticks
455
+
456
+ 6. **Links and references**: Keep all markdown links intact
457
+
458
+ 7. **Template markup**: If documents contain {{placeholders}} ,preserve exactly
459
+
460
+ ### 6. Validation
461
+
462
+ After sharding:
463
+
464
+ 1. Verify all sections were extracted
465
+ 2. Check that no content was lost
466
+ 3. Ensure heading levels were properly adjusted
467
+ 4. Confirm all files were created successfully
468
+
469
+ ### 7. Report Results
470
+
471
+ Provide a summary:
472
+
473
+ ```text
474
+ Document sharded successfully:
475
+ - Source: [original document path]
476
+ - Destination: docs/[folder-name]/
477
+ - Files created: [count]
478
+ - Sections:
479
+ - section-name-1.md: "Section Title 1"
480
+ - section-name-2.md: "Section Title 2"
481
+ ...
482
+ ```
483
+
484
+ ## Important Notes
485
+
486
+ - Never modify the actual content, only adjust heading levels
487
+ - Preserve ALL formatting, including whitespace where significant
488
+ - Handle edge cases like sections with code blocks containing ## symbols
489
+ - Ensure the sharding is reversible (could reconstruct the original from shards)
490
+ ==================== END: .bmad-2d-unity-game-dev/tasks/shard-doc.md ====================
491
+
298
492
  ==================== START: .bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md ====================
299
493
  # Game Design Brainstorming Techniques Task
300
494
 
@@ -1014,88 +1208,130 @@ The questions and perspectives offered should always consider:
1014
1208
 
1015
1209
  ==================== START: .bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml ====================
1016
1210
  template:
1017
- id: game-design-doc-template-v2
1211
+ id: game-design-doc-template-v3
1018
1212
  name: Game Design Document (GDD)
1019
- version: 2.0
1213
+ version: 4.0
1020
1214
  output:
1021
1215
  format: markdown
1022
- filename: "docs/{{game_name}}-game-design-document.md"
1216
+ filename: docs/game-design-document.md
1023
1217
  title: "{{game_title}} Game Design Document (GDD)"
1024
1218
 
1025
1219
  workflow:
1026
1220
  mode: interactive
1221
+ elicitation: advanced-elicitation
1027
1222
 
1028
1223
  sections:
1029
- - id: initial-setup
1224
+ - id: goals-context
1225
+ title: Goals and Background Context
1030
1226
  instruction: |
1031
- This template creates a comprehensive Game Design Document that will serve as the foundation for all game development work. The GDD should be detailed enough that developers can create user stories and epics from it. Focus on gameplay systems, mechanics, and technical requirements that can be broken down into implementable features.
1032
-
1033
- If available, review any provided documents or ask if any are optionally available: Project Brief, Market Research, Competitive Analysis
1227
+ Ask if Project Brief document is available. If NO Project Brief exists, STRONGLY recommend creating one first using project-brief-tmpl (it provides essential foundation: problem statement, target users, success metrics, MVP scope, constraints). If user insists on GDD without brief, gather this information during Goals section. If Project Brief exists, review and use it to populate Goals (bullet list of desired game development outcomes) and Background Context (1-2 paragraphs on what game concept this will deliver and why) so we can determine what is and is not in scope for the GDD. Include Change Log table for version tracking.
1228
+ sections:
1229
+ - id: goals
1230
+ title: Goals
1231
+ type: bullet-list
1232
+ instruction: Bullet list of 1 line desired outcomes the GDD will deliver if successful - game development and player experience goals
1233
+ examples:
1234
+ - Create an engaging 2D platformer that teaches players basic programming concepts
1235
+ - Deliver a polished mobile game that runs smoothly on low-end Android devices
1236
+ - Build a foundation for future expansion packs and content updates
1237
+ - id: background
1238
+ title: Background Context
1239
+ type: paragraphs
1240
+ instruction: 1-2 short paragraphs summarizing the game concept background, target audience needs, market opportunity, and what problem this game solves
1241
+ - id: changelog
1242
+ title: Change Log
1243
+ type: table
1244
+ columns: [Date, Version, Description, Author]
1245
+ instruction: Track document versions and changes
1034
1246
 
1035
1247
  - id: executive-summary
1036
1248
  title: Executive Summary
1037
1249
  instruction: Create a compelling overview that captures the essence of the game. Present this section first and get user feedback before proceeding.
1250
+ elicit: true
1038
1251
  sections:
1039
1252
  - id: core-concept
1040
1253
  title: Core Concept
1041
1254
  instruction: 2-3 sentences that clearly describe what the game is and why players will love it
1255
+ examples:
1256
+ - A fast-paced 2D platformer where players manipulate gravity to solve puzzles and defeat enemies in a hand-drawn world.
1257
+ - An educational puzzle game that teaches coding concepts through visual programming blocks in a fantasy adventure setting.
1042
1258
  - id: target-audience
1043
1259
  title: Target Audience
1044
1260
  instruction: Define the primary and secondary audience with demographics and gaming preferences
1045
1261
  template: |
1046
1262
  **Primary:** {{age_range}}, {{player_type}}, {{platform_preference}}
1047
1263
  **Secondary:** {{secondary_audience}}
1264
+ examples:
1265
+ - "Primary: Ages 8-16, casual mobile gamers, prefer short play sessions"
1266
+ - "Secondary: Adult puzzle enthusiasts, educators looking for teaching tools"
1048
1267
  - id: platform-technical
1049
1268
  title: Platform & Technical Requirements
1050
- instruction: Based on the technical preferences or user input, define the target platforms
1269
+ instruction: Based on the technical preferences or user input, define the target platforms and Unity-specific requirements
1051
1270
  template: |
1052
1271
  **Primary Platform:** {{platform}}
1053
- **Engine:** Unity & C#
1054
- **Performance Target:** Stable FPS on {{minimum_device}}
1272
+ **Engine:** Unity {{unity_version}} & C#
1273
+ **Performance Target:** Stable {{fps_target}} FPS on {{minimum_device}}
1055
1274
  **Screen Support:** {{resolution_range}}
1275
+ **Build Targets:** {{build_targets}}
1276
+ examples:
1277
+ - "Primary Platform: Mobile (iOS/Android), Engine: Unity 2022.3 LTS & C#, Performance: 60 FPS on iPhone 8/Galaxy S8"
1056
1278
  - id: unique-selling-points
1057
1279
  title: Unique Selling Points
1058
1280
  instruction: List 3-5 key features that differentiate this game from competitors
1059
1281
  type: numbered-list
1060
- template: "{{usp}}"
1282
+ examples:
1283
+ - Innovative gravity manipulation mechanic that affects both player and environment
1284
+ - Seamless integration of educational content without compromising fun gameplay
1285
+ - Adaptive difficulty system that learns from player behavior
1061
1286
 
1062
1287
  - id: core-gameplay
1063
1288
  title: Core Gameplay
1064
- instruction: This section defines the fundamental game mechanics. After presenting each subsection, apply `tasks#advanced-elicitation` protocol to ensure completeness.
1289
+ instruction: This section defines the fundamental game mechanics. After presenting each subsection, apply advanced elicitation to ensure completeness and gather additional details.
1290
+ elicit: true
1065
1291
  sections:
1066
1292
  - id: game-pillars
1067
1293
  title: Game Pillars
1068
- instruction: Define 3-5 core pillars that guide all design decisions. These should be specific and actionable.
1294
+ instruction: Define 3-5 core pillars that guide all design decisions. These should be specific and actionable for Unity development.
1069
1295
  type: numbered-list
1070
1296
  template: |
1071
1297
  **{{pillar_name}}** - {{description}}
1298
+ examples:
1299
+ - Intuitive Controls - All interactions must be learnable within 30 seconds using touch or keyboard
1300
+ - Immediate Feedback - Every player action provides visual and audio response within 0.1 seconds
1301
+ - Progressive Challenge - Difficulty increases through mechanic complexity, not unfair timing
1072
1302
  - id: core-gameplay-loop
1073
1303
  title: Core Gameplay Loop
1074
- instruction: Define the 30-60 second loop that players will repeat. Be specific about timing and player actions.
1304
+ instruction: Define the 30-60 second loop that players will repeat. Be specific about timing and player actions for Unity implementation.
1075
1305
  template: |
1076
1306
  **Primary Loop ({{duration}} seconds):**
1077
1307
 
1078
- 1. {{action_1}} ({{time_1}}s)
1079
- 2. {{action_2}} ({{time_2}}s)
1080
- 3. {{action_3}} ({{time_3}}s)
1081
- 4. {{reward_feedback}} ({{time_4}}s)
1308
+ 1. {{action_1}} ({{time_1}}s) - {{unity_component}}
1309
+ 2. {{action_2}} ({{time_2}}s) - {{unity_component}}
1310
+ 3. {{action_3}} ({{time_3}}s) - {{unity_component}}
1311
+ 4. {{reward_feedback}} ({{time_4}}s) - {{unity_component}}
1312
+ examples:
1313
+ - Observe environment (2s) - Camera Controller, Identify puzzle elements (3s) - Highlight System
1082
1314
  - id: win-loss-conditions
1083
1315
  title: Win/Loss Conditions
1084
- instruction: Clearly define success and failure states
1316
+ instruction: Clearly define success and failure states with Unity-specific implementation notes
1085
1317
  template: |
1086
1318
  **Victory Conditions:**
1087
1319
 
1088
- - {{win_condition_1}}
1089
- - {{win_condition_2}}
1320
+ - {{win_condition_1}} - Unity Event: {{unity_event}}
1321
+ - {{win_condition_2}} - Unity Event: {{unity_event}}
1090
1322
 
1091
1323
  **Failure States:**
1092
1324
 
1093
- - {{loss_condition_1}}
1094
- - {{loss_condition_2}}
1325
+ - {{loss_condition_1}} - Trigger: {{unity_trigger}}
1326
+ - {{loss_condition_2}} - Trigger: {{unity_trigger}}
1327
+ examples:
1328
+ - "Victory: Player reaches exit portal - Unity Event: OnTriggerEnter2D with Portal tag"
1329
+ - "Failure: Health reaches zero - Trigger: Health component value <= 0"
1095
1330
 
1096
1331
  - id: game-mechanics
1097
1332
  title: Game Mechanics
1098
- instruction: Detail each major mechanic that will need to be implemented. Each mechanic should be specific enough for developers to create implementation stories.
1333
+ instruction: Detail each major mechanic that will need Unity implementation. Each mechanic should be specific enough for developers to create C# scripts and prefabs.
1334
+ elicit: true
1099
1335
  sections:
1100
1336
  - id: primary-mechanics
1101
1337
  title: Primary Mechanics
@@ -1106,29 +1342,41 @@ sections:
1106
1342
  template: |
1107
1343
  **Description:** {{detailed_description}}
1108
1344
 
1109
- **Player Input:** {{input_method}}
1345
+ **Player Input:** {{input_method}} - Unity Input System: {{input_action}}
1110
1346
 
1111
1347
  **System Response:** {{game_response}}
1112
1348
 
1113
- **Implementation Notes:**
1349
+ **Unity Implementation Notes:**
1114
1350
 
1115
- - {{tech_requirement_1}}
1116
- - {{tech_requirement_2}}
1117
- - {{performance_consideration}}
1351
+ - **Components Needed:** {{component_list}}
1352
+ - **Physics Requirements:** {{physics_2d_setup}}
1353
+ - **Animation States:** {{animator_states}}
1354
+ - **Performance Considerations:** {{optimization_notes}}
1118
1355
 
1119
1356
  **Dependencies:** {{other_mechanics_needed}}
1357
+
1358
+ **Script Architecture:**
1359
+
1360
+ - {{script_name}}.cs - {{responsibility}}
1361
+ - {{manager_script}}.cs - {{management_role}}
1362
+ examples:
1363
+ - "Components Needed: Rigidbody2D, BoxCollider2D, PlayerMovement script"
1364
+ - "Physics Requirements: 2D Physics material for ground friction, Gravity scale 3"
1120
1365
  - id: controls
1121
1366
  title: Controls
1122
- instruction: Define all input methods for different platforms
1367
+ instruction: Define all input methods for different platforms using Unity's Input System
1123
1368
  type: table
1124
1369
  template: |
1125
- | Action | Desktop | Mobile | Gamepad |
1126
- | ------ | ------- | ------ | ------- |
1127
- | {{action}} | {{key}} | {{gesture}} | {{button}} |
1370
+ | Action | Desktop | Mobile | Gamepad | Unity Input Action |
1371
+ | ------ | ------- | ------ | ------- | ------------------ |
1372
+ | {{action}} | {{key}} | {{gesture}} | {{button}} | {{input_action}} |
1373
+ examples:
1374
+ - Move Left, A/Left Arrow, Swipe Left, Left Stick, <Move>/x
1128
1375
 
1129
1376
  - id: progression-balance
1130
1377
  title: Progression & Balance
1131
- instruction: Define how players advance and how difficulty scales. This section should provide clear parameters for implementation.
1378
+ instruction: Define how players advance and how difficulty scales. This section should provide clear parameters for Unity implementation and scriptable objects.
1379
+ elicit: true
1132
1380
  sections:
1133
1381
  - id: player-progression
1134
1382
  title: Player Progression
@@ -1137,30 +1385,54 @@ sections:
1137
1385
 
1138
1386
  **Key Milestones:**
1139
1387
 
1140
- 1. **{{milestone_1}}** - {{unlock_description}}
1141
- 2. **{{milestone_2}}** - {{unlock_description}}
1142
- 3. **{{milestone_3}}** - {{unlock_description}}
1388
+ 1. **{{milestone_1}}** - {{unlock_description}} - Unity: {{scriptable_object_update}}
1389
+ 2. **{{milestone_2}}** - {{unlock_description}} - Unity: {{scriptable_object_update}}
1390
+ 3. **{{milestone_3}}** - {{unlock_description}} - Unity: {{scriptable_object_update}}
1391
+
1392
+ **Save Data Structure:**
1393
+
1394
+ ```csharp
1395
+ [System.Serializable]
1396
+ public class PlayerProgress
1397
+ {
1398
+ {{progress_fields}}
1399
+ }
1400
+ ```
1401
+ examples:
1402
+ - public int currentLevel, public bool[] unlockedAbilities, public float totalPlayTime
1143
1403
  - id: difficulty-curve
1144
1404
  title: Difficulty Curve
1145
- instruction: Provide specific parameters for balancing
1405
+ instruction: Provide specific parameters for balancing that can be implemented as Unity ScriptableObjects
1146
1406
  template: |
1147
1407
  **Tutorial Phase:** {{duration}} - {{difficulty_description}}
1408
+ - Unity Config: {{scriptable_object_values}}
1409
+
1148
1410
  **Early Game:** {{duration}} - {{difficulty_description}}
1411
+ - Unity Config: {{scriptable_object_values}}
1412
+
1149
1413
  **Mid Game:** {{duration}} - {{difficulty_description}}
1414
+ - Unity Config: {{scriptable_object_values}}
1415
+
1150
1416
  **Late Game:** {{duration}} - {{difficulty_description}}
1417
+ - Unity Config: {{scriptable_object_values}}
1418
+ examples:
1419
+ - "enemy speed: 2.0f, jump height: 4.5f, obstacle density: 0.3f"
1151
1420
  - id: economy-resources
1152
1421
  title: Economy & Resources
1153
1422
  condition: has_economy
1154
- instruction: Define any in-game currencies, resources, or collectibles
1423
+ instruction: Define any in-game currencies, resources, or collectibles with Unity implementation details
1155
1424
  type: table
1156
1425
  template: |
1157
- | Resource | Earn Rate | Spend Rate | Purpose | Cap |
1158
- | -------- | --------- | ---------- | ------- | --- |
1159
- | {{resource}} | {{rate}} | {{rate}} | {{use}} | {{max}} |
1426
+ | Resource | Earn Rate | Spend Rate | Purpose | Cap | Unity ScriptableObject |
1427
+ | -------- | --------- | ---------- | ------- | --- | --------------------- |
1428
+ | {{resource}} | {{rate}} | {{rate}} | {{use}} | {{max}} | {{so_name}} |
1429
+ examples:
1430
+ - Coins, 1-3 per enemy, 10-50 per upgrade, Buy abilities, 9999, CurrencyData
1160
1431
 
1161
1432
  - id: level-design-framework
1162
1433
  title: Level Design Framework
1163
- instruction: Provide guidelines for level creation that developers can use to create level implementation stories
1434
+ instruction: Provide guidelines for level creation that developers can use to create Unity scenes and prefabs. Focus on modular design and reusable components.
1435
+ elicit: true
1164
1436
  sections:
1165
1437
  - id: level-types
1166
1438
  title: Level Types
@@ -1170,202 +1442,486 @@ sections:
1170
1442
  title: "{{level_type_name}}"
1171
1443
  template: |
1172
1444
  **Purpose:** {{gameplay_purpose}}
1173
- **Duration:** {{target_time}}
1445
+ **Target Duration:** {{target_time}}
1174
1446
  **Key Elements:** {{required_mechanics}}
1175
- **Difficulty:** {{relative_difficulty}}
1447
+ **Difficulty Rating:** {{relative_difficulty}}
1176
1448
 
1177
- **Structure Template:**
1449
+ **Unity Scene Structure:**
1178
1450
 
1179
- - Introduction: {{intro_description}}
1180
- - Challenge: {{main_challenge}}
1181
- - Resolution: {{completion_requirement}}
1451
+ - **Environment:** {{tilemap_setup}}
1452
+ - **Gameplay Objects:** {{prefab_list}}
1453
+ - **Lighting:** {{lighting_setup}}
1454
+ - **Audio:** {{audio_sources}}
1455
+
1456
+ **Level Flow Template:**
1457
+
1458
+ - **Introduction:** {{intro_description}} - Area: {{unity_area_bounds}}
1459
+ - **Challenge:** {{main_challenge}} - Mechanics: {{active_components}}
1460
+ - **Resolution:** {{completion_requirement}} - Trigger: {{completion_trigger}}
1461
+
1462
+ **Reusable Prefabs:**
1463
+
1464
+ - {{prefab_name}} - {{prefab_purpose}}
1465
+ examples:
1466
+ - "Environment: TilemapRenderer with Platform tileset, Lighting: 2D Global Light + Point Lights"
1182
1467
  - id: level-progression
1183
1468
  title: Level Progression
1184
1469
  template: |
1185
1470
  **World Structure:** {{linear|hub|open}}
1186
1471
  **Total Levels:** {{number}}
1187
1472
  **Unlock Pattern:** {{progression_method}}
1473
+ **Scene Management:** {{unity_scene_loading}}
1474
+
1475
+ **Unity Scene Organization:**
1476
+
1477
+ - Scene Naming: {{naming_convention}}
1478
+ - Addressable Assets: {{addressable_groups}}
1479
+ - Loading Screens: {{loading_implementation}}
1480
+ examples:
1481
+ - "Scene Naming: World{X}_Level{Y}_Name, Addressable Groups: Levels_World1, World_Environments"
1188
1482
 
1189
1483
  - id: technical-specifications
1190
1484
  title: Technical Specifications
1191
- instruction: Define technical requirements that will guide architecture and implementation decisions. Review any existing technical preferences.
1485
+ instruction: Define Unity-specific technical requirements that will guide architecture and implementation decisions. Reference Unity documentation and best practices.
1486
+ elicit: true
1487
+ choices:
1488
+ render_pipeline: [Built-in, URP, HDRP]
1489
+ input_system: [Legacy, New Input System, Both]
1490
+ physics: [2D Only, 3D Only, Hybrid]
1192
1491
  sections:
1492
+ - id: unity-configuration
1493
+ title: Unity Project Configuration
1494
+ template: |
1495
+ **Unity Version:** {{unity_version}} (LTS recommended)
1496
+ **Render Pipeline:** {{Built-in|URP|HDRP}}
1497
+ **Input System:** {{Legacy|New Input System|Both}}
1498
+ **Physics:** {{2D Only|3D Only|Hybrid}}
1499
+ **Scripting Backend:** {{Mono|IL2CPP}}
1500
+ **API Compatibility:** {{.NET Standard 2.1|.NET Framework}}
1501
+
1502
+ **Required Packages:**
1503
+
1504
+ - {{package_name}} {{version}} - {{purpose}}
1505
+
1506
+ **Project Settings:**
1507
+
1508
+ - Color Space: {{Linear|Gamma}}
1509
+ - Quality Settings: {{quality_levels}}
1510
+ - Physics Settings: {{physics_config}}
1511
+ examples:
1512
+ - com.unity.addressables 1.20.5 - Asset loading and memory management
1513
+ - "Color Space: Linear, Quality: Mobile/Desktop presets, Gravity: -20"
1193
1514
  - id: performance-requirements
1194
1515
  title: Performance Requirements
1195
1516
  template: |
1196
- **Frame Rate:** Stable FPS (minimum 30 FPS on low-end devices)
1197
- **Memory Usage:** <{{memory_limit}}MB
1517
+ **Frame Rate:** {{fps_target}} FPS (minimum {{min_fps}} on low-end devices)
1518
+ **Memory Usage:** <{{memory_limit}}MB heap, <{{texture_memory}}MB textures
1198
1519
  **Load Times:** <{{load_time}}s initial, <{{level_load}}s between levels
1199
- **Battery Usage:** Optimized for mobile devices
1520
+ **Battery Usage:** Optimized for mobile devices - {{battery_target}} hours gameplay
1521
+
1522
+ **Unity Profiler Targets:**
1523
+
1524
+ - CPU Frame Time: <{{cpu_time}}ms
1525
+ - GPU Frame Time: <{{gpu_time}}ms
1526
+ - GC Allocs: <{{gc_limit}}KB per frame
1527
+ - Draw Calls: <{{draw_calls}} per frame
1528
+ examples:
1529
+ - "60 FPS (minimum 30), CPU: <16.67ms, GPU: <16.67ms, GC: <4KB, Draws: <50"
1200
1530
  - id: platform-specific
1201
- title: Platform Specific
1531
+ title: Platform Specific Requirements
1202
1532
  template: |
1203
1533
  **Desktop:**
1204
1534
 
1205
1535
  - Resolution: {{min_resolution}} - {{max_resolution}}
1206
- - Input: Keyboard, Mouse, Gamepad
1207
- - Browser: Chrome 80+, Firefox 75+, Safari 13+
1536
+ - Input: Keyboard, Mouse, Gamepad ({{gamepad_support}})
1537
+ - Build Target: {{desktop_targets}}
1208
1538
 
1209
1539
  **Mobile:**
1210
1540
 
1211
1541
  - Resolution: {{mobile_min}} - {{mobile_max}}
1212
- - Input: Touch, Tilt (optional)
1213
- - OS: iOS 13+, Android 8+
1542
+ - Input: Touch, Accelerometer ({{sensor_support}})
1543
+ - OS: iOS {{ios_min}}+, Android {{android_min}}+ (API {{api_level}})
1544
+ - Device Requirements: {{device_specs}}
1545
+
1546
+ **Web (if applicable):**
1547
+
1548
+ - WebGL Version: {{webgl_version}}
1549
+ - Browser Support: {{browser_list}}
1550
+ - Compression: {{compression_format}}
1551
+ examples:
1552
+ - "Resolution: 1280x720 - 4K, Gamepad: Xbox/PlayStation controllers via Input System"
1214
1553
  - id: asset-requirements
1215
1554
  title: Asset Requirements
1216
- instruction: Define asset specifications for the art and audio teams
1555
+ instruction: Define asset specifications for Unity pipeline optimization
1217
1556
  template: |
1218
- **Visual Assets:**
1557
+ **2D Art Assets:**
1219
1558
 
1220
- - Art Style: {{style_description}}
1221
- - Color Palette: {{color_specification}}
1222
- - Animation: {{animation_requirements}}
1223
- - UI Resolution: {{ui_specs}}
1559
+ - Sprites: {{sprite_resolution}} at {{ppu}} PPU
1560
+ - Texture Format: {{texture_compression}}
1561
+ - Atlas Strategy: {{sprite_atlas_setup}}
1562
+ - Animation: {{animation_type}} at {{framerate}} FPS
1224
1563
 
1225
1564
  **Audio Assets:**
1226
1565
 
1227
- - Music Style: {{music_genre}}
1228
- - Sound Effects: {{sfx_requirements}}
1229
- - Voice Acting: {{voice_needs}}
1566
+ - Music: {{audio_format}} at {{sample_rate}} Hz
1567
+ - SFX: {{sfx_format}} at {{sfx_sample_rate}} Hz
1568
+ - Compression: {{audio_compression}}
1569
+ - 3D Audio: {{spatial_audio}}
1570
+
1571
+ **UI Assets:**
1572
+
1573
+ - Canvas Resolution: {{ui_resolution}}
1574
+ - UI Scale Mode: {{scale_mode}}
1575
+ - Font: {{font_requirements}}
1576
+ - Icon Sizes: {{icon_specifications}}
1577
+ examples:
1578
+ - "Sprites: 32x32 to 256x256 at 16 PPU, Format: RGBA32 for quality/RGBA16 for performance"
1230
1579
 
1231
1580
  - id: technical-architecture-requirements
1232
1581
  title: Technical Architecture Requirements
1233
- instruction: Define high-level technical requirements that the game architecture must support
1582
+ instruction: Define high-level Unity architecture patterns and systems that the game must support. Focus on scalability and maintainability.
1583
+ elicit: true
1584
+ choices:
1585
+ architecture_pattern: [MVC, MVVM, ECS, Component-Based]
1586
+ save_system: [PlayerPrefs, JSON, Binary, Cloud]
1587
+ audio_system: [Unity Audio, FMOD, Wwise]
1234
1588
  sections:
1235
- - id: engine-configuration
1236
- title: Engine Configuration
1237
- template: |
1238
- **Unity Setup:**
1239
-
1240
- - C#: Latest stable version
1241
- - Physics: 2D Physics
1242
- - Renderer: 2D Renderer (URP)
1243
- - Input System: New Input System
1244
1589
  - id: code-architecture
1245
- title: Code Architecture
1590
+ title: Code Architecture Pattern
1591
+ template: |
1592
+ **Architecture Pattern:** {{MVC|MVVM|ECS|Component-Based|Custom}}
1593
+
1594
+ **Core Systems Required:**
1595
+
1596
+ - **Scene Management:** {{scene_manager_approach}}
1597
+ - **State Management:** {{state_pattern_implementation}}
1598
+ - **Event System:** {{event_system_choice}}
1599
+ - **Object Pooling:** {{pooling_strategy}}
1600
+ - **Save/Load System:** {{save_system_approach}}
1601
+
1602
+ **Folder Structure:**
1603
+
1604
+ ```
1605
+ Assets/
1606
+ ├── _Project/
1607
+ │ ├── Scripts/
1608
+ │ │ ├── {{folder_structure}}
1609
+ │ ├── Prefabs/
1610
+ │ ├── Scenes/
1611
+ │ └── {{additional_folders}}
1612
+ ```
1613
+
1614
+ **Naming Conventions:**
1615
+
1616
+ - Scripts: {{script_naming}}
1617
+ - Prefabs: {{prefab_naming}}
1618
+ - Scenes: {{scene_naming}}
1619
+ examples:
1620
+ - "Architecture: Component-Based with ScriptableObject data containers"
1621
+ - "Scripts: PascalCase (PlayerController), Prefabs: Player_Prefab, Scenes: Level_01_Forest"
1622
+ - id: unity-systems-integration
1623
+ title: Unity Systems Integration
1246
1624
  template: |
1247
- **Required Systems:**
1625
+ **Required Unity Systems:**
1626
+
1627
+ - **Input System:** {{input_implementation}}
1628
+ - **Animation System:** {{animation_approach}}
1629
+ - **Physics Integration:** {{physics_usage}}
1630
+ - **Rendering Features:** {{rendering_requirements}}
1631
+ - **Asset Streaming:** {{asset_loading_strategy}}
1632
+
1633
+ **Third-Party Integrations:**
1634
+
1635
+ - {{integration_name}}: {{integration_purpose}}
1636
+
1637
+ **Performance Systems:**
1248
1638
 
1249
- - Scene Management
1250
- - State Management
1251
- - Asset Loading
1252
- - Save/Load System
1253
- - Input Management
1254
- - Audio System
1255
- - Performance Monitoring
1639
+ - **Profiling Integration:** {{profiling_setup}}
1640
+ - **Memory Management:** {{memory_strategy}}
1641
+ - **Build Pipeline:** {{build_automation}}
1642
+ examples:
1643
+ - "Input System: Action Maps for Menu/Gameplay contexts with device switching"
1644
+ - "DOTween: Smooth UI transitions and gameplay animations"
1256
1645
  - id: data-management
1257
1646
  title: Data Management
1258
1647
  template: |
1259
- **Save Data:**
1648
+ **Save Data Architecture:**
1260
1649
 
1261
- - Progress tracking
1262
- - Settings persistence
1263
- - Statistics collection
1264
- - {{additional_data}}
1650
+ - **Format:** {{PlayerPrefs|JSON|Binary|Cloud}}
1651
+ - **Structure:** {{save_data_organization}}
1652
+ - **Encryption:** {{security_approach}}
1653
+ - **Cloud Sync:** {{cloud_integration}}
1654
+
1655
+ **Configuration Data:**
1656
+
1657
+ - **ScriptableObjects:** {{scriptable_object_usage}}
1658
+ - **Settings Management:** {{settings_system}}
1659
+ - **Localization:** {{localization_approach}}
1660
+
1661
+ **Runtime Data:**
1662
+
1663
+ - **Caching Strategy:** {{cache_implementation}}
1664
+ - **Memory Pools:** {{pooling_objects}}
1665
+ - **Asset References:** {{asset_reference_system}}
1666
+ examples:
1667
+ - "Save Data: JSON format with AES encryption, stored in persistent data path"
1668
+ - "ScriptableObjects: Game settings, level configurations, character data"
1265
1669
 
1266
1670
  - id: development-phases
1267
- title: Development Phases
1268
- instruction: Break down the development into phases that can be converted to epics
1671
+ title: Development Phases & Epic Planning
1672
+ instruction: Break down the Unity development into phases that can be converted to agile epics. Each phase should deliver deployable functionality following Unity best practices.
1673
+ elicit: true
1269
1674
  sections:
1270
- - id: phase-1-core-systems
1271
- title: "Phase 1: Core Systems ({{duration}})"
1675
+ - id: phases-overview
1676
+ title: Phases Overview
1677
+ instruction: Present a high-level list of all phases for user approval. Each phase's design should deliver significant Unity functionality.
1678
+ type: numbered-list
1679
+ examples:
1680
+ - "Phase 1: Unity Foundation & Core Systems: Project setup, input handling, basic scene management"
1681
+ - "Phase 2: Core Game Mechanics: Player controller, physics systems, basic gameplay loop"
1682
+ - "Phase 3: Level Systems & Content Pipeline: Scene loading, prefab systems, level progression"
1683
+ - "Phase 4: Polish & Platform Optimization: Performance tuning, platform-specific features, deployment"
1684
+ - id: phase-1-foundation
1685
+ title: "Phase 1: Unity Foundation & Core Systems ({{duration}})"
1272
1686
  sections:
1273
- - id: foundation-epic
1274
- title: "Epic: Foundation"
1687
+ - id: foundation-design
1688
+ title: "Design: Unity Project Foundation"
1275
1689
  type: bullet-list
1276
1690
  template: |
1277
- - Engine setup and configuration
1278
- - Basic scene management
1279
- - Core input handling
1280
- - Asset loading pipeline
1281
- - id: core-mechanics-epic
1282
- title: "Epic: Core Mechanics"
1691
+ - Unity project setup with proper folder structure and naming conventions
1692
+ - Core architecture implementation ({{architecture_pattern}})
1693
+ - Input System configuration with action maps for all platforms
1694
+ - Basic scene management and state handling
1695
+ - Development tools setup (debugging, profiling integration)
1696
+ - Initial build pipeline and platform configuration
1697
+ examples:
1698
+ - "Input System: Configure PlayerInput component with Action Maps for movement and UI"
1699
+ - id: core-systems-design
1700
+ title: "Design: Essential Game Systems"
1283
1701
  type: bullet-list
1284
1702
  template: |
1285
- - {{primary_mechanic}} implementation
1286
- - Basic physics and collision
1287
- - Player controller
1288
- - id: phase-2-gameplay-features
1289
- title: "Phase 2: Gameplay Features ({{duration}})"
1703
+ - Save/Load system implementation with {{save_format}} format
1704
+ - Audio system setup with {{audio_system}} integration
1705
+ - Event system for decoupled component communication
1706
+ - Object pooling system for performance optimization
1707
+ - Basic UI framework and canvas configuration
1708
+ - Settings and configuration management with ScriptableObjects
1709
+ - id: phase-2-gameplay
1710
+ title: "Phase 2: Core Gameplay Implementation ({{duration}})"
1290
1711
  sections:
1291
- - id: game-systems-epic
1292
- title: "Epic: Game Systems"
1712
+ - id: gameplay-mechanics-design
1713
+ title: "Design: Primary Game Mechanics"
1293
1714
  type: bullet-list
1294
1715
  template: |
1295
- - {{mechanic_2}} implementation
1296
- - {{mechanic_3}} implementation
1297
- - Game state management
1298
- - id: content-creation-epic
1299
- title: "Epic: Content Creation"
1716
+ - Player controller with {{movement_type}} movement system
1717
+ - {{primary_mechanic}} implementation with Unity physics
1718
+ - {{secondary_mechanic}} system with visual feedback
1719
+ - Game state management (playing, paused, game over)
1720
+ - Basic collision detection and response systems
1721
+ - Animation system integration with Animator controllers
1722
+ - id: level-systems-design
1723
+ title: "Design: Level & Content Systems"
1300
1724
  type: bullet-list
1301
1725
  template: |
1302
- - Level loading system
1303
- - First playable levels
1304
- - Basic UI implementation
1305
- - id: phase-3-polish-optimization
1726
+ - Scene loading and transition system
1727
+ - Level progression and unlock system
1728
+ - Prefab-based level construction tools
1729
+ - {{level_generation}} level creation workflow
1730
+ - Collectibles and pickup systems
1731
+ - Victory/defeat condition implementation
1732
+ - id: phase-3-polish
1306
1733
  title: "Phase 3: Polish & Optimization ({{duration}})"
1307
1734
  sections:
1308
- - id: performance-epic
1309
- title: "Epic: Performance"
1735
+ - id: performance-design
1736
+ title: "Design: Performance & Platform Optimization"
1310
1737
  type: bullet-list
1311
1738
  template: |
1312
- - Optimization and profiling
1313
- - Mobile platform testing
1314
- - Memory management
1315
- - id: user-experience-epic
1316
- title: "Epic: User Experience"
1739
+ - Unity Profiler analysis and optimization passes
1740
+ - Memory management and garbage collection optimization
1741
+ - Asset optimization (texture compression, audio compression)
1742
+ - Platform-specific performance tuning
1743
+ - Build size optimization and asset bundling
1744
+ - Quality settings configuration for different device tiers
1745
+ - id: user-experience-design
1746
+ title: "Design: User Experience & Polish"
1317
1747
  type: bullet-list
1318
1748
  template: |
1319
- - Audio implementation
1320
- - Visual effects and polish
1321
- - Final UI/UX refinement
1749
+ - Complete UI/UX implementation with responsive design
1750
+ - Audio implementation with dynamic mixing
1751
+ - Visual effects and particle systems
1752
+ - Accessibility features implementation
1753
+ - Tutorial and onboarding flow
1754
+ - Final testing and bug fixing across all platforms
1755
+
1756
+ - id: epic-list
1757
+ title: Epic List
1758
+ instruction: |
1759
+ Present a high-level list of all epics for user approval. Each epic should have a title and a short (1 sentence) goal statement. This allows the user to review the overall structure before diving into details.
1760
+
1761
+ CRITICAL: Epics MUST be logically sequential following agile best practices:
1762
+
1763
+ - Each epic should be focused on a single phase and it's design from the development-phases section and deliver a significant, end-to-end, fully deployable increment of testable functionality
1764
+ - Epic 1 must establish Phase 1: Unity Foundation & Core Systems (Project setup, input handling, basic scene management) unless we are adding new functionality to an existing app, while also delivering an initial piece of functionality, remember this when we produce the stories for the first epic!
1765
+ - Each subsequent epic builds upon previous epics' functionality delivering major blocks of functionality that provide tangible value to users or business when deployed
1766
+ - Not every project needs multiple epics, an epic needs to deliver value. For example, an API, component, or scriptableobject completed can deliver value even if a scene, or gameobject is not complete and planned for a separate epic.
1767
+ - Err on the side of less epics, but let the user know your rationale and offer options for splitting them if it seems some are too large or focused on disparate things.
1768
+ - Cross Cutting Concerns should flow through epics and stories and not be final stories. For example, adding a logging framework as a last story of an epic, or at the end of a project as a final epic or story would be terrible as we would not have logging from the beginning.
1769
+ elicit: true
1770
+ examples:
1771
+ - "Epic 1: Unity Foundation & Core Systems: Project setup, input handling, basic scene management"
1772
+ - "Epic 2: Core Game Mechanics: Player controller, physics systems, basic gameplay loop"
1773
+ - "Epic 3: Level Systems & Content Pipeline: Scene loading, prefab systems, level progression"
1774
+ - "Epic 4: Polish & Platform Optimization: Performance tuning, platform-specific features, deployment"
1775
+
1776
+ - id: epic-details
1777
+ title: Epic {{epic_number}} {{epic_title}}
1778
+ repeatable: true
1779
+ instruction: |
1780
+ After the epic list is approved, present each epic with all its stories and acceptance criteria as a complete review unit.
1781
+
1782
+ For each epic provide expanded goal (2-3 sentences describing the objective and value all the stories will achieve).
1783
+
1784
+ CRITICAL STORY SEQUENCING REQUIREMENTS:
1785
+
1786
+ - Stories within each epic MUST be logically sequential
1787
+ - Each story should be a "vertical slice" delivering complete functionality aside from early enabler stories for project foundation
1788
+ - No story should depend on work from a later story or epic
1789
+ - Identify and note any direct prerequisite stories
1790
+ - Focus on "what" and "why" not "how" (leave technical implementation to Architect) yet be precise enough to support a logical sequential order of operations from story to story.
1791
+ - Ensure each story delivers clear user or business value, try to avoid enablers and build them into stories that deliver value.
1792
+ - Size stories for AI agent execution: Each story must be completable by a single AI agent in one focused session without context overflow
1793
+ - Think "junior developer working for 2-4 hours" - stories must be small, focused, and self-contained
1794
+ - If a story seems complex, break it down further as long as it can deliver a vertical slice
1795
+ elicit: true
1796
+ template: "{{epic_goal}}"
1797
+ sections:
1798
+ - id: story
1799
+ title: Story {{epic_number}}.{{story_number}} {{story_title}}
1800
+ repeatable: true
1801
+ 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 and reference the gamearchitecture section for additional implementation and integration specifics.
1802
+ template: "{{clear_description_of_what_needs_to_be_implemented}}"
1803
+ sections:
1804
+ - id: acceptance-criteria
1805
+ title: Acceptance Criteria
1806
+ 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.
1807
+ sections:
1808
+ - id: functional-requirements
1809
+ title: Functional Requirements
1810
+ type: checklist
1811
+ items:
1812
+ - "{{specific_functional_requirement}}"
1813
+ - id: technical-requirements
1814
+ title: Technical Requirements
1815
+ type: checklist
1816
+ items:
1817
+ - Code follows C# best practices
1818
+ - Maintains stable frame rate on target devices
1819
+ - No memory leaks or performance degradation
1820
+ - "{{specific_technical_requirement}}"
1821
+ - id: game-design-requirements
1822
+ title: Game Design Requirements
1823
+ type: checklist
1824
+ items:
1825
+ - "{{gameplay_requirement_from_gdd}}"
1826
+ - "{{balance_requirement_if_applicable}}"
1827
+ - "{{player_experience_requirement}}"
1322
1828
 
1323
1829
  - id: success-metrics
1324
- title: Success Metrics
1325
- instruction: Define measurable goals for the game
1830
+ title: Success Metrics & Quality Assurance
1831
+ instruction: Define measurable goals for the Unity game development project with specific targets that can be validated through Unity Analytics and profiling tools.
1832
+ elicit: true
1326
1833
  sections:
1327
1834
  - id: technical-metrics
1328
- title: Technical Metrics
1835
+ title: Technical Performance Metrics
1329
1836
  type: bullet-list
1330
1837
  template: |
1331
- - Frame rate: {{fps_target}}
1332
- - Load time: {{load_target}}
1333
- - Crash rate: <{{crash_threshold}}%
1334
- - Memory usage: <{{memory_target}}MB
1838
+ - **Frame Rate:** Consistent {{fps_target}} FPS with <5% drops below {{min_fps}}
1839
+ - **Load Times:** Initial load <{{initial_load}}s, level transitions <{{level_load}}s
1840
+ - **Memory Usage:** Heap memory <{{heap_limit}}MB, texture memory <{{texture_limit}}MB
1841
+ - **Crash Rate:** <{{crash_threshold}}% across all supported platforms
1842
+ - **Build Size:** Final build <{{size_limit}}MB for mobile, <{{desktop_limit}}MB for desktop
1843
+ - **Battery Life:** Mobile gameplay sessions >{{battery_target}} hours on average device
1844
+ examples:
1845
+ - "Frame Rate: Consistent 60 FPS with <5% drops below 45 FPS on target hardware"
1846
+ - "Crash Rate: <0.5% across iOS/Android, <0.1% on desktop platforms"
1335
1847
  - id: gameplay-metrics
1336
- title: Gameplay Metrics
1848
+ title: Gameplay & User Engagement Metrics
1337
1849
  type: bullet-list
1338
1850
  template: |
1339
- - Tutorial completion: {{completion_rate}}%
1340
- - Average session: {{session_length}} minutes
1341
- - Level completion: {{level_completion}}%
1342
- - Player retention: D1 {{d1}}%, D7 {{d7}}%
1343
-
1344
- - id: appendices
1345
- title: Appendices
1346
- sections:
1347
- - id: change-log
1348
- title: Change Log
1349
- instruction: Track document versions and changes
1851
+ - **Tutorial Completion:** {{tutorial_rate}}% of players complete basic tutorial
1852
+ - **Level Progression:** {{progression_rate}}% reach level {{target_level}} within first session
1853
+ - **Session Duration:** Average session length {{session_target}} minutes
1854
+ - **Player Retention:** Day 1: {{d1_retention}}%, Day 7: {{d7_retention}}%, Day 30: {{d30_retention}}%
1855
+ - **Gameplay Completion:** {{completion_rate}}% complete main game content
1856
+ - **Control Responsiveness:** Input lag <{{input_lag}}ms on all platforms
1857
+ examples:
1858
+ - "Tutorial Completion: 85% of players complete movement and basic mechanics tutorial"
1859
+ - "Session Duration: Average 15-20 minutes per session for mobile, 30-45 minutes for desktop"
1860
+ - id: platform-specific-metrics
1861
+ title: Platform-Specific Quality Metrics
1350
1862
  type: table
1351
1863
  template: |
1352
- | Date | Version | Description | Author |
1353
- | :--- | :------ | :---------- | :----- |
1354
- - id: references
1355
- title: References
1356
- instruction: List any competitive analysis, inspiration, or research sources
1864
+ | Platform | Frame Rate | Load Time | Memory | Build Size | Battery |
1865
+ | -------- | ---------- | --------- | ------ | ---------- | ------- |
1866
+ | {{platform}} | {{fps}} | {{load}} | {{memory}} | {{size}} | {{battery}} |
1867
+ examples:
1868
+ - iOS, 60 FPS, <3s, <150MB, <80MB, 3+ hours
1869
+ - Android, 60 FPS, <5s, <200MB, <100MB, 2.5+ hours
1870
+
1871
+ - id: next-steps-integration
1872
+ title: Next Steps & BMad Integration
1873
+ instruction: Define how this GDD integrates with BMad's agent workflow and what follow-up documents or processes are needed.
1874
+ sections:
1875
+ - id: architecture-handoff
1876
+ title: Unity Architecture Requirements
1877
+ instruction: Summary of key architectural decisions that need to be implemented in Unity project setup
1357
1878
  type: bullet-list
1358
- template: "{{reference}}"
1879
+ template: |
1880
+ - Unity {{unity_version}} project with {{render_pipeline}} pipeline
1881
+ - {{architecture_pattern}} code architecture with {{folder_structure}}
1882
+ - Required packages: {{essential_packages}}
1883
+ - Performance targets: {{key_performance_metrics}}
1884
+ - Platform builds: {{deployment_targets}}
1885
+ - id: story-creation-guidance
1886
+ title: Story Creation Guidance for SM Agent
1887
+ instruction: Provide guidance for the Story Manager (SM) agent on how to break down this GDD into implementable user stories
1888
+ template: |
1889
+ **Epic Prioritization:** {{epic_order_rationale}}
1890
+
1891
+ **Story Sizing Guidelines:**
1892
+
1893
+ - Foundation stories: {{foundation_story_scope}}
1894
+ - Feature stories: {{feature_story_scope}}
1895
+ - Polish stories: {{polish_story_scope}}
1896
+
1897
+ **Unity-Specific Story Considerations:**
1898
+
1899
+ - Each story should result in testable Unity scenes or prefabs
1900
+ - Include specific Unity components and systems in acceptance criteria
1901
+ - Consider cross-platform testing requirements
1902
+ - Account for Unity build and deployment steps
1903
+ examples:
1904
+ - "Foundation stories: Individual Unity systems (Input, Audio, Scene Management) - 1-2 days each"
1905
+ - "Feature stories: Complete gameplay mechanics with UI and feedback - 2-4 days each"
1906
+ - id: recommended-agents
1907
+ title: Recommended BMad Agent Sequence
1908
+ type: numbered-list
1909
+ template: |
1910
+ 1. **{{agent_name}}**: {{agent_responsibility}}
1911
+ examples:
1912
+ - "Unity Architect: Create detailed technical architecture document with specific Unity implementation patterns"
1913
+ - "Unity Developer: Implement core systems and gameplay mechanics according to architecture"
1914
+ - "QA Tester: Validate performance metrics and cross-platform functionality"
1359
1915
  ==================== END: .bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml ====================
1360
1916
 
1361
1917
  ==================== START: .bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml ====================
1362
1918
  template:
1363
1919
  id: level-design-doc-template-v2
1364
1920
  name: Level Design Document
1365
- version: 2.0
1921
+ version: 2.1
1366
1922
  output:
1367
1923
  format: markdown
1368
- filename: "docs/{{game_name}}-level-design-document.md"
1924
+ filename: docs/level-design-document.md
1369
1925
  title: "{{game_title}} Level Design Document"
1370
1926
 
1371
1927
  workflow:
@@ -1732,19 +2288,19 @@ sections:
1732
2288
  title: Playtesting Checklist
1733
2289
  type: checklist
1734
2290
  items:
1735
- - "Level completes within target time range"
1736
- - "All mechanics function correctly"
1737
- - "Difficulty feels appropriate for level category"
1738
- - "Player guidance is clear and effective"
1739
- - "No exploits or sequence breaks (unless intended)"
2291
+ - Level completes within target time range
2292
+ - All mechanics function correctly
2293
+ - Difficulty feels appropriate for level category
2294
+ - Player guidance is clear and effective
2295
+ - No exploits or sequence breaks (unless intended)
1740
2296
  - id: player-experience-testing
1741
2297
  title: Player Experience Testing
1742
2298
  type: checklist
1743
2299
  items:
1744
- - "Tutorial levels teach effectively"
1745
- - "Challenge feels fair and rewarding"
1746
- - "Flow and pacing maintain engagement"
1747
- - "Audio and visual feedback support gameplay"
2300
+ - Tutorial levels teach effectively
2301
+ - Challenge feels fair and rewarding
2302
+ - Flow and pacing maintain engagement
2303
+ - Audio and visual feedback support gameplay
1748
2304
  - id: balance-validation
1749
2305
  title: Balance Validation
1750
2306
  template: |
@@ -1847,12 +2403,12 @@ sections:
1847
2403
 
1848
2404
  ==================== START: .bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml ====================
1849
2405
  template:
1850
- id: game-brief-template-v2
2406
+ id: game-brief-template-v3
1851
2407
  name: Game Brief
1852
- version: 2.0
2408
+ version: 3.0
1853
2409
  output:
1854
2410
  format: markdown
1855
- filename: "docs/{{game_name}}-game-brief.md"
2411
+ filename: docs/game-brief.md
1856
2412
  title: "{{game_title}} Game Brief"
1857
2413
 
1858
2414
  workflow:
@@ -2383,7 +2939,7 @@ sections:
2383
2939
 
2384
2940
  - [ ] **Story Creation Ready** - Document provides sufficient detail for story creation
2385
2941
  - [ ] **Architecture Alignment** - Game design aligns with technical capabilities
2386
- - ] **Asset Production** - Asset requirements enable art and audio production
2942
+ - [ ] **Asset Production** - Asset requirements enable art and audio production
2387
2943
  - [ ] **Development Workflow** - Clear path from design to implementation
2388
2944
  - [ ] **Quality Assurance** - Testing and validation processes established
2389
2945
 
@@ -2407,3 +2963,782 @@ _List any critical items that need attention before moving to implementation pha
2407
2963
  **Next Steps:**
2408
2964
  _Outline immediate next actions for the team based on this assessment._
2409
2965
  ==================== END: .bmad-2d-unity-game-dev/checklists/game-design-checklist.md ====================
2966
+
2967
+ ==================== START: .bmad-2d-unity-game-dev/data/bmad-kb.md ====================
2968
+ # BMad Knowledge Base - 2D Unity Game Development
2969
+
2970
+ ## Overview
2971
+
2972
+ This is the game development expansion of BMad-Method (Breakthrough Method of Agile AI-driven Development), specializing in creating 2D games using Unity and C#. The v4 system introduces a modular architecture with improved dependency management, bundle optimization, and support for both web and IDE environments, specifically optimized for game development workflows.
2973
+
2974
+ ### Key Features for Game Development
2975
+
2976
+ - **Game-Specialized Agent System**: AI agents for each game development role (Designer, Developer, Scrum Master)
2977
+ - **Unity-Optimized Build System**: Automated dependency resolution for game assets and scripts
2978
+ - **Dual Environment Support**: Optimized for both web UIs and game development IDEs
2979
+ - **Game Development Resources**: Specialized templates, tasks, and checklists for 2D Unity games
2980
+ - **Performance-First Approach**: Built-in optimization patterns for cross-platform game deployment
2981
+
2982
+ ### Game Development Focus
2983
+
2984
+ - **Target Engine**: Unity 2022 LTS or newer with C# 10+
2985
+ - **Platform Strategy**: Cross-platform (PC, Console, Mobile) with a focus on 2D
2986
+ - **Development Approach**: Agile story-driven development with game-specific workflows
2987
+ - **Performance Target**: Stable frame rate on target devices
2988
+ - **Architecture**: Component-based architecture using Unity's best practices
2989
+
2990
+ ### When to Use BMad for Game Development
2991
+
2992
+ - **New Game Projects (Greenfield)**: Complete end-to-end game development from concept to deployment
2993
+ - **Existing Game Projects (Brownfield)**: Feature additions, level expansions, and gameplay enhancements
2994
+ - **Game Team Collaboration**: Multiple specialized roles working together on game features
2995
+ - **Game Quality Assurance**: Structured testing, performance validation, and gameplay balance
2996
+ - **Game Documentation**: Professional Game Design Documents, technical architecture, user stories
2997
+
2998
+ ## How BMad Works for Game Development
2999
+
3000
+ ### The Core Method
3001
+
3002
+ BMad transforms you into a "Player Experience CEO" - directing a team of specialized game development AI agents through structured workflows. Here's how:
3003
+
3004
+ 1. **You Direct, AI Executes**: You provide game vision and creative decisions; agents handle implementation details
3005
+ 2. **Specialized Game Agents**: Each agent masters one game development role (Designer, Developer, Scrum Master)
3006
+ 3. **Game-Focused Workflows**: Proven patterns guide you from game concept to deployed 2D Unity game
3007
+ 4. **Clean Handoffs**: Fresh context windows ensure agents stay focused and effective for game development
3008
+
3009
+ ### The Two-Phase Game Development Approach
3010
+
3011
+ #### Phase 1: Game Design & Planning (Web UI - Cost Effective)
3012
+
3013
+ - Use large context windows for comprehensive game design
3014
+ - Generate complete Game Design Documents and technical architecture
3015
+ - Leverage multiple agents for creative brainstorming and mechanics refinement
3016
+ - Create once, use throughout game development
3017
+
3018
+ #### Phase 2: Game Development (IDE - Implementation)
3019
+
3020
+ - Shard game design documents into manageable pieces
3021
+ - Execute focused SM → Dev cycles for game features
3022
+ - One game story at a time, sequential progress
3023
+ - Real-time Unity operations, C# coding, and game testing
3024
+
3025
+ ### The Game Development Loop
3026
+
3027
+ ```text
3028
+ 1. Game SM Agent (New Chat) → Creates next game story from sharded docs
3029
+ 2. You → Review and approve game story
3030
+ 3. Game Dev Agent (New Chat) → Implements approved game feature in Unity
3031
+ 4. QA Agent (New Chat) → Reviews code and tests gameplay
3032
+ 5. You → Verify game feature completion
3033
+ 6. Repeat until game epic complete
3034
+ ```
3035
+
3036
+ ### Why This Works for Games
3037
+
3038
+ - **Context Optimization**: Clean chats = better AI performance for complex game logic
3039
+ - **Role Clarity**: Agents don't context-switch = higher quality game features
3040
+ - **Incremental Progress**: Small game stories = manageable complexity
3041
+ - **Player-Focused Oversight**: You validate each game feature = quality control
3042
+ - **Design-Driven**: Game specs guide everything = consistent player experience
3043
+
3044
+ ### Core Game Development Philosophy
3045
+
3046
+ #### Player-First Development
3047
+
3048
+ You are developing games as a "Player Experience CEO" - thinking like a game director with unlimited creative resources and a singular vision for player enjoyment.
3049
+
3050
+ #### Game Development Principles
3051
+
3052
+ 1. **MAXIMIZE_PLAYER_ENGAGEMENT**: Push the AI to create compelling gameplay. Challenge mechanics and iterate.
3053
+ 2. **GAMEPLAY_QUALITY_CONTROL**: You are the ultimate arbiter of fun. Review all game features.
3054
+ 3. **CREATIVE_OVERSIGHT**: Maintain the high-level game vision and ensure design alignment.
3055
+ 4. **ITERATIVE_REFINEMENT**: Expect to revisit game mechanics. Game development is not linear.
3056
+ 5. **CLEAR_GAME_INSTRUCTIONS**: Precise game requirements lead to better implementations.
3057
+ 6. **DOCUMENTATION_IS_KEY**: Good game design docs lead to good game features.
3058
+ 7. **START_SMALL_SCALE_FAST**: Test core mechanics, then expand and polish.
3059
+ 8. **EMBRACE_CREATIVE_CHAOS**: Adapt and overcome game development challenges.
3060
+
3061
+ ## Getting Started with Game Development
3062
+
3063
+ ### Quick Start Options for Game Development
3064
+
3065
+ #### Option 1: Web UI for Game Design
3066
+
3067
+ **Best for**: Game designers who want to start with comprehensive planning
3068
+
3069
+ 1. Navigate to `dist/teams/` (after building)
3070
+ 2. Copy `unity-2d-game-team.txt` content
3071
+ 3. Create new Gemini Gem or CustomGPT
3072
+ 4. Upload file with instructions: "Your critical operating instructions are attached, do not break character as directed"
3073
+ 5. Type `/help` to see available game development commands
3074
+
3075
+ #### Option 2: IDE Integration for Game Development
3076
+
3077
+ **Best for**: Unity developers using Cursor, Claude Code, Windsurf, Trae, Cline, Roo Code, Github Copilot
3078
+
3079
+ ```bash
3080
+ # Interactive installation (recommended)
3081
+ npx bmad-method install
3082
+ # Select the bmad-2d-unity-game-dev expansion pack when prompted
3083
+ ```
3084
+
3085
+ **Installation Steps for Game Development**:
3086
+
3087
+ - Choose "Install expansion pack" when prompted
3088
+ - Select "bmad-2d-unity-game-dev" from the list
3089
+ - Select your IDE from supported options:
3090
+ - **Cursor**: Native AI integration with Unity support
3091
+ - **Claude Code**: Anthropic's official IDE
3092
+ - **Windsurf**: Built-in AI capabilities
3093
+ - **Trae**: Built-in AI capabilities
3094
+ - **Cline**: VS Code extension with AI features
3095
+ - **Roo Code**: Web-based IDE with agent support
3096
+ - **GitHub Copilot**: VS Code extension with AI peer programming assistant
3097
+
3098
+ **Verify Game Development Installation**:
3099
+
3100
+ - `.bmad-core/` folder created with all core agents
3101
+ - `.bmad-2d-unity-game-dev/` folder with game development agents
3102
+ - IDE-specific integration files created
3103
+ - Game development agents available with `/bmad2du` prefix (per config.yaml)
3104
+
3105
+ ### Environment Selection Guide for Game Development
3106
+
3107
+ **Use Web UI for**:
3108
+
3109
+ - Game design document creation and brainstorming
3110
+ - Cost-effective comprehensive game planning (especially with Gemini)
3111
+ - Multi-agent game design consultation
3112
+ - Creative ideation and mechanics refinement
3113
+
3114
+ **Use IDE for**:
3115
+
3116
+ - Unity project development and C# coding
3117
+ - Game asset operations and project integration
3118
+ - Game story management and implementation workflow
3119
+ - Unity testing, profiling, and debugging
3120
+
3121
+ **Cost-Saving Tip for Game Development**: Create large game design documents in web UI, then copy to `docs/game-design-doc.md` and `docs/game-architecture.md` in your Unity project before switching to IDE for development.
3122
+
3123
+ ### IDE-Only Game Development Workflow Considerations
3124
+
3125
+ **Can you do everything in IDE?** Yes, but understand the game development tradeoffs:
3126
+
3127
+ **Pros of IDE-Only Game Development**:
3128
+
3129
+ - Single environment workflow from design to Unity deployment
3130
+ - Direct Unity project operations from start
3131
+ - No copy/paste between environments
3132
+ - Immediate Unity project integration
3133
+
3134
+ **Cons of IDE-Only Game Development**:
3135
+
3136
+ - Higher token costs for large game design document creation
3137
+ - Smaller context windows for comprehensive game planning
3138
+ - May hit limits during creative brainstorming phases
3139
+ - Less cost-effective for extensive game design iteration
3140
+
3141
+ **CRITICAL RULE for Game Development**:
3142
+
3143
+ - **ALWAYS use Game SM agent for story creation** - Never use bmad-master or bmad-orchestrator
3144
+ - **ALWAYS use Game Dev agent for Unity implementation** - Never use bmad-master or bmad-orchestrator
3145
+ - **Why this matters**: Game SM and Game Dev agents are specifically optimized for Unity workflows
3146
+ - **No exceptions**: Even if using bmad-master for design, switch to Game SM → Game Dev for implementation
3147
+
3148
+ ## Core Configuration for Game Development (core-config.yaml)
3149
+
3150
+ **New in V4**: The `expansion-packs/bmad-2d-unity-game-dev/core-config.yaml` file enables BMad to work seamlessly with any Unity project structure, providing maximum flexibility for game development.
3151
+
3152
+ ### Game Development Configuration
3153
+
3154
+ The expansion pack follows the standard BMad configuration patterns. Copy your core-config.yaml file to expansion-packs/bmad-2d-unity-game-dev/ and add Game-specific configurations to your project's `core-config.yaml`:
3155
+
3156
+ ```yaml
3157
+ markdownExploder: true
3158
+ prd:
3159
+ prdFile: docs/prd.md
3160
+ prdVersion: v4
3161
+ prdSharded: true
3162
+ prdShardedLocation: docs/prd
3163
+ epicFilePattern: epic-{n}*.md
3164
+ architecture:
3165
+ architectureFile: docs/architecture.md
3166
+ architectureVersion: v4
3167
+ architectureSharded: true
3168
+ architectureShardedLocation: docs/architecture
3169
+ gdd:
3170
+ gddVersion: v4
3171
+ gddSharded: true
3172
+ gddLocation: docs/game-design-doc.md
3173
+ gddShardedLocation: docs/gdd
3174
+ epicFilePattern: epic-{n}*.md
3175
+ gamearchitecture:
3176
+ gamearchitectureFile: docs/architecture.md
3177
+ gamearchitectureVersion: v3
3178
+ gamearchitectureLocation: docs/game-architecture.md
3179
+ gamearchitectureSharded: true
3180
+ gamearchitectureShardedLocation: docs/game-architecture
3181
+ gamebriefdocLocation: docs/game-brief.md
3182
+ levelDesignLocation: docs/level-design.md
3183
+ #Specify the location for your unity editor
3184
+ unityEditorLocation: /home/USER/Unity/Hub/Editor/VERSION/Editor/Unity
3185
+ customTechnicalDocuments: null
3186
+ devDebugLog: .ai/debug-log.md
3187
+ devStoryLocation: docs/stories
3188
+ slashPrefix: bmad2du
3189
+ #replace old devLoadAlwaysFiles with this once you have sharded your gamearchitecture document
3190
+ devLoadAlwaysFiles:
3191
+ - docs/game-architecture/9-coding-standards.md
3192
+ - docs/game-architecture/3-tech-stack.md
3193
+ - docs/game-architecture/8-unity-project-structure.md
3194
+ ```
3195
+
3196
+ ## Complete Game Development Workflow
3197
+
3198
+ ### Planning Phase (Web UI Recommended - Especially Gemini for Game Design!)
3199
+
3200
+ **Ideal for cost efficiency with Gemini's massive context for game brainstorming:**
3201
+
3202
+ **For All Game Projects**:
3203
+
3204
+ 1. **Game Concept Brainstorming**: `/bmad2du/game-designer` - Use `*game-design-brainstorming` task
3205
+ 2. **Game Brief**: Create foundation game document using `game-brief-tmpl`
3206
+ 3. **Game Design Document Creation**: `/bmad2du/game-designer` - Use `game-design-doc-tmpl` for comprehensive game requirements
3207
+ 4. **Game Architecture Design**: `/bmad2du/game-architect` - Use `game-architecture-tmpl` for Unity technical foundation
3208
+ 5. **Level Design Framework**: `/bmad2du/game-designer` - Use `level-design-doc-tmpl` for level structure planning
3209
+ 6. **Document Preparation**: Copy final documents to Unity project as `docs/game-design-doc.md`, `docs/game-brief.md`, `docs/level-design.md` and `docs/game-architecture.md`
3210
+
3211
+ #### Example Game Planning Prompts
3212
+
3213
+ **For Game Design Document Creation**:
3214
+
3215
+ ```text
3216
+ "I want to build a [genre] 2D game that [core gameplay].
3217
+ Help me brainstorm mechanics and create a comprehensive Game Design Document."
3218
+ ```
3219
+
3220
+ **For Game Architecture Design**:
3221
+
3222
+ ```text
3223
+ "Based on this Game Design Document, design a scalable Unity architecture
3224
+ that can handle [specific game requirements] with stable performance."
3225
+ ```
3226
+
3227
+ ### Critical Transition: Web UI to Unity IDE
3228
+
3229
+ **Once game planning is complete, you MUST switch to IDE for Unity development:**
3230
+
3231
+ - **Why**: Unity development workflow requires C# operations, asset management, and real-time Unity testing
3232
+ - **Cost Benefit**: Web UI is more cost-effective for large game design creation; IDE is optimized for Unity development
3233
+ - **Required Files**: Ensure `docs/game-design-doc.md` and `docs/game-architecture.md` exist in your Unity project
3234
+
3235
+ ### Unity IDE Development Workflow
3236
+
3237
+ **Prerequisites**: Game planning documents must exist in `docs/` folder of Unity project
3238
+
3239
+ 1. **Document Sharding** (CRITICAL STEP for Game Development):
3240
+
3241
+ - Documents created by Game Designer/Architect (in Web or IDE) MUST be sharded for development
3242
+ - Use core BMad agents or tools to shard:
3243
+ a) **Manual**: Use core BMad `shard-doc` task if available
3244
+ b) **Agent**: Ask core `@bmad-master` agent to shard documents
3245
+ - Shards `docs/game-design-doc.md` → `docs/game-design/` folder
3246
+ - Shards `docs/game-architecture.md` → `docs/game-architecture/` folder
3247
+ - **WARNING**: Do NOT shard in Web UI - copying many small files to Unity is painful!
3248
+
3249
+ 2. **Verify Sharded Game Content**:
3250
+ - At least one `feature-n.md` file in `docs/game-design/` with game stories in development order
3251
+ - Unity system documents and coding standards for game dev agent reference
3252
+ - Sharded docs for Game SM agent story creation
3253
+
3254
+ Resulting Unity Project Folder Structure:
3255
+
3256
+ - `docs/game-design/` - Broken down game design sections
3257
+ - `docs/game-architecture/` - Broken down Unity architecture sections
3258
+ - `docs/game-stories/` - Generated game development stories
3259
+
3260
+ 3. **Game Development Cycle** (Sequential, one game story at a time):
3261
+
3262
+ **CRITICAL CONTEXT MANAGEMENT for Unity Development**:
3263
+
3264
+ - **Context windows matter!** Always use fresh, clean context windows
3265
+ - **Model selection matters!** Use most powerful thinking model for Game SM story creation
3266
+ - **ALWAYS start new chat between Game SM, Game Dev, and QA work**
3267
+
3268
+ **Step 1 - Game Story Creation**:
3269
+
3270
+ - **NEW CLEAN CHAT** → Select powerful model → `/bmad2du/game-sm` → `*draft`
3271
+ - Game SM executes create-game-story task using `game-story-tmpl`
3272
+ - Review generated story in `docs/game-stories/`
3273
+ - Update status from "Draft" to "Approved"
3274
+
3275
+ **Step 2 - Unity Game Story Implementation**:
3276
+
3277
+ - **NEW CLEAN CHAT** → `/bmad2du/game-developer`
3278
+ - Agent asks which game story to implement
3279
+ - Include story file content to save game dev agent lookup time
3280
+ - Game Dev follows tasks/subtasks, marking completion
3281
+ - Game Dev maintains File List of all Unity/C# changes
3282
+ - Game Dev marks story as "Review" when complete with all Unity tests passing
3283
+
3284
+ **Step 3 - Game QA Review**:
3285
+
3286
+ - **NEW CLEAN CHAT** → Use core `@qa` agent → execute review-story task
3287
+ - QA performs senior Unity developer code review
3288
+ - QA can refactor and improve Unity code directly
3289
+ - QA appends results to story's QA Results section
3290
+ - If approved: Status → "Done"
3291
+ - If changes needed: Status stays "Review" with unchecked items for game dev
3292
+
3293
+ **Step 4 - Repeat**: Continue Game SM → Game Dev → QA cycle until all game feature stories complete
3294
+
3295
+ **Important**: Only 1 game story in progress at a time, worked sequentially until all game feature stories complete.
3296
+
3297
+ ### Game Story Status Tracking Workflow
3298
+
3299
+ Game stories progress through defined statuses:
3300
+
3301
+ - **Draft** → **Approved** → **InProgress** → **Done**
3302
+
3303
+ Each status change requires user verification and approval before proceeding.
3304
+
3305
+ ### Game Development Workflow Types
3306
+
3307
+ #### Greenfield Game Development
3308
+
3309
+ - Game concept brainstorming and mechanics design
3310
+ - Game design requirements and feature definition
3311
+ - Unity system architecture and technical design
3312
+ - Game development execution
3313
+ - Game testing, performance optimization, and deployment
3314
+
3315
+ #### Brownfield Game Enhancement (Existing Unity Projects)
3316
+
3317
+ **Key Concept**: Brownfield game development requires comprehensive documentation of your existing Unity project for AI agents to understand game mechanics, Unity patterns, and technical constraints.
3318
+
3319
+ **Brownfield Game Enhancement Workflow**:
3320
+
3321
+ Since this expansion pack doesn't include specific brownfield templates, you'll adapt the existing templates:
3322
+
3323
+ 1. **Upload Unity project to Web UI** (GitHub URL, files, or zip)
3324
+ 2. **Create adapted Game Design Document**: `/bmad2du/game-designer` - Modify `game-design-doc-tmpl` to include:
3325
+
3326
+ - Analysis of existing game systems
3327
+ - Integration points for new features
3328
+ - Compatibility requirements
3329
+ - Risk assessment for changes
3330
+
3331
+ 3. **Game Architecture Planning**:
3332
+
3333
+ - Use `/bmad2du/game-architect` with `game-architecture-tmpl`
3334
+ - Focus on how new features integrate with existing Unity systems
3335
+ - Plan for gradual rollout and testing
3336
+
3337
+ 4. **Story Creation for Enhancements**:
3338
+ - Use `/bmad2du/game-sm` with `*create-game-story`
3339
+ - Stories should explicitly reference existing code to modify
3340
+ - Include integration testing requirements
3341
+
3342
+ **When to Use Each Game Development Approach**:
3343
+
3344
+ **Full Game Enhancement Workflow** (Recommended for):
3345
+
3346
+ - Major game feature additions
3347
+ - Game system modernization
3348
+ - Complex Unity integrations
3349
+ - Multiple related gameplay changes
3350
+
3351
+ **Quick Story Creation** (Use when):
3352
+
3353
+ - Single, focused game enhancement
3354
+ - Isolated gameplay fixes
3355
+ - Small feature additions
3356
+ - Well-documented existing Unity game
3357
+
3358
+ **Critical Success Factors for Game Development**:
3359
+
3360
+ 1. **Game Documentation First**: Always document existing code thoroughly before making changes
3361
+ 2. **Unity Context Matters**: Provide agents access to relevant Unity scripts and game systems
3362
+ 3. **Gameplay Integration Focus**: Emphasize compatibility and non-breaking changes to game mechanics
3363
+ 4. **Incremental Approach**: Plan for gradual rollout and extensive game testing
3364
+
3365
+ ## Document Creation Best Practices for Game Development
3366
+
3367
+ ### Required File Naming for Game Framework Integration
3368
+
3369
+ - `docs/game-design-doc.md` - Game Design Document
3370
+ - `docs/game-architecture.md` - Unity System Architecture Document
3371
+
3372
+ **Why These Names Matter for Game Development**:
3373
+
3374
+ - Game agents automatically reference these files during Unity development
3375
+ - Game sharding tasks expect these specific filenames
3376
+ - Game workflow automation depends on standard naming
3377
+
3378
+ ### Cost-Effective Game Document Creation Workflow
3379
+
3380
+ **Recommended for Large Game Documents (Game Design Document, Game Architecture):**
3381
+
3382
+ 1. **Use Web UI**: Create game documents in web interface for cost efficiency
3383
+ 2. **Copy Final Output**: Save complete markdown to your Unity project
3384
+ 3. **Standard Names**: Save as `docs/game-design-doc.md` and `docs/game-architecture.md`
3385
+ 4. **Switch to Unity IDE**: Use IDE agents for Unity development and smaller game documents
3386
+
3387
+ ### Game Document Sharding
3388
+
3389
+ Game templates with Level 2 headings (`##`) can be automatically sharded:
3390
+
3391
+ **Original Game Design Document**:
3392
+
3393
+ ```markdown
3394
+ ## Core Gameplay Mechanics
3395
+
3396
+ ## Player Progression System
3397
+
3398
+ ## Level Design Framework
3399
+
3400
+ ## Technical Requirements
3401
+ ```
3402
+
3403
+ **After Sharding**:
3404
+
3405
+ - `docs/game-design/core-gameplay-mechanics.md`
3406
+ - `docs/game-design/player-progression-system.md`
3407
+ - `docs/game-design/level-design-framework.md`
3408
+ - `docs/game-design/technical-requirements.md`
3409
+
3410
+ Use the `shard-doc` task or `@kayvan/markdown-tree-parser` tool for automatic game document sharding.
3411
+
3412
+ ## Game Agent System
3413
+
3414
+ ### Core Game Development Team
3415
+
3416
+ | Agent | Role | Primary Functions | When to Use |
3417
+ | ---------------- | ----------------- | ------------------------------------------- | ------------------------------------------- |
3418
+ | `game-designer` | Game Designer | Game mechanics, creative design, GDD | Game concept, mechanics, creative direction |
3419
+ | `game-developer` | Unity Developer | C# implementation, Unity optimization | All Unity development tasks |
3420
+ | `game-sm` | Game Scrum Master | Game story creation, sprint planning | Game project management, workflow |
3421
+ | `game-architect` | Game Architect | Unity system design, technical architecture | Complex Unity systems, performance planning |
3422
+
3423
+ **Note**: For QA and other roles, use the core BMad agents (e.g., `@qa` from bmad-core).
3424
+
3425
+ ### Game Agent Interaction Commands
3426
+
3427
+ #### IDE-Specific Syntax for Game Development
3428
+
3429
+ **Game Agent Loading by IDE**:
3430
+
3431
+ - **Claude Code**: `/bmad2du/game-designer`, `/bmad2du/game-developer`, `/bmad2du/game-sm`, `/bmad2du/game-architect`
3432
+ - **Cursor**: `@bmad2du/game-designer`, `@bmad2du/game-developer`, `@bmad2du/game-sm`, `@bmad2du/game-architect`
3433
+ - **Windsurf**: `@bmad2du/game-designer`, `@bmad2du/game-developer`, `@bmad2du/game-sm`, `@bmad2du/game-architect`
3434
+ - **Trae**: `@bmad2du/game-designer`, `@bmad2du/game-developer`, `@bmad2du/game-sm`, `@bmad2du/game-architect`
3435
+ - **Roo Code**: Select mode from mode selector with bmad2du prefix
3436
+ - **GitHub Copilot**: Open the Chat view (`⌃⌘I` on Mac, `Ctrl+Alt+I` on Windows/Linux) and select the appropriate game agent.
3437
+
3438
+ **Common Game Development Task Commands**:
3439
+
3440
+ - `*help` - Show available game development commands
3441
+ - `*status` - Show current game development context/progress
3442
+ - `*exit` - Exit the game agent mode
3443
+ - `*game-design-brainstorming` - Brainstorm game concepts and mechanics (Game Designer)
3444
+ - `*draft` - Create next game development story (Game SM agent)
3445
+ - `*validate-game-story` - Validate a game story implementation (with core QA agent)
3446
+ - `*correct-course-game` - Course correction for game development issues
3447
+ - `*advanced-elicitation` - Deep dive into game requirements
3448
+
3449
+ **In Web UI (after building with unity-2d-game-team)**:
3450
+
3451
+ ```text
3452
+ /bmad2du/game-designer - Access game designer agent
3453
+ /bmad2du/game-architect - Access game architect agent
3454
+ /bmad2du/game-developer - Access game developer agent
3455
+ /bmad2du/game-sm - Access game scrum master agent
3456
+ /help - Show available game development commands
3457
+ /switch agent-name - Change active agent (if orchestrator available)
3458
+ ```
3459
+
3460
+ ## Game-Specific Development Guidelines
3461
+
3462
+ ### Unity + C# Standards
3463
+
3464
+ **Project Structure:**
3465
+
3466
+ ```text
3467
+ UnityProject/
3468
+ ├── Assets/
3469
+ │ └── _Project
3470
+ │ ├── Scenes/ # Game scenes (Boot, Menu, Game, etc.)
3471
+ │ ├── Scripts/ # C# scripts
3472
+ │ │ ├── Editor/ # Editor-specific scripts
3473
+ │ │ └── Runtime/ # Runtime scripts
3474
+ │ ├── Prefabs/ # Reusable game objects
3475
+ │ ├── Art/ # Art assets (sprites, models, etc.)
3476
+ │ ├── Audio/ # Audio assets
3477
+ │ ├── Data/ # ScriptableObjects and other data
3478
+ │ └── Tests/ # Unity Test Framework tests
3479
+ │ ├── EditMode/
3480
+ │ └── PlayMode/
3481
+ ├── Packages/ # Package Manager manifest
3482
+ └── ProjectSettings/ # Unity project settings
3483
+ ```
3484
+
3485
+ **Performance Requirements:**
3486
+
3487
+ - Maintain stable frame rate on target devices
3488
+ - Memory usage under specified limits per level
3489
+ - Loading times under 3 seconds for levels
3490
+ - Smooth animation and responsive controls
3491
+
3492
+ **Code Quality:**
3493
+
3494
+ - C# best practices compliance
3495
+ - Component-based architecture (SOLID principles)
3496
+ - Efficient use of the MonoBehaviour lifecycle
3497
+ - Error handling and graceful degradation
3498
+
3499
+ ### Game Development Story Structure
3500
+
3501
+ **Story Requirements:**
3502
+
3503
+ - Clear reference to Game Design Document section
3504
+ - Specific acceptance criteria for game functionality
3505
+ - Technical implementation details for Unity and C#
3506
+ - Performance requirements and optimization considerations
3507
+ - Testing requirements including gameplay validation
3508
+
3509
+ **Story Categories:**
3510
+
3511
+ - **Core Mechanics**: Fundamental gameplay systems
3512
+ - **Level Content**: Individual levels and content implementation
3513
+ - **UI/UX**: User interface and player experience features
3514
+ - **Performance**: Optimization and technical improvements
3515
+ - **Polish**: Visual effects, audio, and game feel enhancements
3516
+
3517
+ ### Quality Assurance for Games
3518
+
3519
+ **Testing Approach:**
3520
+
3521
+ - Unit tests for C# logic (EditMode tests)
3522
+ - Integration tests for game systems (PlayMode tests)
3523
+ - Performance benchmarking and profiling with Unity Profiler
3524
+ - Gameplay testing and balance validation
3525
+ - Cross-platform compatibility testing
3526
+
3527
+ **Performance Monitoring:**
3528
+
3529
+ - Frame rate consistency tracking
3530
+ - Memory usage monitoring
3531
+ - Asset loading performance
3532
+ - Input responsiveness validation
3533
+ - Battery usage optimization (mobile)
3534
+
3535
+ ## Usage Patterns and Best Practices for Game Development
3536
+
3537
+ ### Environment-Specific Usage for Games
3538
+
3539
+ **Web UI Best For Game Development**:
3540
+
3541
+ - Initial game design and creative brainstorming phases
3542
+ - Cost-effective large game document creation
3543
+ - Game agent consultation and mechanics refinement
3544
+ - Multi-agent game workflows with orchestrator
3545
+
3546
+ **Unity IDE Best For Game Development**:
3547
+
3548
+ - Active Unity development and C# implementation
3549
+ - Unity asset operations and project integration
3550
+ - Game story management and development cycles
3551
+ - Unity testing, profiling, and debugging
3552
+
3553
+ ### Quality Assurance for Game Development
3554
+
3555
+ - Use appropriate game agents for specialized tasks
3556
+ - Follow Agile ceremonies and game review processes
3557
+ - Use game-specific checklists:
3558
+ - `game-architect-checklist` for architecture reviews
3559
+ - `game-change-checklist` for change validation
3560
+ - `game-design-checklist` for design reviews
3561
+ - `game-story-dod-checklist` for story quality
3562
+ - Regular validation with game templates
3563
+
3564
+ ### Performance Optimization for Game Development
3565
+
3566
+ - Use specific game agents vs. `bmad-master` for focused Unity tasks
3567
+ - Choose appropriate game team size for project needs
3568
+ - Leverage game-specific technical preferences for consistency
3569
+ - Regular context management and cache clearing for Unity workflows
3570
+
3571
+ ## Game Development Team Roles
3572
+
3573
+ ### Game Designer
3574
+
3575
+ - **Primary Focus**: Game mechanics, player experience, design documentation
3576
+ - **Key Outputs**: Game Brief, Game Design Document, Level Design Framework
3577
+ - **Specialties**: Brainstorming, game balance, player psychology, creative direction
3578
+
3579
+ ### Game Developer
3580
+
3581
+ - **Primary Focus**: Unity implementation, C# excellence, performance optimization
3582
+ - **Key Outputs**: Working game features, optimized Unity code, technical architecture
3583
+ - **Specialties**: C#/Unity, performance optimization, cross-platform development
3584
+
3585
+ ### Game Scrum Master
3586
+
3587
+ - **Primary Focus**: Game story creation, development planning, agile process
3588
+ - **Key Outputs**: Detailed implementation stories, sprint planning, quality assurance
3589
+ - **Specialties**: Story breakdown, developer handoffs, process optimization
3590
+
3591
+ ## Platform-Specific Considerations
3592
+
3593
+ ### Cross-Platform Development
3594
+
3595
+ - Abstract input using the new Input System
3596
+ - Use platform-dependent compilation for specific logic
3597
+ - Test on all target platforms regularly
3598
+ - Optimize for different screen resolutions and aspect ratios
3599
+
3600
+ ### Mobile Optimization
3601
+
3602
+ - Touch gesture support and responsive controls
3603
+ - Battery usage optimization
3604
+ - Performance scaling for different device capabilities
3605
+ - App store compliance and packaging
3606
+
3607
+ ### Performance Targets
3608
+
3609
+ - **PC/Console**: 60+ FPS at target resolution
3610
+ - **Mobile**: 60 FPS on mid-range devices, 30 FPS minimum on low-end
3611
+ - **Loading**: Initial load under 5 seconds, scene transitions under 2 seconds
3612
+ - **Memory**: Within platform-specific memory budgets
3613
+
3614
+ ## Success Metrics for Game Development
3615
+
3616
+ ### Technical Metrics
3617
+
3618
+ - Frame rate consistency (>90% of time at target FPS)
3619
+ - Memory usage within budgets
3620
+ - Loading time targets met
3621
+ - Zero critical bugs in core gameplay systems
3622
+
3623
+ ### Player Experience Metrics
3624
+
3625
+ - Tutorial completion rate >80%
3626
+ - Level completion rates appropriate for difficulty curve
3627
+ - Average session length meets design targets
3628
+ - Player retention and engagement metrics
3629
+
3630
+ ### Development Process Metrics
3631
+
3632
+ - Story completion within estimated timeframes
3633
+ - Code quality metrics (test coverage, code analysis)
3634
+ - Documentation completeness and accuracy
3635
+ - Team velocity and delivery consistency
3636
+
3637
+ ## Common Unity Development Patterns
3638
+
3639
+ ### Scene Management
3640
+
3641
+ - Use a loading scene for asynchronous loading of game scenes
3642
+ - Use additive scene loading for large levels or streaming
3643
+ - Manage scenes with a dedicated SceneManager class
3644
+
3645
+ ### Game State Management
3646
+
3647
+ - Use ScriptableObjects to store shared game state
3648
+ - Implement a finite state machine (FSM) for complex behaviors
3649
+ - Use a GameManager singleton for global state management
3650
+
3651
+ ### Input Handling
3652
+
3653
+ - Use the new Input System for robust, cross-platform input
3654
+ - Create Action Maps for different input contexts (e.g., menu, gameplay)
3655
+ - Use PlayerInput component for easy player input handling
3656
+
3657
+ ### Performance Optimization
3658
+
3659
+ - Object pooling for frequently instantiated objects (e.g., bullets, enemies)
3660
+ - Use the Unity Profiler to identify performance bottlenecks
3661
+ - Optimize physics settings and collision detection
3662
+ - Use LOD (Level of Detail) for complex models
3663
+
3664
+ ## Success Tips for Game Development
3665
+
3666
+ - **Use Gemini for game design planning** - The team-game-dev bundle provides collaborative game expertise
3667
+ - **Use bmad-master for game document organization** - Sharding creates manageable game feature chunks
3668
+ - **Follow the Game SM → Game Dev cycle religiously** - This ensures systematic game progress
3669
+ - **Keep conversations focused** - One game agent, one Unity task per conversation
3670
+ - **Review everything** - Always review and approve before marking game features complete
3671
+
3672
+ ## Contributing to BMad-Method Game Development
3673
+
3674
+ ### Game Development Contribution Guidelines
3675
+
3676
+ For full details, see `CONTRIBUTING.md`. Key points for game development:
3677
+
3678
+ **Fork Workflow for Game Development**:
3679
+
3680
+ 1. Fork the repository
3681
+ 2. Create game development feature branches
3682
+ 3. Submit PRs to `next` branch (default) or `main` for critical game development fixes only
3683
+ 4. Keep PRs small: 200-400 lines ideal, 800 lines maximum
3684
+ 5. One game feature/fix per PR
3685
+
3686
+ **Game Development PR Requirements**:
3687
+
3688
+ - Clear descriptions (max 200 words) with What/Why/How/Testing for game features
3689
+ - Use conventional commits (feat:, fix:, docs:) with game context
3690
+ - Atomic commits - one logical game change per commit
3691
+ - Must align with game development guiding principles
3692
+
3693
+ **Game Development Core Principles**:
3694
+
3695
+ - **Game Dev Agents Must Be Lean**: Minimize dependencies, save context for Unity code
3696
+ - **Natural Language First**: Everything in markdown, no code in game development core
3697
+ - **Core vs Game Expansion Packs**: Core for universal needs, game packs for Unity specialization
3698
+ - **Game Design Philosophy**: "Game dev agents code Unity, game planning agents plan gameplay"
3699
+
3700
+ ## Game Development Expansion Pack System
3701
+
3702
+ ### This Game Development Expansion Pack
3703
+
3704
+ This 2D Unity Game Development expansion pack extends BMad-Method beyond traditional software development into professional game development. It provides specialized game agent teams, Unity templates, and game workflows while keeping the core framework lean and focused on general development.
3705
+
3706
+ ### Why Use This Game Development Expansion Pack?
3707
+
3708
+ 1. **Keep Core Lean**: Game dev agents maintain maximum context for Unity coding
3709
+ 2. **Game Domain Expertise**: Deep, specialized Unity and game development knowledge
3710
+ 3. **Community Game Innovation**: Game developers can contribute and share Unity patterns
3711
+ 4. **Modular Game Design**: Install only game development capabilities you need
3712
+
3713
+ ### Using This Game Development Expansion Pack
3714
+
3715
+ 1. **Install via CLI**:
3716
+
3717
+ ```bash
3718
+ npx bmad-method install
3719
+ # Select "Install game development expansion pack" option
3720
+ ```
3721
+
3722
+ 2. **Use in Your Game Workflow**: Installed game agents integrate seamlessly with existing BMad agents
3723
+
3724
+ ### Creating Custom Game Development Extensions
3725
+
3726
+ Use the **expansion-creator** pack to build your own game development extensions:
3727
+
3728
+ 1. **Define Game Domain**: What game development expertise are you capturing?
3729
+ 2. **Design Game Agents**: Create specialized game roles with clear Unity boundaries
3730
+ 3. **Build Game Resources**: Tasks, templates, checklists for your game domain
3731
+ 4. **Test & Share**: Validate with real Unity use cases, share with game development community
3732
+
3733
+ **Key Principle**: Game development expansion packs democratize game development expertise by making specialized Unity and game design knowledge accessible through AI agents.
3734
+
3735
+ ## Getting Help with Game Development
3736
+
3737
+ - **Commands**: Use `*/*help` in any environment to see available game development commands
3738
+ - **Game Agent Switching**: Use `*/*switch game-agent-name` with orchestrator for role changes
3739
+ - **Game Documentation**: Check `docs/` folder for Unity project-specific context
3740
+ - **Game Community**: Discord and GitHub resources available for game development support
3741
+ - **Game Contributing**: See `CONTRIBUTING.md` for full game development guidelines
3742
+
3743
+ This knowledge base provides the foundation for effective game development using the BMad-Method framework with specialized focus on 2D game creation using Unity and C#.
3744
+ ==================== END: .bmad-2d-unity-game-dev/data/bmad-kb.md ====================