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.
- package/.vscode/settings.json +1 -7
- package/CHANGELOG.md +113 -173
- package/README.md +47 -0
- package/bmad-core/agents/analyst.md +1 -1
- package/bmad-core/agents/architect.md +2 -3
- package/bmad-core/agents/bmad-master.md +0 -1
- package/bmad-core/agents/bmad-orchestrator.md +9 -10
- package/bmad-core/agents/dev.md +1 -2
- package/bmad-core/agents/pm.md +3 -1
- package/bmad-core/agents/po.md +1 -1
- package/bmad-core/agents/qa.md +1 -1
- package/bmad-core/agents/sm.md +1 -1
- package/bmad-core/agents/ux-expert.md +1 -1
- package/bmad-core/bmad-core/user-guide.md +0 -0
- package/bmad-core/checklists/architect-checklist.md +0 -5
- package/bmad-core/checklists/pm-checklist.md +0 -5
- package/bmad-core/checklists/po-master-checklist.md +0 -9
- package/bmad-core/checklists/story-dod-checklist.md +0 -7
- package/bmad-core/checklists/story-draft-checklist.md +0 -3
- package/bmad-core/data/bmad-kb.md +5 -2
- package/bmad-core/data/elicitation-methods.md +20 -0
- package/bmad-core/enhanced-ide-development-workflow.md +43 -0
- package/bmad-core/tasks/create-brownfield-story.md +11 -3
- package/bmad-core/tasks/create-deep-research-prompt.md +0 -11
- package/bmad-core/tasks/document-project.md +15 -13
- package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
- package/bmad-core/tasks/index-docs.md +0 -6
- package/bmad-core/tasks/kb-mode-interaction.md +3 -3
- package/bmad-core/tasks/review-story.md +10 -1
- package/bmad-core/tasks/shard-doc.md +0 -2
- package/bmad-core/user-guide.md +7 -6
- package/bmad-core/working-in-the-brownfield.md +39 -36
- package/common/tasks/execute-checklist.md +0 -7
- package/dist/agents/analyst.txt +6 -6
- package/dist/agents/architect.txt +8 -3
- package/dist/agents/bmad-master.txt +2 -1
- package/dist/agents/pm.txt +9 -2
- package/dist/agents/po.txt +2 -318
- package/dist/agents/qa.txt +0 -1
- package/dist/agents/sm.txt +3 -3
- package/dist/agents/ux-expert.txt +2 -297
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +6 -6
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4047 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +1520 -185
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +214 -1229
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +537 -373
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +6917 -2140
- package/dist/teams/team-all.txt +30 -25
- package/dist/teams/team-fullstack.txt +27 -21
- package/dist/teams/team-ide-minimal.txt +5 -322
- package/dist/teams/team-no-ui.txt +25 -16
- package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -1
- package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -4
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +3 -5
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -1
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -18
- package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +1 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +80 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +21 -16
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +25 -25
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +15 -14
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +391 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +203 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +103 -139
- package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +1 -1
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +586 -68
- package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -4
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -1
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +141 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +165 -198
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -18
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +200 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +938 -453
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +3 -3
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +517 -155
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +12 -12
- package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +11 -11
- package/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -1
- package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +0 -3
- package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -1
- package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -1
- package/package.json +4 -1
- package/tools/bmad-npx-wrapper.js +5 -7
- package/tools/flattener/main.js +570 -0
- package/tools/installer/bin/bmad.js +14 -0
- package/tools/installer/lib/installer.js +29 -3
- package/tools/installer/package-lock.json +89 -89
- package/tools/installer/package.json +1 -1
- package/.husky/pre-commit +0 -2
- package/.prettierignore +0 -21
- 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
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
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
|
-
-
|
|
75
|
-
-
|
|
76
|
-
-
|
|
77
|
-
-
|
|
78
|
-
-
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
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-
|
|
1211
|
+
id: game-design-doc-template-v3
|
|
1018
1212
|
name: Game Design Document (GDD)
|
|
1019
|
-
version:
|
|
1213
|
+
version: 4.0
|
|
1020
1214
|
output:
|
|
1021
1215
|
format: markdown
|
|
1022
|
-
filename:
|
|
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:
|
|
1224
|
+
- id: goals-context
|
|
1225
|
+
title: Goals and Background Context
|
|
1030
1226
|
instruction: |
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
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
|
-
|
|
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
|
|
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
|
|
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
|
-
- {{
|
|
1116
|
-
- {{
|
|
1117
|
-
- {{
|
|
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
|
|
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
|
|
1449
|
+
**Unity Scene Structure:**
|
|
1178
1450
|
|
|
1179
|
-
-
|
|
1180
|
-
-
|
|
1181
|
-
-
|
|
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.
|
|
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:**
|
|
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
|
-
-
|
|
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,
|
|
1213
|
-
- OS: iOS
|
|
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
|
|
1555
|
+
instruction: Define asset specifications for Unity pipeline optimization
|
|
1217
1556
|
template: |
|
|
1218
|
-
**
|
|
1557
|
+
**2D Art Assets:**
|
|
1219
1558
|
|
|
1220
|
-
-
|
|
1221
|
-
-
|
|
1222
|
-
-
|
|
1223
|
-
-
|
|
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
|
|
1228
|
-
-
|
|
1229
|
-
-
|
|
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
|
|
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
|
-
-
|
|
1250
|
-
-
|
|
1251
|
-
-
|
|
1252
|
-
|
|
1253
|
-
- Input
|
|
1254
|
-
-
|
|
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
|
-
-
|
|
1262
|
-
-
|
|
1263
|
-
-
|
|
1264
|
-
- {{
|
|
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:
|
|
1271
|
-
title:
|
|
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-
|
|
1274
|
-
title: "
|
|
1687
|
+
- id: foundation-design
|
|
1688
|
+
title: "Design: Unity Project Foundation"
|
|
1275
1689
|
type: bullet-list
|
|
1276
1690
|
template: |
|
|
1277
|
-
-
|
|
1278
|
-
-
|
|
1279
|
-
-
|
|
1280
|
-
-
|
|
1281
|
-
|
|
1282
|
-
|
|
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
|
-
- {{
|
|
1286
|
-
-
|
|
1287
|
-
-
|
|
1288
|
-
|
|
1289
|
-
|
|
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:
|
|
1292
|
-
title: "
|
|
1712
|
+
- id: gameplay-mechanics-design
|
|
1713
|
+
title: "Design: Primary Game Mechanics"
|
|
1293
1714
|
type: bullet-list
|
|
1294
1715
|
template: |
|
|
1295
|
-
- {{
|
|
1296
|
-
- {{
|
|
1297
|
-
-
|
|
1298
|
-
|
|
1299
|
-
|
|
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
|
-
-
|
|
1303
|
-
-
|
|
1304
|
-
-
|
|
1305
|
-
|
|
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-
|
|
1309
|
-
title: "
|
|
1735
|
+
- id: performance-design
|
|
1736
|
+
title: "Design: Performance & Platform Optimization"
|
|
1310
1737
|
type: bullet-list
|
|
1311
1738
|
template: |
|
|
1312
|
-
-
|
|
1313
|
-
-
|
|
1314
|
-
-
|
|
1315
|
-
|
|
1316
|
-
|
|
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
|
-
-
|
|
1320
|
-
-
|
|
1321
|
-
-
|
|
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
|
|
1332
|
-
- Load
|
|
1333
|
-
-
|
|
1334
|
-
-
|
|
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
|
|
1340
|
-
-
|
|
1341
|
-
-
|
|
1342
|
-
- Player
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
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
|
-
|
|
|
1353
|
-
|
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
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:
|
|
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.
|
|
1921
|
+
version: 2.1
|
|
1366
1922
|
output:
|
|
1367
1923
|
format: markdown
|
|
1368
|
-
filename:
|
|
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
|
-
-
|
|
1736
|
-
-
|
|
1737
|
-
-
|
|
1738
|
-
-
|
|
1739
|
-
-
|
|
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
|
-
-
|
|
1745
|
-
-
|
|
1746
|
-
-
|
|
1747
|
-
-
|
|
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-
|
|
2406
|
+
id: game-brief-template-v3
|
|
1851
2407
|
name: Game Brief
|
|
1852
|
-
version:
|
|
2408
|
+
version: 3.0
|
|
1853
2409
|
output:
|
|
1854
2410
|
format: markdown
|
|
1855
|
-
filename:
|
|
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 ====================
|