@zigrivers/scaffold 3.4.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/README.md +91 -0
  2. package/content/knowledge/game/game-accessibility.md +328 -0
  3. package/content/knowledge/game/game-ai-patterns.md +542 -0
  4. package/content/knowledge/game/game-asset-pipeline.md +359 -0
  5. package/content/knowledge/game/game-audio-design.md +342 -0
  6. package/content/knowledge/game/game-binary-vcs-strategy.md +396 -0
  7. package/content/knowledge/game/game-design-document.md +260 -0
  8. package/content/knowledge/game/game-domain-patterns.md +297 -0
  9. package/content/knowledge/game/game-economy-design.md +355 -0
  10. package/content/knowledge/game/game-engine-selection.md +242 -0
  11. package/content/knowledge/game/game-input-systems.md +357 -0
  12. package/content/knowledge/game/game-level-content-design.md +455 -0
  13. package/content/knowledge/game/game-liveops-analytics.md +280 -0
  14. package/content/knowledge/game/game-localization.md +323 -0
  15. package/content/knowledge/game/game-milestone-definitions.md +337 -0
  16. package/content/knowledge/game/game-modding-ugc.md +390 -0
  17. package/content/knowledge/game/game-narrative-design.md +404 -0
  18. package/content/knowledge/game/game-networking.md +391 -0
  19. package/content/knowledge/game/game-performance-budgeting.md +378 -0
  20. package/content/knowledge/game/game-platform-certification.md +417 -0
  21. package/content/knowledge/game/game-project-structure.md +360 -0
  22. package/content/knowledge/game/game-save-systems.md +452 -0
  23. package/content/knowledge/game/game-testing-strategy.md +470 -0
  24. package/content/knowledge/game/game-ui-patterns.md +475 -0
  25. package/content/knowledge/game/game-vr-ar-design.md +313 -0
  26. package/content/knowledge/review/review-art-bible.md +305 -0
  27. package/content/knowledge/review/review-game-design.md +303 -0
  28. package/content/knowledge/review/review-game-economy.md +272 -0
  29. package/content/knowledge/review/review-netcode.md +280 -0
  30. package/content/knowledge/review/review-platform-cert.md +341 -0
  31. package/content/methodology/custom-defaults.yml +25 -0
  32. package/content/methodology/deep.yml +25 -0
  33. package/content/methodology/game-overlay.yml +145 -0
  34. package/content/methodology/mvp.yml +25 -0
  35. package/content/pipeline/architecture/ai-behavior-design.md +87 -0
  36. package/content/pipeline/architecture/netcode-spec.md +86 -0
  37. package/content/pipeline/architecture/review-netcode.md +78 -0
  38. package/content/pipeline/foundation/performance-budgets.md +91 -0
  39. package/content/pipeline/modeling/narrative-bible.md +84 -0
  40. package/content/pipeline/pre/game-design-document.md +89 -0
  41. package/content/pipeline/pre/review-gdd.md +74 -0
  42. package/content/pipeline/quality/analytics-telemetry.md +98 -0
  43. package/content/pipeline/quality/live-ops-plan.md +99 -0
  44. package/content/pipeline/quality/platform-cert-prep.md +129 -0
  45. package/content/pipeline/quality/playtest-plan.md +83 -0
  46. package/content/pipeline/specification/art-bible.md +87 -0
  47. package/content/pipeline/specification/audio-design.md +96 -0
  48. package/content/pipeline/specification/content-structure-design.md +141 -0
  49. package/content/pipeline/specification/economy-design.md +104 -0
  50. package/content/pipeline/specification/game-accessibility.md +82 -0
  51. package/content/pipeline/specification/game-ui-spec.md +97 -0
  52. package/content/pipeline/specification/input-controls-spec.md +81 -0
  53. package/content/pipeline/specification/localization-plan.md +113 -0
  54. package/content/pipeline/specification/modding-ugc-spec.md +116 -0
  55. package/content/pipeline/specification/online-services-spec.md +104 -0
  56. package/content/pipeline/specification/review-economy.md +87 -0
  57. package/content/pipeline/specification/review-game-ui.md +73 -0
  58. package/content/pipeline/specification/save-system-spec.md +116 -0
  59. package/dist/cli/commands/adopt.d.ts.map +1 -1
  60. package/dist/cli/commands/adopt.js +25 -0
  61. package/dist/cli/commands/adopt.js.map +1 -1
  62. package/dist/cli/commands/adopt.test.js +28 -1
  63. package/dist/cli/commands/adopt.test.js.map +1 -1
  64. package/dist/cli/commands/build.test.js +3 -0
  65. package/dist/cli/commands/build.test.js.map +1 -1
  66. package/dist/cli/commands/init.d.ts +1 -0
  67. package/dist/cli/commands/init.d.ts.map +1 -1
  68. package/dist/cli/commands/init.js +6 -0
  69. package/dist/cli/commands/init.js.map +1 -1
  70. package/dist/cli/commands/init.test.js +12 -1
  71. package/dist/cli/commands/init.test.js.map +1 -1
  72. package/dist/cli/commands/knowledge.test.js +8 -0
  73. package/dist/cli/commands/knowledge.test.js.map +1 -1
  74. package/dist/cli/commands/next.d.ts.map +1 -1
  75. package/dist/cli/commands/next.js +19 -5
  76. package/dist/cli/commands/next.js.map +1 -1
  77. package/dist/cli/commands/next.test.js +56 -0
  78. package/dist/cli/commands/next.test.js.map +1 -1
  79. package/dist/cli/commands/rework.d.ts.map +1 -1
  80. package/dist/cli/commands/rework.js +11 -2
  81. package/dist/cli/commands/rework.js.map +1 -1
  82. package/dist/cli/commands/rework.test.js +5 -0
  83. package/dist/cli/commands/rework.test.js.map +1 -1
  84. package/dist/cli/commands/run.d.ts.map +1 -1
  85. package/dist/cli/commands/run.js +54 -4
  86. package/dist/cli/commands/run.js.map +1 -1
  87. package/dist/cli/commands/run.test.js +384 -0
  88. package/dist/cli/commands/run.test.js.map +1 -1
  89. package/dist/cli/commands/skip.test.js +3 -0
  90. package/dist/cli/commands/skip.test.js.map +1 -1
  91. package/dist/cli/commands/status.d.ts.map +1 -1
  92. package/dist/cli/commands/status.js +16 -3
  93. package/dist/cli/commands/status.js.map +1 -1
  94. package/dist/cli/commands/status.test.js +55 -0
  95. package/dist/cli/commands/status.test.js.map +1 -1
  96. package/dist/cli/output/auto.d.ts +3 -0
  97. package/dist/cli/output/auto.d.ts.map +1 -1
  98. package/dist/cli/output/auto.js +9 -0
  99. package/dist/cli/output/auto.js.map +1 -1
  100. package/dist/cli/output/context.d.ts +6 -0
  101. package/dist/cli/output/context.d.ts.map +1 -1
  102. package/dist/cli/output/context.js.map +1 -1
  103. package/dist/cli/output/context.test.js +87 -0
  104. package/dist/cli/output/context.test.js.map +1 -1
  105. package/dist/cli/output/error-display.test.js +3 -0
  106. package/dist/cli/output/error-display.test.js.map +1 -1
  107. package/dist/cli/output/interactive.d.ts +3 -0
  108. package/dist/cli/output/interactive.d.ts.map +1 -1
  109. package/dist/cli/output/interactive.js +76 -0
  110. package/dist/cli/output/interactive.js.map +1 -1
  111. package/dist/cli/output/json.d.ts +3 -0
  112. package/dist/cli/output/json.d.ts.map +1 -1
  113. package/dist/cli/output/json.js +9 -0
  114. package/dist/cli/output/json.js.map +1 -1
  115. package/dist/config/loader.d.ts.map +1 -1
  116. package/dist/config/loader.js +3 -2
  117. package/dist/config/loader.js.map +1 -1
  118. package/dist/config/schema.d.ts +641 -15
  119. package/dist/config/schema.d.ts.map +1 -1
  120. package/dist/config/schema.js +26 -1
  121. package/dist/config/schema.js.map +1 -1
  122. package/dist/config/schema.test.js +192 -1
  123. package/dist/config/schema.test.js.map +1 -1
  124. package/dist/core/assembly/overlay-loader.d.ts +24 -0
  125. package/dist/core/assembly/overlay-loader.d.ts.map +1 -0
  126. package/dist/core/assembly/overlay-loader.js +190 -0
  127. package/dist/core/assembly/overlay-loader.js.map +1 -0
  128. package/dist/core/assembly/overlay-loader.test.d.ts +2 -0
  129. package/dist/core/assembly/overlay-loader.test.d.ts.map +1 -0
  130. package/dist/core/assembly/overlay-loader.test.js +106 -0
  131. package/dist/core/assembly/overlay-loader.test.js.map +1 -0
  132. package/dist/core/assembly/overlay-resolver.d.ts +15 -0
  133. package/dist/core/assembly/overlay-resolver.d.ts.map +1 -0
  134. package/dist/core/assembly/overlay-resolver.js +58 -0
  135. package/dist/core/assembly/overlay-resolver.js.map +1 -0
  136. package/dist/core/assembly/overlay-resolver.test.d.ts +2 -0
  137. package/dist/core/assembly/overlay-resolver.test.d.ts.map +1 -0
  138. package/dist/core/assembly/overlay-resolver.test.js +246 -0
  139. package/dist/core/assembly/overlay-resolver.test.js.map +1 -0
  140. package/dist/core/assembly/overlay-state-resolver.d.ts +26 -0
  141. package/dist/core/assembly/overlay-state-resolver.d.ts.map +1 -0
  142. package/dist/core/assembly/overlay-state-resolver.js +63 -0
  143. package/dist/core/assembly/overlay-state-resolver.js.map +1 -0
  144. package/dist/core/assembly/overlay-state-resolver.test.d.ts +2 -0
  145. package/dist/core/assembly/overlay-state-resolver.test.d.ts.map +1 -0
  146. package/dist/core/assembly/overlay-state-resolver.test.js +256 -0
  147. package/dist/core/assembly/overlay-state-resolver.test.js.map +1 -0
  148. package/dist/core/assembly/preset-loader.d.ts +1 -0
  149. package/dist/core/assembly/preset-loader.d.ts.map +1 -1
  150. package/dist/core/assembly/preset-loader.js +2 -0
  151. package/dist/core/assembly/preset-loader.js.map +1 -1
  152. package/dist/core/dependency/eligibility.test.js +3 -0
  153. package/dist/core/dependency/eligibility.test.js.map +1 -1
  154. package/dist/e2e/game-pipeline.test.d.ts +10 -0
  155. package/dist/e2e/game-pipeline.test.d.ts.map +1 -0
  156. package/dist/e2e/game-pipeline.test.js +298 -0
  157. package/dist/e2e/game-pipeline.test.js.map +1 -0
  158. package/dist/e2e/init.test.js +3 -0
  159. package/dist/e2e/init.test.js.map +1 -1
  160. package/dist/project/adopt.d.ts +3 -1
  161. package/dist/project/adopt.d.ts.map +1 -1
  162. package/dist/project/adopt.js +29 -1
  163. package/dist/project/adopt.js.map +1 -1
  164. package/dist/project/adopt.test.js +51 -1
  165. package/dist/project/adopt.test.js.map +1 -1
  166. package/dist/types/config.d.ts +50 -4
  167. package/dist/types/config.d.ts.map +1 -1
  168. package/dist/types/config.test.d.ts +2 -0
  169. package/dist/types/config.test.d.ts.map +1 -0
  170. package/dist/types/config.test.js +97 -0
  171. package/dist/types/config.test.js.map +1 -0
  172. package/dist/utils/eligible.d.ts +3 -2
  173. package/dist/utils/eligible.d.ts.map +1 -1
  174. package/dist/utils/eligible.js +18 -4
  175. package/dist/utils/eligible.js.map +1 -1
  176. package/dist/utils/errors.d.ts +4 -0
  177. package/dist/utils/errors.d.ts.map +1 -1
  178. package/dist/utils/errors.js +31 -0
  179. package/dist/utils/errors.js.map +1 -1
  180. package/dist/utils/errors.test.js +4 -1
  181. package/dist/utils/errors.test.js.map +1 -1
  182. package/dist/wizard/questions.d.ts +4 -0
  183. package/dist/wizard/questions.d.ts.map +1 -1
  184. package/dist/wizard/questions.js +59 -1
  185. package/dist/wizard/questions.js.map +1 -1
  186. package/dist/wizard/questions.test.js +178 -4
  187. package/dist/wizard/questions.test.js.map +1 -1
  188. package/dist/wizard/wizard.d.ts +1 -0
  189. package/dist/wizard/wizard.d.ts.map +1 -1
  190. package/dist/wizard/wizard.js +4 -1
  191. package/dist/wizard/wizard.js.map +1 -1
  192. package/dist/wizard/wizard.test.js +102 -4
  193. package/dist/wizard/wizard.test.js.map +1 -1
  194. package/package.json +1 -1
@@ -0,0 +1,337 @@
1
+ ---
2
+ name: game-milestone-definitions
3
+ description: Standard game development milestones from concept through live ops, gate criteria, and task-wave mapping
4
+ topics: [game-dev, milestones, production, vertical-slice, alpha, beta]
5
+ ---
6
+
7
+ Game development milestones are the checkpoints that determine whether a project is on track, at risk, or should be cancelled. Unlike software sprints that deliver incremental value, game milestones represent qualitative gates — each one answers a fundamentally different question about the project. Missing a milestone gate criteria is a signal that should trigger re-evaluation, not just a schedule adjustment. The discipline to enforce gate criteria is what separates shipped games from cancelled ones.
8
+
9
+ ## Summary
10
+
11
+ ### Standard Milestone Sequence
12
+
13
+ Game development follows a well-established milestone progression, though studios may rename or combine stages:
14
+
15
+ 1. **Concept** — Is this idea worth exploring?
16
+ 2. **Pre-Production / Prototype** — Can we prove the core is fun?
17
+ 3. **Vertical Slice** — Can we build a representative slice at shippable quality?
18
+ 4. **First Playable** — Does the full game structure work?
19
+ 5. **Alpha (Feature Complete)** — Are all features implemented?
20
+ 6. **Beta (Content Complete)** — Is all content in the game?
21
+ 7. **Release Candidate** — Is the game ready to ship?
22
+ 8. **Gold Master / Launch** — The game ships.
23
+ 9. **Live / Post-Launch** — Ongoing support, patches, content updates.
24
+
25
+ ### Feature Complete vs Content Complete
26
+
27
+ These terms are frequently confused and the distinction matters:
28
+
29
+ - **Feature Complete (Alpha)**: Every gameplay system, mechanic, and tool is implemented and functional. Art and audio may be placeholder. Balance is rough. Bugs are acceptable. The question answered: "Does everything work?"
30
+ - **Content Complete (Beta)**: All levels, assets, dialogue, music, and UI are in the game at final quality. No new content will be added — only polish, optimization, and bug fixes from here. The question answered: "Is everything here?"
31
+
32
+ ### Content Lock vs Code Lock
33
+
34
+ - **Content Lock** occurs at Beta — no new art, audio, levels, or text enters the build
35
+ - **Code Lock** occurs at Release Candidate — no new code changes except critical bug fixes
36
+ - Violating these locks introduces regression risk and delays shipping
37
+
38
+ ### Milestone-to-Task-Wave Mapping
39
+
40
+ Each milestone maps to a wave of tasks that should be planned, estimated, and tracked:
41
+
42
+ - **Concept**: Design tasks only (research, competitive analysis, pitch document)
43
+ - **Pre-Production**: Design + engineering prototype tasks (throwaway code is expected)
44
+ - **Vertical Slice**: Full-discipline tasks (design, engineering, art, audio) at final quality for one slice
45
+ - **Alpha**: Engineering-heavy tasks (implement all remaining systems), art production ramps up
46
+ - **Beta**: Content production-heavy tasks (level building, asset finalization, localization)
47
+ - **Release Candidate**: QA-heavy tasks (bug fixing, performance optimization, platform certification)
48
+
49
+ ## Deep Guidance
50
+
51
+ ### Milestone 1: Concept
52
+
53
+ **Duration**: 1-4 weeks
54
+
55
+ **Gate question**: "Is this idea worth investing in?"
56
+
57
+ **Gate criteria:**
58
+ - Written pitch document (1-3 pages) covering: genre, target audience, core hook, competitive landscape, platform targets
59
+ - Game pillars defined (3-5, phrased as "X over Y" tradeoffs)
60
+ - Core loop described at a high level
61
+ - Market analysis: who are the competitors, what is the opportunity, what is the differentiation
62
+ - Initial scope estimate: team size, timeline, budget range
63
+ - Key risks identified with mitigation strategies
64
+
65
+ **Documentation expected:**
66
+ - Pitch document
67
+ - Competitive analysis spreadsheet
68
+ - Initial risk register
69
+
70
+ **Go/No-Go signals:**
71
+ - Go: Clear differentiation, viable market, team capable of executing, budget available
72
+ - No-Go: Undifferentiated from competitors, market too small, team lacks critical skills, scope exceeds budget
73
+
74
+ ### Milestone 2: Pre-Production / Prototype
75
+
76
+ **Duration**: 4-12 weeks
77
+
78
+ **Gate question**: "Is the core gameplay fun?"
79
+
80
+ **Gate criteria:**
81
+ - Playable prototype demonstrating the core loop (primary loop only)
82
+ - Prototype has been playtested by people outside the team
83
+ - Playtest feedback documented and analyzed
84
+ - Core loop validated as engaging: players voluntarily continue playing past the minimum test time
85
+ - Technical feasibility confirmed for highest-risk features
86
+ - Art style exploration complete with reference sheet or mood board
87
+ - Full GDD v1.0 written
88
+
89
+ **Documentation expected:**
90
+ - GDD v1.0
91
+ - Playtest reports (minimum 5 external testers)
92
+ - Technical feasibility assessment for top 3 risk items
93
+ - Art direction reference document
94
+ - Updated risk register
95
+
96
+ **Go/No-Go signals:**
97
+ - Go: Playtesters find the core loop engaging, technical risks are mitigable, art direction is clear
98
+ - No-Go: Core loop is not fun after iteration, a critical technical feature is infeasible, art direction is unresolved
99
+
100
+ **Critical rule**: The prototype is throwaway code. Do not carry prototype code into production. Its purpose is learning, not building.
101
+
102
+ ### Milestone 3: Vertical Slice
103
+
104
+ **Gate question**: "Can we build this game at shippable quality?"
105
+
106
+ **Duration**: 8-16 weeks
107
+
108
+ This is the most important milestone in game development. The vertical slice is a small, complete section of the game built to final quality. It represents 5-15 minutes of gameplay that is indistinguishable from the final product in terms of polish, art quality, audio quality, and gameplay feel.
109
+
110
+ **Gate criteria:**
111
+ - One complete section/level/area at final visual quality
112
+ - All core mechanics functional and polished in this section
113
+ - Final-quality art, audio, and UI for this section
114
+ - Performance targets met on target hardware for this section
115
+ - Build is stable (no crashes during a 30-minute play session)
116
+ - External playtest confirms the experience matches the intended pillar delivery
117
+
118
+ **Documentation expected:**
119
+ - Updated GDD reflecting lessons from vertical slice
120
+ - Production pipeline documentation (how assets are created, reviewed, integrated)
121
+ - Technical design document for all major systems
122
+ - Performance benchmark report on target hardware
123
+ - Updated project plan with revised scope and schedule
124
+
125
+ **Go/No-Go signals:**
126
+ - Go: The vertical slice is fun, visually compelling, technically sound, and producible at a sustainable pace
127
+ - No-Go: The slice is not fun, visual quality is below target, production pipeline is too slow, performance is unacceptable
128
+
129
+ **Why the vertical slice matters**: It is the "is this fun?" gate. Everything before this was theory and prototyping. The vertical slice is the first moment the team sees the actual game. If the vertical slice is not compelling, the full game will not be compelling. This is the cheapest point to cancel or pivot.
130
+
131
+ ```yaml
132
+ # Milestone Gate Checklist Template
133
+ # Copy and customize for each milestone review
134
+
135
+ milestone: "Vertical Slice"
136
+ date: "YYYY-MM-DD"
137
+ reviewers:
138
+ - name: ""
139
+ role: "Project Lead"
140
+ - name: ""
141
+ role: "Design Lead"
142
+ - name: ""
143
+ role: "Tech Lead"
144
+ - name: ""
145
+ role: "Art Lead"
146
+
147
+ gate_criteria:
148
+ gameplay:
149
+ - criterion: "Core loop playable end-to-end"
150
+ status: "pass | fail | partial"
151
+ notes: ""
152
+ - criterion: "All primary mechanics functional"
153
+ status: ""
154
+ notes: ""
155
+ - criterion: "External playtest completed (min 5 testers)"
156
+ status: ""
157
+ notes: ""
158
+ - criterion: "Playtest satisfaction score >= 7/10"
159
+ status: ""
160
+ notes: ""
161
+
162
+ technical:
163
+ - criterion: "Target framerate met (specify: 30/60 fps)"
164
+ status: ""
165
+ notes: ""
166
+ - criterion: "No crashes in 30-min session"
167
+ status: ""
168
+ notes: ""
169
+ - criterion: "Memory budget met on target platform"
170
+ status: ""
171
+ notes: ""
172
+ - criterion: "Load times within target (specify seconds)"
173
+ status: ""
174
+ notes: ""
175
+
176
+ art_audio:
177
+ - criterion: "Final-quality art for slice content"
178
+ status: ""
179
+ notes: ""
180
+ - criterion: "Final-quality audio for slice content"
181
+ status: ""
182
+ notes: ""
183
+ - criterion: "UI mockups approved for all screens"
184
+ status: ""
185
+ notes: ""
186
+
187
+ production:
188
+ - criterion: "Asset pipeline documented and tested"
189
+ status: ""
190
+ notes: ""
191
+ - criterion: "Content production rate is sustainable"
192
+ status: ""
193
+ notes: ""
194
+ - criterion: "Updated schedule based on actual velocity"
195
+ status: ""
196
+ notes: ""
197
+
198
+ decision: "go | no-go | conditional-go"
199
+ conditions: "" # If conditional-go, what must be resolved and by when
200
+ next_milestone: "First Playable"
201
+ next_review_date: "YYYY-MM-DD"
202
+ ```
203
+
204
+ ### Milestone 4: First Playable
205
+
206
+ **Duration**: 8-20 weeks after vertical slice
207
+
208
+ **Gate question**: "Does the full game structure work?"
209
+
210
+ **Gate criteria:**
211
+ - Complete game flow from start to finish (even if many sections use placeholder content)
212
+ - All primary and secondary gameplay systems implemented (may use placeholder art/audio)
213
+ - Save/load functional
214
+ - All game modes playable (single-player, multiplayer modes if applicable)
215
+ - Menu flow complete (main menu, settings, pause, game over)
216
+ - Build runs on all target platforms (does not need to meet final performance targets)
217
+
218
+ **Documentation expected:**
219
+ - Complete level/mission list with status (placeholder/WIP/final)
220
+ - System design documents for all gameplay systems
221
+ - Platform-specific technical notes
222
+ - Updated content production schedule
223
+
224
+ ### Milestone 5: Alpha (Feature Complete)
225
+
226
+ **Duration**: 12-30 weeks after first playable
227
+
228
+ **Gate question**: "Are all features implemented?"
229
+
230
+ **Gate criteria:**
231
+ - Every feature in the approved scope is implemented and functional
232
+ - No major systems are missing — this is the last point to add new features
233
+ - All difficulty levels/modes are playable
234
+ - Multiplayer networking is functional (if applicable)
235
+ - Platform-specific features implemented (achievements, save systems, controller support)
236
+ - All UI screens implemented (final art not required)
237
+ - Localization pipeline is functional (all strings are externalized)
238
+ - Automated test coverage for critical gameplay systems
239
+
240
+ **Documentation expected:**
241
+ - Feature completion matrix (every feature rated: implemented/functional/polished)
242
+ - Known issues list (bugs are expected; they should be categorized by severity)
243
+ - Performance baseline report
244
+ - Localization readiness report
245
+
246
+ **Critical rule**: No new features after Alpha. Feature requests after Alpha are deferred to post-launch or DLC. Scope discipline here determines whether the project ships on time.
247
+
248
+ ### Milestone 6: Beta (Content Complete)
249
+
250
+ **Duration**: 8-16 weeks after alpha
251
+
252
+ **Gate question**: "Is all content in the game?"
253
+
254
+ **Gate criteria:**
255
+ - All levels, missions, and encounters are in the game at final quality
256
+ - All art assets are final (no more placeholder art)
257
+ - All audio assets are final (music, SFX, voice acting)
258
+ - All text and dialogue are final and localized
259
+ - All cinematics and cutscenes are final
260
+ - Difficulty balance pass complete
261
+ - First-time user experience (FTUE) / tutorial is complete
262
+ - Platform certification pre-check passes (no certification blockers)
263
+
264
+ **Documentation expected:**
265
+ - Content completion matrix (every asset rated: draft/WIP/final)
266
+ - Localization status by language
267
+ - Balance spreadsheet with tuning parameters
268
+ - Certification pre-check report
269
+
270
+ **Critical rule**: Content lock. No new content after Beta. Only bug fixes, optimization, and polish.
271
+
272
+ ### Milestone 7: Release Candidate
273
+
274
+ **Duration**: 4-8 weeks after beta
275
+
276
+ **Gate question**: "Is the game ready to ship?"
277
+
278
+ **Gate criteria:**
279
+ - Zero critical (crash) bugs
280
+ - Zero high-severity gameplay-blocking bugs
281
+ - Performance targets met on all target platforms
282
+ - Platform certification requirements met (console TRCs/XRs, platform store requirements)
283
+ - All legal and ratings requirements met (ESRB, PEGI, age gates)
284
+ - Day-one patch scope defined (if applicable)
285
+ - Server infrastructure tested at expected launch load (if applicable)
286
+
287
+ **Documentation expected:**
288
+ - Bug database with all issues triaged and either fixed or deferred-to-patch
289
+ - Final performance report per platform
290
+ - Certification submission checklist
291
+ - Launch day operations plan
292
+
293
+ ### Milestone 8: Gold Master / Launch
294
+
295
+ **Gate question**: "Ship it?"
296
+
297
+ **Gate criteria:**
298
+ - Release Candidate approved by all leads
299
+ - Platform certification passed
300
+ - Store pages finalized (descriptions, screenshots, trailers)
301
+ - Marketing materials ready
302
+ - Community/support infrastructure ready (forums, bug reporting, social media)
303
+ - Day-one patch built and tested (if applicable)
304
+
305
+ ### Milestone 9: Live / Post-Launch
306
+
307
+ This is not a single gate but an ongoing phase. Key activities:
308
+
309
+ - Monitor crash reports, player feedback, and telemetry
310
+ - Release hotfix patches for critical issues within 24-72 hours
311
+ - First content update within 4-8 weeks to maintain player engagement
312
+ - Roadmap communication to community
313
+ - Live service operations (if applicable): seasons, battle passes, events, balance patches
314
+
315
+ ### Milestone Duration by Project Scale
316
+
317
+ | Milestone | Indie (6-18 mo) | AA (18-36 mo) | AAA (36-60+ mo) |
318
+ |-----------|:--:|:--:|:--:|
319
+ | Concept | 1-2 wk | 2-4 wk | 4-8 wk |
320
+ | Pre-Production | 2-4 wk | 4-12 wk | 8-24 wk |
321
+ | Vertical Slice | 4-8 wk | 8-16 wk | 12-24 wk |
322
+ | First Playable | 4-8 wk | 8-16 wk | 16-32 wk |
323
+ | Alpha | 4-12 wk | 12-24 wk | 24-52 wk |
324
+ | Beta | 2-4 wk | 4-12 wk | 12-24 wk |
325
+ | Release Candidate | 1-2 wk | 2-4 wk | 4-8 wk |
326
+
327
+ ### Common Milestone Anti-Patterns
328
+
329
+ **The Phantom Alpha**: The team declares "Alpha" but entire systems are still being designed. If features are still being added, it is not Alpha — it is still in production. Mislabeling milestones gives false schedule confidence.
330
+
331
+ **The Never-Ending Beta**: Content keeps being added after Beta because "just one more thing." Every addition resets QA testing. Content lock means content lock.
332
+
333
+ **The Missing Vertical Slice**: Skipping the vertical slice to "save time" and jumping straight to full production. This is the single most common cause of game cancellations — the team discovers the game is not fun only after spending most of the budget.
334
+
335
+ **Gate Criteria Inflation**: Making gates so strict that nothing passes, or so loose that everything passes. Gates should be difficult but achievable — their purpose is to catch real problems, not to create bureaucracy.
336
+
337
+ **The Orphan Milestone**: Defining milestones without assigning ownership for the gate review. Every milestone needs a named reviewer with authority to enforce the go/no-go decision.