@musashishao/agent-kit 1.9.0 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/.agent/agents/ai-asset-factory.md +700 -0
  2. package/.agent/agents/ai-audio-factory.md +503 -0
  3. package/.agent/agents/game-developer.md +4 -4
  4. package/.agent/agents/orchestrator.md +113 -3
  5. package/.agent/agents/project-planner.md +67 -0
  6. package/.agent/agents/unity-mobile-master.md +949 -0
  7. package/.agent/mcp/config/registry.json +65 -51
  8. package/.agent/mcp/servers/notebooklm/README.md +114 -0
  9. package/.agent/mcp/servers/notebooklm/package.json +35 -0
  10. package/.agent/mcp/servers/notebooklm/src/auth/chrome.ts +225 -0
  11. package/.agent/mcp/servers/notebooklm/src/auth/index.ts +1 -0
  12. package/.agent/mcp/servers/notebooklm/src/index.ts +516 -0
  13. package/.agent/mcp/servers/notebooklm/src/services/index.ts +3 -0
  14. package/.agent/mcp/servers/notebooklm/src/services/library.ts +217 -0
  15. package/.agent/mcp/servers/notebooklm/src/services/notebooklm.ts +380 -0
  16. package/.agent/mcp/servers/notebooklm/tsconfig.json +15 -0
  17. package/.agent/mcp-gateway/README.md +169 -20
  18. package/.agent/mcp-gateway/package.json +22 -7
  19. package/.agent/mcp-gateway/src/auth/index.ts +55 -0
  20. package/.agent/mcp-gateway/src/auth/middleware.ts +242 -0
  21. package/.agent/mcp-gateway/src/auth/oauth.ts +462 -0
  22. package/.agent/mcp-gateway/src/auth/scopes.ts +227 -0
  23. package/.agent/mcp-gateway/src/index.ts +252 -105
  24. package/.agent/mcp-gateway/src/observability/index.ts +5 -0
  25. package/.agent/mcp-gateway/src/observability/otel.ts +405 -0
  26. package/.agent/mcp-gateway/src/transports/index.ts +5 -0
  27. package/.agent/mcp-gateway/src/transports/streamableHttp.ts +235 -0
  28. package/.agent/rules/CODEX.md +89 -0
  29. package/.agent/rules/CODE_RULES.md +73 -0
  30. package/.agent/rules/GEMINI.md +25 -0
  31. package/.agent/rules/MEMORY_STATE.md +110 -0
  32. package/.agent/rules/REFERENCE.md +33 -141
  33. package/.agent/rules/REF_SKILLS.md +116 -0
  34. package/.agent/rules/REF_WORKFLOWS.md +81 -0
  35. package/.agent/scripts/ak_cli.py +106 -5
  36. package/.agent/scripts/memory_manager.py +48 -9
  37. package/.agent/skills/anti-hallucination/SKILL.md +295 -0
  38. package/.agent/skills/anti-hallucination/scripts/check_hallucination.py +299 -0
  39. package/.agent/skills/bifurcation-analysis/SKILL.md +56 -0
  40. package/.agent/skills/brainstorming/SKILL.md +80 -6
  41. package/.agent/skills/decision-memory/SKILL.md +317 -0
  42. package/.agent/skills/emergence-detector/SKILL.md +230 -0
  43. package/.agent/skills/emergence-detector/scripts/check_emergence.py +265 -0
  44. package/.agent/skills/explained-qa/SKILL.md +142 -0
  45. package/.agent/skills/explained-qa/game-terminology.md +214 -0
  46. package/.agent/skills/game-development/ai-dialogue-engine/SKILL.md +442 -0
  47. package/.agent/skills/game-development/ai-graphics-generator/SKILL.md +463 -0
  48. package/.agent/skills/game-development/ai-playtest-framework/SKILL.md +570 -0
  49. package/.agent/skills/game-development/camera-systems/SKILL.md +607 -0
  50. package/.agent/skills/game-development/card-battle-engine/SKILL.md +618 -0
  51. package/.agent/skills/game-development/character-controller-3d/SKILL.md +908 -0
  52. package/.agent/skills/game-development/cloud-save-sync/SKILL.md +527 -0
  53. package/.agent/skills/game-development/combat-system/SKILL.md +748 -0
  54. package/.agent/skills/game-development/compliance-rating/SKILL.md +277 -0
  55. package/.agent/skills/game-development/crossplatform-build/SKILL.md +386 -0
  56. package/.agent/skills/game-development/cultivation-progression/SKILL.md +520 -0
  57. package/.agent/skills/game-development/data-driven-balance/SKILL.md +535 -0
  58. package/.agent/skills/game-development/game-analytics-integrator/SKILL.md +410 -0
  59. package/.agent/skills/game-development/game-audio-advanced/SKILL.md +646 -0
  60. package/.agent/skills/game-development/game-economy-designer/SKILL.md +375 -0
  61. package/.agent/skills/game-development/game-marketing/SKILL.md +85 -0
  62. package/.agent/skills/game-development/game-state-manager/SKILL.md +883 -0
  63. package/.agent/skills/game-development/hybrid-game-spec/SKILL.md +220 -0
  64. package/.agent/skills/game-development/inventory-quest/SKILL.md +747 -0
  65. package/.agent/skills/game-development/liveops/SKILL.md +308 -0
  66. package/.agent/skills/game-development/localization/SKILL.md +286 -0
  67. package/.agent/skills/game-development/mobile-input-patterns/SKILL.md +343 -0
  68. package/.agent/skills/game-development/monetization-strategy/SKILL.md +94 -0
  69. package/.agent/skills/game-development/multiplayer-master/SKILL.md +727 -0
  70. package/.agent/skills/game-development/narrative-branching/SKILL.md +593 -0
  71. package/.agent/skills/game-development/procedural-level-ai/SKILL.md +367 -0
  72. package/.agent/skills/game-development/prototyping-rapid/SKILL.md +205 -0
  73. package/.agent/skills/game-development/spec-ecosystem/SKILL.md +155 -0
  74. package/.agent/skills/game-development/spec-ecosystem/decision-log-format.md +129 -0
  75. package/.agent/skills/game-development/spec-ecosystem/templates/PLAN-template.md +178 -0
  76. package/.agent/skills/game-development/spec-ecosystem/templates/SPEC-template.md +110 -0
  77. package/.agent/skills/game-development/spec-ecosystem/templates/TASKS-template.md +156 -0
  78. package/.agent/skills/game-development/survival-systems/SKILL.md +493 -0
  79. package/.agent/skills/game-development/testing-qa/SKILL.md +270 -0
  80. package/.agent/skills/game-development/unity-mobile-optimization/SKILL.md +271 -0
  81. package/.agent/skills/intent-capture/SKILL.md +65 -0
  82. package/.agent/skills/mcp-composition/SKILL.md +362 -0
  83. package/.agent/skills/mcp-observability/SKILL.md +323 -0
  84. package/.agent/skills/mcp-security/SKILL.md +314 -0
  85. package/.agent/skills/trust-spectrum/SKILL.md +291 -0
  86. package/.agent/skills/vibe-coding-guard/SKILL.md +328 -0
  87. package/.agent/templates/AGENTS.game.md +63 -0
  88. package/.agent/templates/docs/WORKFLOW_GUIDE.en.md +100 -0
  89. package/.agent/templates/docs/WORKFLOW_GUIDE.vi.md +100 -0
  90. package/.agent/workflows/ai-agent.md +2 -0
  91. package/.agent/workflows/autofix.md +1 -0
  92. package/.agent/workflows/brainstorm.md +1 -0
  93. package/.agent/workflows/context.md +1 -0
  94. package/.agent/workflows/create.md +39 -8
  95. package/.agent/workflows/dashboard.md +1 -0
  96. package/.agent/workflows/debug.md +14 -0
  97. package/.agent/workflows/deploy.md +14 -0
  98. package/.agent/workflows/enhance.md +44 -0
  99. package/.agent/workflows/gamekit-init.md +177 -0
  100. package/.agent/workflows/gamekit-launch.md +338 -0
  101. package/.agent/workflows/gamekit-plan.md +204 -0
  102. package/.agent/workflows/gamekit-qa.md +153 -0
  103. package/.agent/workflows/gamekit-spec.md +243 -0
  104. package/.agent/workflows/gamekit-tasks.md +208 -0
  105. package/.agent/workflows/marketing.md +2 -0
  106. package/.agent/workflows/next.md +1 -0
  107. package/.agent/workflows/orchestrate.md +12 -0
  108. package/.agent/workflows/pentest.md +2 -0
  109. package/.agent/workflows/plan.md +42 -0
  110. package/.agent/workflows/preview.md +1 -0
  111. package/.agent/workflows/quality.md +1 -0
  112. package/.agent/workflows/saas.md +2 -0
  113. package/.agent/workflows/spec.md +42 -0
  114. package/.agent/workflows/status.md +1 -0
  115. package/.agent/workflows/test.md +14 -0
  116. package/.agent/workflows/ui-ux-pro-max.md +1 -0
  117. package/bin/cli.js +411 -111
  118. package/package.json +1 -2
  119. package/.agent/agents/game-asset-curator.md +0 -317
  120. package/.agent/agents/game-narrative-designer.md +0 -310
  121. package/.agent/agents/game-qa-agent.md +0 -441
  122. package/.agent/workflows/game-prototype.md +0 -154
  123. package/docs/AI_DATA_INFRASTRUCTURE.md +0 -288
  124. package/docs/CHANGELOG_AI_INFRA.md +0 -141
  125. package/docs/MIGRATION_GUIDE_V1.9.md +0 -55
@@ -0,0 +1,375 @@
1
+ ---
2
+ name: game-economy-designer
3
+ description: AI-powered F2P game economy design. Currency systems, progression curves, monetization patterns, gacha math, and balance simulation for mobile games.
4
+ allowed-tools: Read, Write, Edit, Bash, Grep, WebSearch
5
+ ---
6
+
7
+ # Game Economy Designer Skill
8
+
9
+ > Design profitable, fair, and engaging F2P economies with AI assistance.
10
+
11
+ ---
12
+
13
+ ## When to Use
14
+
15
+ - Designing currency systems for F2P games
16
+ - Balancing progression and monetization
17
+ - Implementing IAP, ads, battle passes
18
+ - Gacha/loot box probability design
19
+ - Revenue projection and modeling
20
+
21
+ ---
22
+
23
+ ## Currency Design
24
+
25
+ ### Three-Currency Model
26
+
27
+ | Currency | Earn Method | Spend On | Psychology |
28
+ |----------|-------------|----------|------------|
29
+ | **Soft** (Coins) | Gameplay | Basic items, upgrades | Progression feeling |
30
+ | **Hard** (Gems) | IAP, rare drops | Premium items, skips | Scarcity value |
31
+ | **Premium** (Tickets) | Events, special | Exclusive content | FOMO, collectibility |
32
+
33
+ ### Conversion Ratios
34
+ ```
35
+ Soft ←→ Hard: 100:1 (indirect via time)
36
+ Hard ←→ Real $: 100 = $0.99
37
+
38
+ Example packs:
39
+ 100 Gems = $0.99 (worst value, impulse)
40
+ 500 Gems = $4.99 (10% bonus)
41
+ 1200 Gems = $9.99 (20% bonus)
42
+ 2800 Gems = $19.99 (40% bonus, best value)
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Progression Curves
48
+
49
+ ### XP Formula
50
+ ```csharp
51
+ public static int XPForLevel(int level)
52
+ {
53
+ // Exponential curve with diminishing returns
54
+ return Mathf.RoundToInt(100 * Mathf.Pow(level, 1.5f));
55
+ }
56
+
57
+ // Level 1: 100 XP
58
+ // Level 5: 559 XP
59
+ // Level 10: 1000 XP
60
+ // Level 20: 1789 XP
61
+ // Level 50: 3536 XP
62
+ ```
63
+
64
+ ### Unlock Schedule
65
+ ```
66
+ Level 1-5: Tutorial (all features locked)
67
+ Level 5: Daily Challenges unlocked
68
+ Level 10: PvP unlocked
69
+ Level 15: Crafting unlocked
70
+ Level 20: Guilds unlocked
71
+ Level 30: Events unlocked
72
+ Level 50+: Prestige/Endgame
73
+ ```
74
+
75
+ ---
76
+
77
+ ## Monetization Patterns
78
+
79
+ ### IAP Pricing Psychology
80
+
81
+ | Tier | Price | Target | Examples |
82
+ |------|-------|--------|----------|
83
+ | **Micro** | $0.99-1.99 | Impulse buyers | Extra lives, small packs |
84
+ | **Small** | $4.99-9.99 | Engaged players | Remove ads, starter packs |
85
+ | **Medium** | $14.99-24.99 | Committed | Season pass, larger packs |
86
+ | **Whale** | $49.99-99.99 | Big spenders | Ultimate bundles |
87
+
88
+ ### Starter Pack Design
89
+ ```json
90
+ {
91
+ "name": "Starter Pack",
92
+ "price": 4.99,
93
+ "originalValue": 14.99,
94
+ "discount": "67% OFF",
95
+ "oneTimePurchase": true,
96
+ "contents": [
97
+ {"item": "gems", "amount": 500},
98
+ {"item": "exclusive_skin", "amount": 1},
99
+ {"item": "premium_currency", "amount": 100}
100
+ ],
101
+ "availability": "first_7_days"
102
+ }
103
+ ```
104
+
105
+ ### Battle Pass Design
106
+ ```markdown
107
+ ## Battle Pass Structure
108
+
109
+ **Duration:** 30 days
110
+ **Levels:** 50
111
+ **XP per level:** 1000 (5 games avg)
112
+
113
+ ### Free Track
114
+ - Level 5: 100 Coins
115
+ - Level 10: Common Skin
116
+ - Level 20: 50 Gems
117
+ - Level 30: Rare Item
118
+ - Level 50: Unique Title
119
+
120
+ ### Premium Track ($9.99)
121
+ - All Free Track rewards
122
+ - Level 1: Premium Frame
123
+ - Level 5: 200 Coins
124
+ - Level 10: Rare Skin
125
+ - Level 20: 100 Gems
126
+ - Level 30: Legendary Item
127
+ - Level 50: Exclusive Character
128
+
129
+ ### Catch-Up Mechanic
130
+ - Buy levels: 150 Gems each
131
+ - XP boost purchasable
132
+ ```
133
+
134
+ ---
135
+
136
+ ## Gacha/Loot Box Math
137
+
138
+ ### Probability Table
139
+ ```csharp
140
+ public class GachaSystem
141
+ {
142
+ public static readonly Dictionary<Rarity, float> BaseRates = new()
143
+ {
144
+ [Rarity.Common] = 60f,
145
+ [Rarity.Uncommon] = 25f,
146
+ [Rarity.Rare] = 10f,
147
+ [Rarity.Epic] = 4f,
148
+ [Rarity.Legendary] = 1f
149
+ };
150
+
151
+ // Pity system: Guaranteed legendary after N pulls
152
+ private int _pullsSinceLegendary = 0;
153
+ private const int PITY_THRESHOLD = 90;
154
+
155
+ public Rarity Pull()
156
+ {
157
+ _pullsSinceLegendary++;
158
+
159
+ // Pity guarantee
160
+ if (_pullsSinceLegendary >= PITY_THRESHOLD)
161
+ {
162
+ _pullsSinceLegendary = 0;
163
+ return Rarity.Legendary;
164
+ }
165
+
166
+ // Soft pity: Increase rates near threshold
167
+ float legendaryRate = BaseRates[Rarity.Legendary];
168
+ if (_pullsSinceLegendary > 75)
169
+ legendaryRate += (_pullsSinceLegendary - 75) * 2f;
170
+
171
+ return WeightedRandom(legendaryRate);
172
+ }
173
+ }
174
+ ```
175
+
176
+ ### Expected Value Calculation
177
+ ```
178
+ Single pull cost: 100 Gems ($0.99)
179
+ Legendary rate: 1%
180
+ Pity: 90 pulls
181
+
182
+ Expected pulls for legendary:
183
+ - Lucky: ~37 pulls (median with pity)
184
+ - Worst case: 90 pulls (guaranteed)
185
+ - Average: ~62 pulls
186
+
187
+ Expected cost for legendary:
188
+ - Average: 62 × $0.99 = $61.38
189
+ - Worst: 90 × $0.99 = $89.10
190
+ ```
191
+
192
+ ---
193
+
194
+ ## Ad Integration
195
+
196
+ ### Rewarded Video Placement
197
+ ```csharp
198
+ public class AdManager
199
+ {
200
+ public enum AdPlacement
201
+ {
202
+ DoubleCoins, // After level complete
203
+ ExtraLife, // On death
204
+ DailyBonus, // Once per day
205
+ SpeedUpTimer, // Skip wait time
206
+ FreeGacha // One free pull
207
+ }
208
+
209
+ public int GetDailyLimit(AdPlacement placement)
210
+ {
211
+ return placement switch
212
+ {
213
+ AdPlacement.DoubleCoins => 5,
214
+ AdPlacement.ExtraLife => 3,
215
+ AdPlacement.DailyBonus => 1,
216
+ AdPlacement.SpeedUpTimer => 10,
217
+ AdPlacement.FreeGacha => 1,
218
+ _ => 3
219
+ };
220
+ }
221
+ }
222
+ ```
223
+
224
+ ### Revenue Mix Target
225
+ ```
226
+ Typical F2P Mobile Game:
227
+ - IAP: 70%
228
+ - Ads: 25%
229
+ - Subscriptions: 5%
230
+
231
+ Hyper-Casual:
232
+ - IAP: 20%
233
+ - Ads: 80%
234
+
235
+ Mid-Core:
236
+ - IAP: 85%
237
+ - Ads: 10%
238
+ - Subscriptions: 5%
239
+ ```
240
+
241
+ ---
242
+
243
+ ## AI Economy Generator
244
+
245
+ ### Prompt Template
246
+ ```
247
+ Design a F2P economy for a {genre} mobile game.
248
+
249
+ Requirements:
250
+ - Target ARPU: ${arpu}
251
+ - Session length: {session_length} minutes
252
+ - Retention focus: {D1/D7/D30}
253
+
254
+ Output:
255
+ 1. Currency definitions (soft, hard, premium)
256
+ 2. Progression curve (levels 1-50)
257
+ 3. IAP catalog (5-8 products)
258
+ 4. Ad placements and limits
259
+ 5. Revenue projection
260
+
261
+ Format as JSON.
262
+ ```
263
+
264
+ ### Example Output
265
+ ```json
266
+ {
267
+ "currencies": {
268
+ "coins": {
269
+ "type": "soft",
270
+ "earnRate": "10-50 per level",
271
+ "uses": ["upgrades", "consumables"]
272
+ },
273
+ "gems": {
274
+ "type": "hard",
275
+ "earnRate": "5 per day from ads",
276
+ "purchasable": true
277
+ }
278
+ },
279
+ "progression": {
280
+ "maxLevel": 100,
281
+ "xpCurve": "level^1.5 * 100",
282
+ "keyUnlocks": {
283
+ "5": "Daily Challenges",
284
+ "10": "PvP Mode",
285
+ "20": "Guilds"
286
+ }
287
+ },
288
+ "iapCatalog": [
289
+ {"id": "remove_ads", "price": 2.99, "type": "non_consumable"},
290
+ {"id": "starter_pack", "price": 4.99, "gems": 500, "oneTime": true},
291
+ {"id": "gems_100", "price": 0.99, "gems": 100},
292
+ {"id": "gems_500", "price": 4.99, "gems": 550},
293
+ {"id": "battle_pass", "price": 9.99, "duration": "30_days"}
294
+ ],
295
+ "projectedMetrics": {
296
+ "arpu": 0.52,
297
+ "arppu": 8.50,
298
+ "conversionRate": 0.06
299
+ }
300
+ }
301
+ ```
302
+
303
+ ---
304
+
305
+ ## Balance Simulation
306
+
307
+ ```csharp
308
+ public class EconomySimulator
309
+ {
310
+ public SimulationResult RunSimulation(EconomyConfig config, int days, int players)
311
+ {
312
+ var results = new SimulationResult();
313
+
314
+ for (int p = 0; p < players; p++)
315
+ {
316
+ var player = new SimulatedPlayer(GetRandomPlayerType());
317
+
318
+ for (int d = 0; d < days; d++)
319
+ {
320
+ player.PlayDay(config);
321
+ results.TrackDay(player, d);
322
+ }
323
+
324
+ results.TrackPlayer(player);
325
+ }
326
+
327
+ return results;
328
+ }
329
+
330
+ private PlayerType GetRandomPlayerType()
331
+ {
332
+ float r = Random.value;
333
+ if (r < 0.70f) return PlayerType.FreeToPlay;
334
+ if (r < 0.90f) return PlayerType.Minnow;
335
+ if (r < 0.98f) return PlayerType.Dolphin;
336
+ return PlayerType.Whale;
337
+ }
338
+ }
339
+
340
+ public enum PlayerType
341
+ {
342
+ FreeToPlay, // Never pays
343
+ Minnow, // <$10 total
344
+ Dolphin, // $10-100 total
345
+ Whale // >$100 total
346
+ }
347
+ ```
348
+
349
+ ---
350
+
351
+ ## Compliance Considerations
352
+
353
+ | Regulation | Requirements |
354
+ |------------|--------------|
355
+ | **COPPA** | No IAP targeting <13, parental gates |
356
+ | **GDPR** | Data consent, deletion rights |
357
+ | **Loot Box Laws** | Disclose rates (Belgium, Netherlands ban) |
358
+ | **App Store** | Age ratings, rate disclosure |
359
+ | **Google Play** | Loot box rate disclosure in listing |
360
+
361
+ ---
362
+
363
+ ## Anti-Patterns
364
+
365
+ | ❌ Don't | ✅ Do |
366
+ |----------|-------|
367
+ | Pay-to-win mechanics | Pay-to-progress, cosmetics |
368
+ | Hidden probabilities | Transparent gacha rates |
369
+ | Infinite grind walls | Reasonable progression |
370
+ | Target children with IAP | Age-appropriate design |
371
+ | No pity system | Guaranteed outcomes |
372
+
373
+ ---
374
+
375
+ > **Remember:** A good economy feels fair while being profitable.
@@ -0,0 +1,85 @@
1
+ ---
2
+ name: game-marketing
3
+ description: Expertise in App Store Optimization (ASO), User Acquisition (UA), and game launch strategies.
4
+ allowed-tools: Read, Write, Edit, Glob, Grep
5
+ ---
6
+
7
+ # 📣 Game Marketing & Growth
8
+
9
+ > **Purpose:** Maximize game visibility, downloads, and user retention.
10
+
11
+ ---
12
+
13
+ ## 1. App Store Optimization (ASO)
14
+
15
+ ### Keywords & Metadata
16
+ - **Title:** Brand Name + High volume keywords (e.g., "Block Blast - Puzzle Game").
17
+ - **Subtitle/Short Desc:** Hook in 80 chars. Value prop.
18
+ - **Description:** SEO-rich text. First 3 lines matter most.
19
+
20
+ ### Visual Assets
21
+ - **Icon:** High contrast, no small text. Face or character often works best.
22
+ - **Screenshots:** Show gameplay, not just cinematics. Use captions.
23
+ - **Video Preview:** First 5 seconds are critical. Fast cuts.
24
+
25
+ ---
26
+
27
+ ## 2. User Acquisition (UA)
28
+
29
+ ### Channels
30
+ 1. **Organic Social:** TikTok/Shorts (Viral potential), Reddit (Devlogs).
31
+ 2. **Paid Ads:** Meta (Facebook/Instagram), Unity Ads, AppLovin.
32
+ 3. **Influencers:** Streamers/YouTubers (High trust factor).
33
+
34
+ ### Creative Strategy
35
+ - **Gameplay-first:** Show the core loop immediately.
36
+ - **"Fail" Ads:** "Only 1% can pass level 3" (Controversial but effective).
37
+ - **UGC style:** Ads that look like user reviews/TikToks.
38
+
39
+ ---
40
+
41
+ ## 3. Community Building
42
+
43
+ ### Platforms
44
+ - **Discord:** Your "Hardcore" fanbase. Use for beta testing and feedback.
45
+ - **Reddit:** r/gamedev, r/indiegames. Share development journey.
46
+ - **Twitter/X:** Networking with other devs and publishers.
47
+
48
+ ### Engagement
49
+ - **Devlogs:** Regular updates on progress.
50
+ - **Playtests:** Invite community to exclusive builds.
51
+ - **Feedback Loop:** Show that you listen to player suggestions.
52
+
53
+ ---
54
+
55
+ ## 4. Launch Strategy
56
+
57
+ ### Timeline
58
+ 1. **Pre-Registration (1-2 months out):** Build hype, collect emails/wishlists.
59
+ 2. **Soft Launch (Geo-beta):** Release in a cheap market (e.g., Philippines, Brazil) to test retention/monetization and fix bugs.
60
+ 3. **Global Launch:** Marketing blitz. Contact App Store editors for featuring.
61
+ 4. **LiveOps:** Post-launch events, updates, seasonal content.
62
+
63
+ ---
64
+
65
+ ## 5. Analytics & KPIs
66
+
67
+ | Metric | Meaning | Target (Good) |
68
+ |--------|---------|---------------|
69
+ | **Retention D1** | % Users returning after 1 day | > 35-40% |
70
+ | **Retention D7** | % Users returning after 7 days | > 15-20% |
71
+ | **LTV** | Lifetime Value (Avg $ per user) | > CPI |
72
+ | **CPI** | Cost Per Install (Ad spend) | < LTV |
73
+
74
+ ---
75
+
76
+ ## Usage Example
77
+
78
+ **User:** "My game is ready, how do I launch?"
79
+
80
+ **Agent Response:**
81
+ "Don't do a Global Launch immediately.
82
+ 1. **Soft Launch:** Release in Canada or Australia first.
83
+ 2. **Measure:** Check D1 Retention. If < 30%, fix gameplay before spending on ads.
84
+ 3. **ASO:** A/B test your icon and screenshots during soft launch.
85
+ 4. **Global:** Once metrics are healthy, open Pre-registration globally."