gameforge-cli 0.1.0 → 0.2.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/README.md +81 -41
- package/dist/agents/base/BaseAgent.d.ts +31 -0
- package/dist/agents/base/BaseAgent.d.ts.map +1 -1
- package/dist/agents/base/BaseAgent.js +57 -0
- package/dist/agents/base/BaseAgent.js.map +1 -1
- package/dist/agents/core/Architect.d.ts +17 -5
- package/dist/agents/core/Architect.d.ts.map +1 -1
- package/dist/agents/core/Architect.js +263 -150
- package/dist/agents/core/Architect.js.map +1 -1
- package/dist/agents/core/Chaos.d.ts +4 -0
- package/dist/agents/core/Chaos.d.ts.map +1 -1
- package/dist/agents/core/Chaos.js +46 -11
- package/dist/agents/core/Chaos.js.map +1 -1
- package/dist/agents/core/Consistency.d.ts +1 -0
- package/dist/agents/core/Consistency.d.ts.map +1 -1
- package/dist/agents/core/Consistency.js +86 -11
- package/dist/agents/core/Consistency.js.map +1 -1
- package/dist/agents/core/Modifier.d.ts +13 -0
- package/dist/agents/core/Modifier.d.ts.map +1 -0
- package/dist/agents/core/Modifier.js +141 -0
- package/dist/agents/core/Modifier.js.map +1 -0
- package/dist/agents/core/Remediation.d.ts +3 -1
- package/dist/agents/core/Remediation.d.ts.map +1 -1
- package/dist/agents/core/Remediation.js +63 -3
- package/dist/agents/core/Remediation.js.map +1 -1
- package/dist/agents/specialists/CreativeSpecialist.d.ts.map +1 -1
- package/dist/agents/specialists/CreativeSpecialist.js +94 -25
- package/dist/agents/specialists/CreativeSpecialist.js.map +1 -1
- package/dist/agents/specialists/EntitySpecialist.d.ts.map +1 -1
- package/dist/agents/specialists/EntitySpecialist.js +63 -25
- package/dist/agents/specialists/EntitySpecialist.js.map +1 -1
- package/dist/agents/specialists/FeatureSpecialist.d.ts.map +1 -1
- package/dist/agents/specialists/FeatureSpecialist.js +53 -39
- package/dist/agents/specialists/FeatureSpecialist.js.map +1 -1
- package/dist/agents/specialists/TechSpecialist.d.ts.map +1 -1
- package/dist/agents/specialists/TechSpecialist.js +69 -32
- package/dist/agents/specialists/TechSpecialist.js.map +1 -1
- package/dist/config/schema.d.ts +1319 -709
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +142 -52
- package/dist/config/schema.js.map +1 -1
- package/dist/config/templates.d.ts.map +1 -1
- package/dist/config/templates.js +6 -66
- package/dist/config/templates.js.map +1 -1
- package/dist/core/Orchestrator.d.ts +17 -3
- package/dist/core/Orchestrator.d.ts.map +1 -1
- package/dist/core/Orchestrator.js +46 -16
- package/dist/core/Orchestrator.js.map +1 -1
- package/dist/index.js +335 -195
- package/dist/index.js.map +1 -1
- package/dist/types/issueReview.d.ts +19 -0
- package/dist/types/issueReview.d.ts.map +1 -0
- package/dist/types/issueReview.js +3 -0
- package/dist/types/issueReview.js.map +1 -0
- package/dist/utils/costTracker.d.ts +28 -0
- package/dist/utils/costTracker.d.ts.map +1 -1
- package/dist/utils/costTracker.js +71 -1
- package/dist/utils/costTracker.js.map +1 -1
- package/dist/utils/disambiguationHelper.d.ts +54 -0
- package/dist/utils/disambiguationHelper.d.ts.map +1 -0
- package/dist/utils/disambiguationHelper.js +252 -0
- package/dist/utils/disambiguationHelper.js.map +1 -0
- package/dist/utils/issueReviewer.d.ts +6 -0
- package/dist/utils/issueReviewer.d.ts.map +1 -0
- package/dist/utils/issueReviewer.js +159 -0
- package/dist/utils/issueReviewer.js.map +1 -0
- package/dist/utils/issueSelector.d.ts +26 -0
- package/dist/utils/issueSelector.d.ts.map +1 -0
- package/dist/utils/issueSelector.js +132 -0
- package/dist/utils/issueSelector.js.map +1 -0
- package/package.json +1 -1
- package/dist/core/CheckpointManager.d.ts +0 -16
- package/dist/core/CheckpointManager.d.ts.map +0 -1
- package/dist/core/CheckpointManager.js +0 -52
- package/dist/core/CheckpointManager.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAC;AAGH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAK7B,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyDxB,CAAC;AAGH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8DvB,CAAC;AAGH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCzB,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8B1B,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,gEACgK,CAAC;AAGvL,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2B1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
package/dist/config/schema.js
CHANGED
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GameBibleSchema = exports.TechnicalSchema = exports.CreativeSchema = exports.EntitySchema = exports.FeatureSchema = exports.ExternalDataSchema = exports.MathFormulaSchema =
|
|
3
|
+
exports.GameBibleSchema = exports.ScopeEnum = exports.TechnicalSchema = exports.CreativeSchema = exports.EntitySchema = exports.FeatureSchema = exports.ExternalDataSchema = exports.MathFormulaSchema = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
|
-
//
|
|
6
|
-
exports.EngineSchema = zod_1.z.object({
|
|
7
|
-
primary: zod_1.z.enum(['Unreal Engine 5', 'Unity', 'Godot', 'Custom']),
|
|
8
|
-
version: zod_1.z.string(), // e.g., "5.4", "2023.2"
|
|
9
|
-
plugins: zod_1.z.array(zod_1.z.string()).optional(), // ["Niagara", "Chaos Physics"]
|
|
10
|
-
reasoning: zod_1.z.string().optional() // Why this engine was chosen
|
|
11
|
-
});
|
|
12
|
-
// Math formula with validation
|
|
5
|
+
// Simplified formula description (design-focused, not code-focused)
|
|
13
6
|
exports.MathFormulaSchema = zod_1.z.object({
|
|
14
|
-
expression: zod_1.z.string(), // "
|
|
15
|
-
variables: zod_1.z.record(zod_1.z.object({
|
|
16
|
-
type: zod_1.z.enum(['int', 'float', 'bool']),
|
|
17
|
-
range: zod_1.z.string().optional() // "0.0-1.0"
|
|
18
|
-
})),
|
|
19
|
-
validated: zod_1.z.boolean().default(false),
|
|
7
|
+
expression: zod_1.z.string(), // "damage = base damage × multiplier"
|
|
20
8
|
balanceNotes: zod_1.z.string().optional() // Design reasoning
|
|
21
9
|
});
|
|
22
10
|
// External data (structured, not fake links)
|
|
@@ -36,25 +24,51 @@ exports.FeatureSchema = zod_1.z.object({
|
|
|
36
24
|
strategy: zod_1.z.enum(['None', 'IAP', 'Premium', 'Ads', 'Hybrid']),
|
|
37
25
|
implementation: zod_1.z.string().optional()
|
|
38
26
|
}).optional(),
|
|
39
|
-
gameplayLoop: zod_1.z.array(zod_1.z.string()), // For Mermaid diagram
|
|
40
|
-
uiRequirements: zod_1.z.array(zod_1.z.string()),
|
|
27
|
+
gameplayLoop: zod_1.z.array(zod_1.z.string()).optional(), // For Mermaid diagram - optional for non-gameplay features
|
|
28
|
+
uiRequirements: zod_1.z.array(zod_1.z.string()).default([]), // Optional, defaults to empty
|
|
41
29
|
technical: zod_1.z.object({
|
|
42
|
-
dataStructure: zod_1.z.string(), // Pseudo-code
|
|
43
|
-
mathFormulas: zod_1.z.array(exports.MathFormulaSchema).optional(),
|
|
44
|
-
fileLocation: zod_1.z.string(),
|
|
45
30
|
estimatedComplexity: zod_1.z.enum(['Low', 'Medium', 'High', 'Very High'])
|
|
46
31
|
}),
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
32
|
+
// Genre-specific optional fields
|
|
33
|
+
multiplayer: zod_1.z.object({
|
|
34
|
+
playerCount: zod_1.z.string(), // "2-4" or "1-100"
|
|
35
|
+
networkModel: zod_1.z.string().optional(), // Flexible: "P2P", "Client-Server", "Dedicated Server", etc.
|
|
36
|
+
syncStrategy: zod_1.z.string().optional() // "Lockstep", "Client prediction", etc.
|
|
37
|
+
}).optional(),
|
|
38
|
+
narrative: zod_1.z.object({
|
|
39
|
+
storyBeats: zod_1.z.array(zod_1.z.string()).optional(),
|
|
40
|
+
characters: zod_1.z.array(zod_1.z.string()).optional(), // Character IDs involved
|
|
41
|
+
choices: zod_1.z.array(zod_1.z.object({
|
|
42
|
+
prompt: zod_1.z.string(),
|
|
43
|
+
consequences: zod_1.z.string()
|
|
44
|
+
})).optional()
|
|
45
|
+
}).optional(),
|
|
46
|
+
economy: zod_1.z.object({
|
|
47
|
+
currencies: zod_1.z.array(zod_1.z.string()).optional(), // ["Gold", "Gems"]
|
|
48
|
+
tradeable: zod_1.z.boolean().optional(),
|
|
49
|
+
balanceFactors: zod_1.z.array(zod_1.z.string()).optional()
|
|
50
|
+
}).optional(),
|
|
51
|
+
progression: zod_1.z.object({
|
|
52
|
+
unlockConditions: zod_1.z.array(zod_1.z.string()).optional(),
|
|
53
|
+
skillTrees: zod_1.z.boolean().optional(),
|
|
54
|
+
levelScaling: zod_1.z.string().optional()
|
|
55
|
+
}).optional(),
|
|
56
|
+
procedural: zod_1.z.object({
|
|
57
|
+
algorithm: zod_1.z.string().optional(), // "Wave Function Collapse", "BSP", etc.
|
|
58
|
+
seed: zod_1.z.string().optional(),
|
|
59
|
+
constraints: zod_1.z.array(zod_1.z.string()).optional()
|
|
60
|
+
}).optional(),
|
|
61
|
+
physics: zod_1.z.object({
|
|
62
|
+
engine: zod_1.z.string().optional(), // "PhysX", "Havok", "Custom"
|
|
63
|
+
interactions: zod_1.z.array(zod_1.z.string()).optional(),
|
|
64
|
+
realism: zod_1.z.string().optional() // Flexible: "Arcade", "Realistic", "Semi-realistic", etc.
|
|
65
|
+
}).optional()
|
|
52
66
|
});
|
|
53
67
|
// Entity (NPC, Item, Monster)
|
|
54
68
|
exports.EntitySchema = zod_1.z.object({
|
|
55
69
|
id: zod_1.z.string(),
|
|
56
70
|
name: zod_1.z.string(),
|
|
57
|
-
category: zod_1.z.enum(['NPC', 'Monster', 'Item', 'Interactable']),
|
|
71
|
+
category: zod_1.z.enum(['NPC', 'Monster', 'Item', 'Interactable', 'Vehicle', 'Card', 'Building', 'Ability']), // Expanded categories
|
|
58
72
|
narrative: zod_1.z.object({
|
|
59
73
|
backstory: zod_1.z.string(),
|
|
60
74
|
dialogues: zod_1.z.array(zod_1.z.string()).optional(),
|
|
@@ -62,13 +76,48 @@ exports.EntitySchema = zod_1.z.object({
|
|
|
62
76
|
}).optional(),
|
|
63
77
|
stats: zod_1.z.object({
|
|
64
78
|
attributes: zod_1.z.record(zod_1.z.union([zod_1.z.string(), zod_1.z.number()])),
|
|
65
|
-
behaviors: zod_1.z.array(zod_1.z.string())
|
|
66
|
-
|
|
67
|
-
}),
|
|
79
|
+
behaviors: zod_1.z.array(zod_1.z.string()).default([]) // Optional behaviors
|
|
80
|
+
}).optional(), // Stats entirely optional for some entity types
|
|
68
81
|
references: zod_1.z.object({
|
|
69
82
|
features: zod_1.z.array(zod_1.z.string()).default([]), // Which features use this?
|
|
70
83
|
relatedEntities: zod_1.z.array(zod_1.z.string()).default([])
|
|
71
|
-
})
|
|
84
|
+
}).optional(),
|
|
85
|
+
// Genre-specific optional fields
|
|
86
|
+
combat: zod_1.z.object({
|
|
87
|
+
health: zod_1.z.number().optional(),
|
|
88
|
+
damage: zod_1.z.number().optional(),
|
|
89
|
+
armor: zod_1.z.number().optional(),
|
|
90
|
+
abilities: zod_1.z.array(zod_1.z.string()).optional()
|
|
91
|
+
}).optional(),
|
|
92
|
+
social: zod_1.z.object({
|
|
93
|
+
relationship: zod_1.z.string().optional(), // Flexible: "Friendly", "Rival", "Mentor", etc.
|
|
94
|
+
affectionLevel: zod_1.z.number().optional(),
|
|
95
|
+
questGiver: zod_1.z.boolean().optional(),
|
|
96
|
+
dialogue_tree: zod_1.z.string().optional() // Reference to dialogue file
|
|
97
|
+
}).optional(),
|
|
98
|
+
crafting: zod_1.z.object({
|
|
99
|
+
recipe: zod_1.z.array(zod_1.z.object({
|
|
100
|
+
ingredient: zod_1.z.string(),
|
|
101
|
+
quantity: zod_1.z.number()
|
|
102
|
+
})).optional(),
|
|
103
|
+
craftingTime: zod_1.z.number().optional(),
|
|
104
|
+
requiredStation: zod_1.z.string().optional()
|
|
105
|
+
}).optional(),
|
|
106
|
+
collectible: zod_1.z.object({
|
|
107
|
+
rarity: zod_1.z.string().optional(), // Flexible: "Common", "Rare", "SSR", "★★★", etc.
|
|
108
|
+
set: zod_1.z.string().optional(), // Part of a collection set
|
|
109
|
+
unlockReward: zod_1.z.string().optional()
|
|
110
|
+
}).optional(),
|
|
111
|
+
cardGame: zod_1.z.object({
|
|
112
|
+
cost: zod_1.z.number().optional(),
|
|
113
|
+
attack: zod_1.z.number().optional(),
|
|
114
|
+
defense: zod_1.z.number().optional(),
|
|
115
|
+
effects: zod_1.z.array(zod_1.z.string()).optional(),
|
|
116
|
+
cardType: zod_1.z.string().optional() // Flexible: "Unit", "Spell", "Playing Card", etc.
|
|
117
|
+
}).optional(),
|
|
118
|
+
ai: zod_1.z.object({
|
|
119
|
+
aiType: zod_1.z.string().optional() // Flexible: "Passive", "Aggressive", "Patrol", etc.
|
|
120
|
+
}).optional()
|
|
72
121
|
});
|
|
73
122
|
// Creative specifications
|
|
74
123
|
exports.CreativeSchema = zod_1.z.object({
|
|
@@ -81,29 +130,70 @@ exports.CreativeSchema = zod_1.z.object({
|
|
|
81
130
|
props: zod_1.z.number().default(0),
|
|
82
131
|
ui: zod_1.z.number().default(0),
|
|
83
132
|
sfx: zod_1.z.number().default(0),
|
|
84
|
-
music: zod_1.z.number().default(0)
|
|
133
|
+
music: zod_1.z.number().default(0),
|
|
134
|
+
// Genre-specific asset types
|
|
135
|
+
vehicles: zod_1.z.number().optional(),
|
|
136
|
+
weapons: zod_1.z.number().optional(),
|
|
137
|
+
cards: zod_1.z.number().optional(),
|
|
138
|
+
animations: zod_1.z.number().optional(),
|
|
139
|
+
cinematics: zod_1.z.number().optional(),
|
|
140
|
+
particles: zod_1.z.number().optional()
|
|
85
141
|
}),
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
142
|
+
// Genre-specific creative elements
|
|
143
|
+
visualNovel: zod_1.z.object({
|
|
144
|
+
artStyle2D: zod_1.z.string().optional(),
|
|
145
|
+
characterSprites: zod_1.z.number().optional(),
|
|
146
|
+
backgrounds: zod_1.z.number().optional(),
|
|
147
|
+
cg_count: zod_1.z.number().optional()
|
|
148
|
+
}).optional(),
|
|
149
|
+
rhythm: zod_1.z.object({
|
|
150
|
+
bpm_range: zod_1.z.string().optional(), // "120-180"
|
|
151
|
+
difficulty_levels: zod_1.z.array(zod_1.z.string()).optional(),
|
|
152
|
+
note_types: zod_1.z.array(zod_1.z.string()).optional()
|
|
153
|
+
}).optional(),
|
|
154
|
+
horror: zod_1.z.object({
|
|
155
|
+
atmosphere: zod_1.z.string().optional(),
|
|
156
|
+
scareTechniques: zod_1.z.array(zod_1.z.string()).optional(),
|
|
157
|
+
lighting: zod_1.z.string().optional()
|
|
158
|
+
}).optional()
|
|
90
159
|
});
|
|
91
|
-
// Technical infrastructure
|
|
160
|
+
// Technical infrastructure (high-level overview only)
|
|
92
161
|
exports.TechnicalSchema = zod_1.z.object({
|
|
93
|
-
engine:
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
162
|
+
engine: zod_1.z.object({
|
|
163
|
+
primary: zod_1.z.enum(['Unreal Engine 5', 'Unity', 'Godot', 'Custom']),
|
|
164
|
+
version: zod_1.z.string().optional(),
|
|
165
|
+
reasoning: zod_1.z.string().optional() // Why this engine was chosen
|
|
166
|
+
}),
|
|
167
|
+
buildTargets: zod_1.z.array(zod_1.z.enum([
|
|
168
|
+
'Windows', 'Mac', 'Linux', 'iOS', 'Android',
|
|
169
|
+
'Console', 'PlayStation', 'Xbox', 'Switch', 'Steam Deck'
|
|
170
|
+
])),
|
|
99
171
|
localization: zod_1.z.object({
|
|
100
172
|
strategy: zod_1.z.enum(['None', 'English Only', 'EFIGS', 'Global']),
|
|
101
|
-
languages: zod_1.z.array(zod_1.z.string()).optional()
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
173
|
+
languages: zod_1.z.array(zod_1.z.string()).optional()
|
|
174
|
+
}).optional(),
|
|
175
|
+
// Simplified multiplayer info
|
|
176
|
+
networking: zod_1.z.object({
|
|
177
|
+
architecture: zod_1.z.string().optional(), // "P2P", "Dedicated Server", "Client-Server"
|
|
178
|
+
maxPlayers: zod_1.z.number().optional()
|
|
179
|
+
}).optional(),
|
|
180
|
+
// Accessibility options (design decisions, not implementation)
|
|
181
|
+
accessibility: zod_1.z.object({
|
|
182
|
+
colorblindMode: zod_1.z.boolean().optional(),
|
|
183
|
+
subtitles: zod_1.z.boolean().optional(),
|
|
184
|
+
remappableControls: zod_1.z.boolean().optional(),
|
|
185
|
+
difficultyOptions: zod_1.z.boolean().optional()
|
|
186
|
+
}).optional()
|
|
106
187
|
});
|
|
188
|
+
/**
|
|
189
|
+
* Scope Guidelines for Game Bible Generation:
|
|
190
|
+
* - Prototype: 1-3 core features, prove the concept works. Minimal assets, single platform.
|
|
191
|
+
* - Vertical Slice: 3-5 features, one complete gameplay loop polished. Limited assets.
|
|
192
|
+
* - MVP: 5-8 features, shippable product with core experience complete. Moderate assets.
|
|
193
|
+
* - Full Game: 8+ features, complete vision realized. Full asset production.
|
|
194
|
+
*/
|
|
195
|
+
exports.ScopeEnum = zod_1.z.enum(['Prototype', 'Vertical Slice', 'MVP', 'Full Game'])
|
|
196
|
+
.describe('Prototype: 1-3 features, prove concept. Vertical Slice: 3-5 features, one complete loop. MVP: 5-8 features, shippable product. Full Game: 8+ features, complete vision.');
|
|
107
197
|
// Master Game Bible
|
|
108
198
|
exports.GameBibleSchema = zod_1.z.object({
|
|
109
199
|
meta: zod_1.z.object({
|
|
@@ -113,14 +203,14 @@ exports.GameBibleSchema = zod_1.z.object({
|
|
|
113
203
|
genre: zod_1.z.array(zod_1.z.string()), // ["Roguelike", "Deck-builder"]
|
|
114
204
|
targetPlatform: zod_1.z.array(zod_1.z.string()),
|
|
115
205
|
targetAudience: zod_1.z.string(),
|
|
116
|
-
estimatedScope:
|
|
206
|
+
estimatedScope: exports.ScopeEnum,
|
|
117
207
|
createdAt: zod_1.z.string(),
|
|
118
208
|
version: zod_1.z.string().default('1.0.0')
|
|
119
209
|
}),
|
|
120
|
-
features: zod_1.z.array(exports.FeatureSchema),
|
|
121
|
-
gameObjects: zod_1.z.array(exports.EntitySchema),
|
|
122
|
-
creative: exports.CreativeSchema,
|
|
123
|
-
technical: exports.TechnicalSchema,
|
|
210
|
+
features: zod_1.z.array(exports.FeatureSchema).default([]), // Optional features for simple games
|
|
211
|
+
gameObjects: zod_1.z.array(exports.EntitySchema).default([]), // Optional entities
|
|
212
|
+
creative: exports.CreativeSchema.optional(), // Optional for technical-only docs
|
|
213
|
+
technical: exports.TechnicalSchema.optional(), // Optional for creative-only docs
|
|
124
214
|
// Consistency tracking
|
|
125
215
|
validation: zod_1.z.object({
|
|
126
216
|
lastValidated: zod_1.z.string().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/config/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,eAAe,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/config/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,eAAe,EAAE,YAAY,EAyIzC,CAAC"}
|
package/dist/config/templates.js
CHANGED
|
@@ -21,17 +21,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
21
21
|
gameplayLoop: ['Generate level', 'Populate enemies', 'Place loot', 'Player explores'],
|
|
22
22
|
uiRequirements: ['Minimap', 'Room transition effect'],
|
|
23
23
|
technical: {
|
|
24
|
-
|
|
25
|
-
estimatedComplexity: 'High',
|
|
26
|
-
fileLocation: 'Source/Game/Generation/'
|
|
27
|
-
},
|
|
28
|
-
agile: {
|
|
29
|
-
epic: 'EPIC-001: Procedural Content',
|
|
30
|
-
userStories: [
|
|
31
|
-
'As a player, I want each run to feel unique',
|
|
32
|
-
'As a player, I want fair but challenging layouts'
|
|
33
|
-
],
|
|
34
|
-
acceptanceCriteria: ['No two runs identical', 'All rooms reachable']
|
|
24
|
+
estimatedComplexity: 'High'
|
|
35
25
|
}
|
|
36
26
|
},
|
|
37
27
|
{
|
|
@@ -42,17 +32,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
42
32
|
gameplayLoop: ['Player dies', 'Lose all items', 'Return to hub', 'Start new run'],
|
|
43
33
|
uiRequirements: ['Death screen', 'Run statistics display'],
|
|
44
34
|
technical: {
|
|
45
|
-
|
|
46
|
-
estimatedComplexity: 'Medium',
|
|
47
|
-
fileLocation: 'Source/Game/Core/'
|
|
48
|
-
},
|
|
49
|
-
agile: {
|
|
50
|
-
epic: 'EPIC-001: Core Loop',
|
|
51
|
-
userStories: [
|
|
52
|
-
'As a player, I want to see my progress across runs',
|
|
53
|
-
'As a player, I want to understand why I died'
|
|
54
|
-
],
|
|
55
|
-
acceptanceCriteria: ['All progress resets on death', 'Stats saved between runs']
|
|
35
|
+
estimatedComplexity: 'Medium'
|
|
56
36
|
}
|
|
57
37
|
}
|
|
58
38
|
]
|
|
@@ -77,17 +57,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
77
57
|
gameplayLoop: ['Till soil', 'Plant seeds', 'Water daily', 'Harvest crops', 'Sell for profit'],
|
|
78
58
|
uiRequirements: ['Crop info panel', 'Calendar widget', 'Inventory grid'],
|
|
79
59
|
technical: {
|
|
80
|
-
|
|
81
|
-
estimatedComplexity: 'Medium',
|
|
82
|
-
fileLocation: 'Source/Game/Farming/'
|
|
83
|
-
},
|
|
84
|
-
agile: {
|
|
85
|
-
epic: 'EPIC-001: Core Farming',
|
|
86
|
-
userStories: [
|
|
87
|
-
'As a player, I want to plant and harvest crops',
|
|
88
|
-
'As a player, I want to see crop growth progress'
|
|
89
|
-
],
|
|
90
|
-
acceptanceCriteria: ['Crops grow over time', 'Watering affects growth speed']
|
|
60
|
+
estimatedComplexity: 'Medium'
|
|
91
61
|
}
|
|
92
62
|
}
|
|
93
63
|
]
|
|
@@ -112,17 +82,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
112
82
|
gameplayLoop: ['Equip weapon', 'Aim at target', 'Fire', 'Reload', 'Switch weapons'],
|
|
113
83
|
uiRequirements: ['Crosshair', 'Ammo counter', 'Weapon selector'],
|
|
114
84
|
technical: {
|
|
115
|
-
|
|
116
|
-
estimatedComplexity: 'High',
|
|
117
|
-
fileLocation: 'Source/Game/Weapons/'
|
|
118
|
-
},
|
|
119
|
-
agile: {
|
|
120
|
-
epic: 'EPIC-001: Core Combat',
|
|
121
|
-
userStories: [
|
|
122
|
-
'As a player, I want responsive shooting mechanics',
|
|
123
|
-
'As a player, I want different weapons to feel unique'
|
|
124
|
-
],
|
|
125
|
-
acceptanceCriteria: ['Hit detection is accurate', 'Recoil patterns are consistent']
|
|
85
|
+
estimatedComplexity: 'High'
|
|
126
86
|
}
|
|
127
87
|
}
|
|
128
88
|
]
|
|
@@ -147,17 +107,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
147
107
|
gameplayLoop: ['Attack (costs stamina)', 'Dodge (costs stamina)', 'Wait for regen', 'Repeat'],
|
|
148
108
|
uiRequirements: ['Stamina bar', 'Enemy health bar', 'Lock-on indicator'],
|
|
149
109
|
technical: {
|
|
150
|
-
|
|
151
|
-
estimatedComplexity: 'High',
|
|
152
|
-
fileLocation: 'Source/Game/Combat/'
|
|
153
|
-
},
|
|
154
|
-
agile: {
|
|
155
|
-
epic: 'EPIC-001: Core Combat',
|
|
156
|
-
userStories: [
|
|
157
|
-
'As a player, I want combat to feel weighty and deliberate',
|
|
158
|
-
'As a player, I want to be punished for spamming attacks'
|
|
159
|
-
],
|
|
160
|
-
acceptanceCriteria: ['All actions consume stamina', 'Cannot act at 0 stamina']
|
|
110
|
+
estimatedComplexity: 'High'
|
|
161
111
|
}
|
|
162
112
|
}
|
|
163
113
|
]
|
|
@@ -182,17 +132,7 @@ exports.GENRE_TEMPLATES = [
|
|
|
182
132
|
gameplayLoop: ['Explore area', 'Find blocked path', 'Acquire new ability', 'Unlock new areas'],
|
|
183
133
|
uiRequirements: ['Map with ability markers', 'Ability icon display'],
|
|
184
134
|
technical: {
|
|
185
|
-
|
|
186
|
-
estimatedComplexity: 'High',
|
|
187
|
-
fileLocation: 'Source/Game/Abilities/'
|
|
188
|
-
},
|
|
189
|
-
agile: {
|
|
190
|
-
epic: 'EPIC-001: Exploration',
|
|
191
|
-
userStories: [
|
|
192
|
-
'As a player, I want to remember where I saw blocked paths',
|
|
193
|
-
'As a player, I want new abilities to open up the world'
|
|
194
|
-
],
|
|
195
|
-
acceptanceCriteria: ['Map shows ability-locked areas', 'Abilities unlock new traversal']
|
|
135
|
+
estimatedComplexity: 'High'
|
|
196
136
|
}
|
|
197
137
|
}
|
|
198
138
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/config/templates.ts"],"names":[],"mappings":";;;AAUa,QAAA,eAAe,GAAmB;IAC7C;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,wDAAwD;QACrE,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC;QAC3C,YAAY,EAAE;YACZ,IAAI,EAAE;gBACJ,KAAK,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;gBAC9B,cAAc,EAAE,KAAc;aACxB;YACR,QAAQ,EAAE;gBACR;oBACE,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,uBAAuB;oBAC7B,MAAM,EAAE,qDAAqD;oBAC7D,YAAY,EAAE,EAAE;oBAChB,YAAY,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,iBAAiB,CAAC;oBACrF,cAAc,EAAE,CAAC,SAAS,EAAE,wBAAwB,CAAC;oBACrD,SAAS,EAAE;wBACT,
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/config/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,25 @@
|
|
|
1
1
|
import { GameBible } from '../config/schema';
|
|
2
|
+
export interface SpinnerControl {
|
|
3
|
+
pause: () => void;
|
|
4
|
+
resume: (text?: string) => void;
|
|
5
|
+
}
|
|
2
6
|
export declare class SpecialistOrchestrator {
|
|
3
|
-
private
|
|
4
|
-
|
|
7
|
+
private spinner;
|
|
8
|
+
private spinnerPaused;
|
|
9
|
+
/**
|
|
10
|
+
* Pause the spinner for user interaction (e.g., clarification prompts)
|
|
11
|
+
*/
|
|
12
|
+
private pauseSpinner;
|
|
13
|
+
/**
|
|
14
|
+
* Resume the spinner after user interaction completes
|
|
15
|
+
*/
|
|
16
|
+
private resumeSpinner;
|
|
5
17
|
runAllSpecialists(bible: GameBible, specialists: Array<{
|
|
6
18
|
name: string;
|
|
7
19
|
agent: any;
|
|
8
|
-
}
|
|
20
|
+
}>, options?: {
|
|
21
|
+
skipDisambiguation?: boolean;
|
|
22
|
+
}): Promise<Map<string, string>>;
|
|
9
23
|
runSingle(name: string, agent: any, bible: GameBible): Promise<string>;
|
|
10
24
|
}
|
|
11
25
|
//# sourceMappingURL=Orchestrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Orchestrator.d.ts","sourceRoot":"","sources":["../../src/core/Orchestrator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Orchestrator.d.ts","sourceRoot":"","sources":["../../src/core/Orchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,aAAa,CAAkB;IAEvC;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAOf,iBAAiB,CACrB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,EAChD,OAAO,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE,GACzC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAyCzB,SAAS,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,EACV,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,MAAM,CAAC;CAYnB"}
|
|
@@ -4,29 +4,59 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SpecialistOrchestrator = void 0;
|
|
7
|
-
const p_queue_1 = __importDefault(require("p-queue"));
|
|
8
7
|
const ora_1 = __importDefault(require("ora"));
|
|
9
8
|
class SpecialistOrchestrator {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
spinner = null;
|
|
10
|
+
spinnerPaused = false;
|
|
11
|
+
/**
|
|
12
|
+
* Pause the spinner for user interaction (e.g., clarification prompts)
|
|
13
|
+
*/
|
|
14
|
+
pauseSpinner() {
|
|
15
|
+
if (this.spinner && !this.spinnerPaused) {
|
|
16
|
+
this.spinner.stop();
|
|
17
|
+
this.spinnerPaused = true;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Resume the spinner after user interaction completes
|
|
22
|
+
*/
|
|
23
|
+
resumeSpinner(text) {
|
|
24
|
+
if (this.spinner && this.spinnerPaused) {
|
|
25
|
+
this.spinner.start(text);
|
|
26
|
+
this.spinnerPaused = false;
|
|
27
|
+
}
|
|
13
28
|
}
|
|
14
|
-
async runAllSpecialists(bible, specialists) {
|
|
29
|
+
async runAllSpecialists(bible, specialists, options) {
|
|
15
30
|
const results = new Map();
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
31
|
+
this.spinner = (0, ora_1.default)('Running specialists...').start();
|
|
32
|
+
this.spinnerPaused = false;
|
|
33
|
+
// Create spinner control object for agents to use during disambiguation
|
|
34
|
+
const spinnerControl = {
|
|
35
|
+
pause: () => this.pauseSpinner(),
|
|
36
|
+
resume: (text) => this.resumeSpinner(text)
|
|
37
|
+
};
|
|
38
|
+
// Run specialists sequentially
|
|
39
|
+
for (const s of specialists) {
|
|
40
|
+
this.spinner.text = `${s.name}: Starting...`;
|
|
41
|
+
// Configure agent options
|
|
42
|
+
if (typeof s.agent.setSkipDisambiguation === 'function') {
|
|
43
|
+
s.agent.setSkipDisambiguation(options?.skipDisambiguation ?? false);
|
|
44
|
+
}
|
|
45
|
+
if (typeof s.agent.setSpinnerControl === 'function') {
|
|
46
|
+
s.agent.setSpinnerControl(spinnerControl);
|
|
47
|
+
}
|
|
48
|
+
// Pass progress callback for status updates
|
|
20
49
|
const output = await s.agent.execute(bible, (message) => {
|
|
21
|
-
|
|
50
|
+
if (!this.spinnerPaused) {
|
|
51
|
+
this.spinner.text = `${s.name}: ${message}`;
|
|
52
|
+
}
|
|
22
53
|
});
|
|
23
54
|
results.set(s.name, output);
|
|
24
|
-
spinner.succeed(`${s.name} complete`);
|
|
25
|
-
spinner.start(); // Restart for next specialist
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
spinner.stop();
|
|
55
|
+
this.spinner.succeed(`${s.name} complete`);
|
|
56
|
+
this.spinner.start(); // Restart for next specialist
|
|
57
|
+
}
|
|
58
|
+
this.spinner.stop();
|
|
59
|
+
this.spinner = null;
|
|
30
60
|
return results;
|
|
31
61
|
}
|
|
32
62
|
async runSingle(name, agent, bible) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Orchestrator.js","sourceRoot":"","sources":["../../src/core/Orchestrator.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Orchestrator.js","sourceRoot":"","sources":["../../src/core/Orchestrator.ts"],"names":[],"mappings":"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"}
|