unreal-engine-mcp-server 0.5.0 → 0.5.2
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/.env.example +1 -1
- package/.github/release-drafter-config.yml +51 -0
- package/.github/workflows/greetings.yml +5 -1
- package/.github/workflows/labeler.yml +2 -1
- package/.github/workflows/publish-mcp.yml +2 -4
- package/.github/workflows/release-drafter.yml +3 -2
- package/.github/workflows/release.yml +3 -3
- package/CHANGELOG.md +109 -0
- package/CONTRIBUTING.md +1 -1
- package/GEMINI.md +115 -0
- package/Public/Plugin_setup_guide.mp4 +0 -0
- package/README.md +166 -200
- package/dist/automation/bridge.d.ts +1 -2
- package/dist/automation/bridge.js +24 -23
- package/dist/automation/connection-manager.d.ts +1 -0
- package/dist/automation/connection-manager.js +10 -0
- package/dist/automation/message-handler.js +5 -4
- package/dist/automation/request-tracker.d.ts +4 -0
- package/dist/automation/request-tracker.js +11 -3
- package/dist/config.d.ts +0 -1
- package/dist/config.js +0 -1
- package/dist/constants.d.ts +4 -0
- package/dist/constants.js +4 -0
- package/dist/graphql/loaders.d.ts +64 -0
- package/dist/graphql/loaders.js +117 -0
- package/dist/graphql/resolvers.d.ts +3 -3
- package/dist/graphql/resolvers.js +33 -30
- package/dist/graphql/server.js +3 -1
- package/dist/graphql/types.d.ts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +13 -2
- package/dist/server-setup.d.ts +0 -1
- package/dist/server-setup.js +0 -40
- package/dist/tools/actors.d.ts +58 -24
- package/dist/tools/actors.js +22 -6
- package/dist/tools/assets.d.ts +19 -71
- package/dist/tools/assets.js +28 -22
- package/dist/tools/base-tool.d.ts +4 -4
- package/dist/tools/base-tool.js +1 -1
- package/dist/tools/blueprint.d.ts +45 -61
- package/dist/tools/blueprint.js +43 -14
- package/dist/tools/consolidated-tool-definitions.js +2 -1
- package/dist/tools/consolidated-tool-handlers.js +96 -110
- package/dist/tools/dynamic-handler-registry.d.ts +11 -9
- package/dist/tools/dynamic-handler-registry.js +17 -95
- package/dist/tools/editor.d.ts +19 -193
- package/dist/tools/editor.js +11 -2
- package/dist/tools/environment.d.ts +8 -14
- package/dist/tools/foliage.d.ts +18 -143
- package/dist/tools/foliage.js +4 -2
- package/dist/tools/handlers/actor-handlers.d.ts +1 -1
- package/dist/tools/handlers/actor-handlers.js +14 -13
- package/dist/tools/handlers/asset-handlers.js +454 -454
- package/dist/tools/handlers/sequence-handlers.d.ts +1 -1
- package/dist/tools/handlers/sequence-handlers.js +24 -13
- package/dist/tools/introspection.d.ts +1 -1
- package/dist/tools/introspection.js +1 -1
- package/dist/tools/landscape.d.ts +16 -116
- package/dist/tools/landscape.js +7 -3
- package/dist/tools/level.d.ts +22 -103
- package/dist/tools/level.js +26 -18
- package/dist/tools/lighting.d.ts +54 -7
- package/dist/tools/lighting.js +9 -5
- package/dist/tools/materials.d.ts +1 -1
- package/dist/tools/materials.js +5 -1
- package/dist/tools/niagara.js +37 -2
- package/dist/tools/performance.d.ts +0 -1
- package/dist/tools/performance.js +0 -1
- package/dist/tools/physics.js +5 -1
- package/dist/tools/sequence.d.ts +24 -24
- package/dist/tools/sequence.js +13 -0
- package/dist/tools/ui.d.ts +0 -2
- package/dist/types/automation-responses.d.ts +115 -0
- package/dist/types/automation-responses.js +2 -0
- package/dist/types/responses.d.ts +249 -0
- package/dist/types/responses.js +2 -0
- package/dist/types/tool-interfaces.d.ts +135 -135
- package/dist/types/tool-types.d.ts +2 -0
- package/dist/unreal-bridge.js +4 -4
- package/dist/utils/command-validator.js +7 -5
- package/dist/utils/error-handler.d.ts +24 -2
- package/dist/utils/error-handler.js +58 -23
- package/dist/utils/normalize.d.ts +7 -4
- package/dist/utils/normalize.js +12 -10
- package/dist/utils/path-security.d.ts +2 -0
- package/dist/utils/path-security.js +24 -0
- package/dist/utils/response-factory.d.ts +4 -4
- package/dist/utils/response-factory.js +15 -21
- package/dist/utils/response-validator.js +88 -73
- package/dist/utils/unreal-command-queue.d.ts +2 -0
- package/dist/utils/unreal-command-queue.js +8 -1
- package/docs/Migration-Guide-v0.5.0.md +1 -9
- package/docs/handler-mapping.md +4 -2
- package/docs/testing-guide.md +2 -2
- package/package.json +12 -6
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridgeSubsystem.cpp +298 -33
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_AnimationHandlers.cpp +7 -8
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintGraphHandlers.cpp +229 -319
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_BlueprintHandlers.cpp +98 -0
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_EffectHandlers.cpp +24 -0
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_EnvironmentHandlers.cpp +96 -0
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_LightingHandlers.cpp +52 -5
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_ProcessRequest.cpp +5 -268
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpAutomationBridge_SequenceHandlers.cpp +57 -2
- package/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/McpConnectionManager.cpp +0 -1
- package/scripts/run-all-tests.mjs +25 -20
- package/server.json +3 -2
- package/src/automation/bridge.ts +27 -25
- package/src/automation/connection-manager.ts +18 -0
- package/src/automation/message-handler.ts +33 -8
- package/src/automation/request-tracker.ts +39 -7
- package/src/config.ts +1 -1
- package/src/constants.ts +7 -0
- package/src/graphql/loaders.ts +244 -0
- package/src/graphql/resolvers.ts +47 -49
- package/src/graphql/server.ts +3 -1
- package/src/graphql/types.ts +3 -0
- package/src/index.ts +15 -2
- package/src/resources/assets.ts +5 -4
- package/src/server/tool-registry.ts +3 -3
- package/src/server-setup.ts +3 -37
- package/src/tools/actors.ts +77 -44
- package/src/tools/animation.ts +1 -0
- package/src/tools/assets.ts +76 -65
- package/src/tools/base-tool.ts +3 -3
- package/src/tools/blueprint.ts +170 -104
- package/src/tools/consolidated-tool-definitions.ts +2 -1
- package/src/tools/consolidated-tool-handlers.ts +129 -150
- package/src/tools/dynamic-handler-registry.ts +22 -140
- package/src/tools/editor.ts +43 -29
- package/src/tools/environment.ts +21 -27
- package/src/tools/foliage.ts +28 -25
- package/src/tools/handlers/actor-handlers.ts +16 -17
- package/src/tools/handlers/asset-handlers.ts +484 -484
- package/src/tools/handlers/sequence-handlers.ts +85 -62
- package/src/tools/introspection.ts +7 -7
- package/src/tools/landscape.ts +34 -28
- package/src/tools/level.ts +100 -80
- package/src/tools/lighting.ts +25 -20
- package/src/tools/materials.ts +9 -3
- package/src/tools/niagara.ts +44 -2
- package/src/tools/performance.ts +1 -2
- package/src/tools/physics.ts +7 -1
- package/src/tools/sequence.ts +42 -26
- package/src/tools/ui.ts +1 -3
- package/src/types/automation-responses.ts +119 -0
- package/src/types/responses.ts +355 -0
- package/src/types/tool-interfaces.ts +135 -135
- package/src/types/tool-types.ts +4 -0
- package/src/unreal-bridge.ts +71 -26
- package/src/utils/command-validator.ts +47 -5
- package/src/utils/error-handler.ts +128 -45
- package/src/utils/normalize.test.ts +162 -0
- package/src/utils/normalize.ts +38 -16
- package/src/utils/path-security.ts +43 -0
- package/src/utils/response-factory.ts +29 -24
- package/src/utils/response-validator.ts +103 -87
- package/src/utils/safe-json.test.ts +90 -0
- package/src/utils/unreal-command-queue.ts +13 -1
- package/src/utils/validation.test.ts +184 -0
- package/tests/test-animation.mjs +358 -33
- package/tests/test-asset-graph.mjs +311 -0
- package/tests/test-audio.mjs +314 -116
- package/tests/test-behavior-tree.mjs +327 -144
- package/tests/test-blueprint-graph.mjs +343 -12
- package/tests/test-control-editor.mjs +85 -53
- package/tests/test-graphql.mjs +58 -8
- package/tests/test-input.mjs +349 -0
- package/tests/test-inspect.mjs +291 -61
- package/tests/test-landscape.mjs +304 -48
- package/tests/test-lighting.mjs +428 -0
- package/tests/test-manage-level.mjs +70 -51
- package/tests/test-performance.mjs +539 -0
- package/tests/test-sequence.mjs +82 -46
- package/tests/test-system.mjs +72 -33
- package/tests/test-wasm.mjs +98 -8
- package/vitest.config.ts +35 -0
- package/.github/release-drafter.yml +0 -148
- package/dist/prompts/index.d.ts +0 -21
- package/dist/prompts/index.js +0 -217
- package/dist/tools/blueprint/helpers.d.ts +0 -29
- package/dist/tools/blueprint/helpers.js +0 -182
- package/src/prompts/index.ts +0 -249
- package/src/tools/blueprint/helpers.ts +0 -189
- package/tests/test-blueprint-events.mjs +0 -35
- package/tests/test-extra-tools.mjs +0 -38
- package/tests/test-render.mjs +0 -33
- package/tests/test-search-assets.mjs +0 -66
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common type definitions for automation bridge responses
|
|
3
|
+
* Used to provide type safety for sendAutomationRequest calls
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Base response structure from the Automation Bridge
|
|
8
|
+
* Most responses follow this pattern with optional additional fields
|
|
9
|
+
*/
|
|
10
|
+
export interface AutomationResponse {
|
|
11
|
+
success: boolean;
|
|
12
|
+
message?: string;
|
|
13
|
+
error?: string | { message: string; code?: string };
|
|
14
|
+
result?: unknown;
|
|
15
|
+
// Common additional fields
|
|
16
|
+
warnings?: string[];
|
|
17
|
+
details?: unknown;
|
|
18
|
+
data?: unknown;
|
|
19
|
+
[key: string]: unknown;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Level-related response fields
|
|
24
|
+
*/
|
|
25
|
+
export interface LevelResponse extends AutomationResponse {
|
|
26
|
+
levelPath?: string;
|
|
27
|
+
level?: string;
|
|
28
|
+
path?: string;
|
|
29
|
+
packagePath?: string;
|
|
30
|
+
objectPath?: string;
|
|
31
|
+
currentMap?: string;
|
|
32
|
+
currentMapPath?: string;
|
|
33
|
+
currentWorldLevels?: unknown[];
|
|
34
|
+
allMaps?: unknown[];
|
|
35
|
+
partitioned?: boolean;
|
|
36
|
+
streaming?: boolean;
|
|
37
|
+
loaded?: boolean;
|
|
38
|
+
visible?: boolean;
|
|
39
|
+
skipped?: boolean;
|
|
40
|
+
reason?: string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Actor-related response fields
|
|
45
|
+
*/
|
|
46
|
+
export interface ActorResponse extends AutomationResponse {
|
|
47
|
+
actorName?: string;
|
|
48
|
+
actorLabel?: string;
|
|
49
|
+
actorPath?: string;
|
|
50
|
+
actors?: unknown[];
|
|
51
|
+
components?: unknown[];
|
|
52
|
+
location?: { x: number; y: number; z: number };
|
|
53
|
+
rotation?: { pitch: number; yaw: number; roll: number };
|
|
54
|
+
scale?: { x: number; y: number; z: number };
|
|
55
|
+
transform?: unknown;
|
|
56
|
+
tags?: string[];
|
|
57
|
+
properties?: Record<string, unknown>;
|
|
58
|
+
deleted?: boolean;
|
|
59
|
+
deletedCount?: number;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Asset-related response fields
|
|
64
|
+
*/
|
|
65
|
+
export interface AssetResponse extends AutomationResponse {
|
|
66
|
+
assetPath?: string;
|
|
67
|
+
asset?: string;
|
|
68
|
+
assets?: unknown[];
|
|
69
|
+
source?: string;
|
|
70
|
+
saved?: boolean;
|
|
71
|
+
metadata?: Record<string, unknown>;
|
|
72
|
+
tags?: string[];
|
|
73
|
+
graph?: Record<string, unknown[]>;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Editor-related response fields
|
|
78
|
+
*/
|
|
79
|
+
export interface EditorResponse extends AutomationResponse {
|
|
80
|
+
viewMode?: string;
|
|
81
|
+
fov?: number;
|
|
82
|
+
location?: { x: number; y: number; z: number };
|
|
83
|
+
rotation?: { pitch: number; yaw: number; roll: number };
|
|
84
|
+
cameraSettings?: unknown;
|
|
85
|
+
camera?: { location?: unknown; rotation?: unknown };
|
|
86
|
+
resolution?: { width: number; height: number };
|
|
87
|
+
filename?: string;
|
|
88
|
+
filePath?: string;
|
|
89
|
+
isPlaying?: boolean;
|
|
90
|
+
isPaused?: boolean;
|
|
91
|
+
isInPIE?: boolean;
|
|
92
|
+
playSessionId?: string;
|
|
93
|
+
bookmarkName?: string;
|
|
94
|
+
bookmarks?: unknown[];
|
|
95
|
+
realtime?: boolean;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Sequence/Animation-related response fields
|
|
100
|
+
*/
|
|
101
|
+
export interface SequenceResponse extends AutomationResponse {
|
|
102
|
+
sequencePath?: string;
|
|
103
|
+
sequence?: string;
|
|
104
|
+
bindingId?: string;
|
|
105
|
+
trackName?: string;
|
|
106
|
+
keyframe?: unknown;
|
|
107
|
+
frameNumber?: number;
|
|
108
|
+
length?: number;
|
|
109
|
+
playbackPosition?: number;
|
|
110
|
+
requestId?: string;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Console command response
|
|
115
|
+
*/
|
|
116
|
+
export interface ConsoleResponse extends AutomationResponse {
|
|
117
|
+
output?: string;
|
|
118
|
+
command?: string;
|
|
119
|
+
}
|
|
@@ -0,0 +1,355 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Response Types for Unreal Engine MCP Server
|
|
3
|
+
*
|
|
4
|
+
* These interfaces provide type safety for tool responses.
|
|
5
|
+
* Use with BaseTool.sendRequest<T>() for typed responses.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Base Types
|
|
10
|
+
// ============================================================================
|
|
11
|
+
|
|
12
|
+
export interface BaseResponse {
|
|
13
|
+
success: boolean;
|
|
14
|
+
message?: string;
|
|
15
|
+
error?: string;
|
|
16
|
+
/** Optional error code for programmatic handling */
|
|
17
|
+
errorCode?: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface Vector3 {
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
z: number;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface Rotator {
|
|
27
|
+
pitch: number;
|
|
28
|
+
yaw: number;
|
|
29
|
+
roll: number;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface Transform {
|
|
33
|
+
location?: Vector3;
|
|
34
|
+
rotation?: Rotator;
|
|
35
|
+
scale?: Vector3;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// ============================================================================
|
|
39
|
+
// Actor Responses
|
|
40
|
+
// ============================================================================
|
|
41
|
+
|
|
42
|
+
export interface SpawnActorResponse extends BaseResponse {
|
|
43
|
+
actorName?: string;
|
|
44
|
+
actorPath?: string;
|
|
45
|
+
/** Class path of the spawned actor */
|
|
46
|
+
classPath?: string;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface DeleteActorResponse extends BaseResponse {
|
|
50
|
+
deletedCount?: number;
|
|
51
|
+
deletedActors?: string[];
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface GetTransformResponse extends BaseResponse {
|
|
55
|
+
location?: Vector3;
|
|
56
|
+
rotation?: Rotator;
|
|
57
|
+
scale?: Vector3;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export interface SetTransformResponse extends BaseResponse {
|
|
61
|
+
actorName?: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export interface FindActorsResponse extends BaseResponse {
|
|
65
|
+
actors?: Array<{
|
|
66
|
+
name: string;
|
|
67
|
+
label?: string;
|
|
68
|
+
class?: string;
|
|
69
|
+
path?: string;
|
|
70
|
+
}>;
|
|
71
|
+
count?: number;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface GetComponentsResponse extends BaseResponse {
|
|
75
|
+
components?: Array<{
|
|
76
|
+
name: string;
|
|
77
|
+
type: string;
|
|
78
|
+
properties?: Record<string, unknown>;
|
|
79
|
+
}>;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export interface ApplyForceResponse extends BaseResponse {
|
|
83
|
+
actorName?: string;
|
|
84
|
+
forceApplied?: Vector3;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// ============================================================================
|
|
88
|
+
// Asset Responses
|
|
89
|
+
// ============================================================================
|
|
90
|
+
|
|
91
|
+
export interface AssetInfo {
|
|
92
|
+
name: string;
|
|
93
|
+
path: string;
|
|
94
|
+
class?: string;
|
|
95
|
+
packagePath?: string;
|
|
96
|
+
size?: number;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export interface ListAssetsResponse extends BaseResponse {
|
|
100
|
+
assets?: AssetInfo[];
|
|
101
|
+
count?: number;
|
|
102
|
+
directory?: string;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export interface CreateAssetResponse extends BaseResponse {
|
|
106
|
+
assetPath?: string;
|
|
107
|
+
assetName?: string;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export interface DeleteAssetResponse extends BaseResponse {
|
|
111
|
+
deletedPath?: string;
|
|
112
|
+
deletedCount?: number;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export interface GetDependenciesResponse extends BaseResponse {
|
|
116
|
+
dependencies?: string[];
|
|
117
|
+
referencers?: string[];
|
|
118
|
+
count?: number;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export interface AssetExistsResponse extends BaseResponse {
|
|
122
|
+
exists?: boolean;
|
|
123
|
+
assetPath?: string;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// ============================================================================
|
|
127
|
+
// Blueprint Responses
|
|
128
|
+
// ============================================================================
|
|
129
|
+
|
|
130
|
+
export interface CreateBlueprintResponse extends BaseResponse {
|
|
131
|
+
blueprintPath?: string;
|
|
132
|
+
blueprintName?: string;
|
|
133
|
+
parentClass?: string;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export interface GetBlueprintResponse extends BaseResponse {
|
|
137
|
+
path?: string;
|
|
138
|
+
name?: string;
|
|
139
|
+
parentClass?: string;
|
|
140
|
+
variables?: Array<{
|
|
141
|
+
name: string;
|
|
142
|
+
type: string;
|
|
143
|
+
defaultValue?: unknown;
|
|
144
|
+
}>;
|
|
145
|
+
functions?: Array<{
|
|
146
|
+
name: string;
|
|
147
|
+
parameters?: Array<{ name: string; type: string }>;
|
|
148
|
+
returnType?: string;
|
|
149
|
+
}>;
|
|
150
|
+
components?: Array<{
|
|
151
|
+
name: string;
|
|
152
|
+
type: string;
|
|
153
|
+
properties?: Record<string, unknown>;
|
|
154
|
+
}>;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export interface AddVariableResponse extends BaseResponse {
|
|
158
|
+
variableName?: string;
|
|
159
|
+
variableType?: string;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export interface CreateNodeResponse extends BaseResponse {
|
|
163
|
+
nodeId?: string;
|
|
164
|
+
nodeName?: string;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export interface ConnectPinsResponse extends BaseResponse {
|
|
168
|
+
connected?: boolean;
|
|
169
|
+
fromNode?: string;
|
|
170
|
+
toNode?: string;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
// ============================================================================
|
|
174
|
+
// Level Responses
|
|
175
|
+
// ============================================================================
|
|
176
|
+
|
|
177
|
+
export interface LoadLevelResponse extends BaseResponse {
|
|
178
|
+
levelPath?: string;
|
|
179
|
+
levelName?: string;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export interface SaveLevelResponse extends BaseResponse {
|
|
183
|
+
savedPath?: string;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export interface ListLevelsResponse extends BaseResponse {
|
|
187
|
+
levels?: Array<{
|
|
188
|
+
name: string;
|
|
189
|
+
path: string;
|
|
190
|
+
isLoaded?: boolean;
|
|
191
|
+
isVisible?: boolean;
|
|
192
|
+
}>;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
export interface BuildLightingResponse extends BaseResponse {
|
|
196
|
+
quality?: string;
|
|
197
|
+
buildTime?: number;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
// ============================================================================
|
|
201
|
+
// Editor Responses
|
|
202
|
+
// ============================================================================
|
|
203
|
+
|
|
204
|
+
export interface PlayInEditorResponse extends BaseResponse {
|
|
205
|
+
isPlaying?: boolean;
|
|
206
|
+
isPaused?: boolean;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
export interface SetCameraResponse extends BaseResponse {
|
|
210
|
+
location?: Vector3;
|
|
211
|
+
rotation?: Rotator;
|
|
212
|
+
fov?: number;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export interface ScreenshotResponse extends BaseResponse {
|
|
216
|
+
filePath?: string;
|
|
217
|
+
width?: number;
|
|
218
|
+
height?: number;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export interface ViewModeResponse extends BaseResponse {
|
|
222
|
+
viewMode?: string;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
// ============================================================================
|
|
226
|
+
// Sequence Responses
|
|
227
|
+
// ============================================================================
|
|
228
|
+
|
|
229
|
+
export interface CreateSequenceResponse extends BaseResponse {
|
|
230
|
+
sequencePath?: string;
|
|
231
|
+
sequenceName?: string;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
export interface AddActorToSequenceResponse extends BaseResponse {
|
|
235
|
+
bindingId?: string;
|
|
236
|
+
actorName?: string;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export interface AddKeyframeResponse extends BaseResponse {
|
|
240
|
+
frameNumber?: number;
|
|
241
|
+
property?: string;
|
|
242
|
+
value?: unknown;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// ============================================================================
|
|
246
|
+
// Audio Responses
|
|
247
|
+
// ============================================================================
|
|
248
|
+
|
|
249
|
+
export interface PlaySoundResponse extends BaseResponse {
|
|
250
|
+
soundPath?: string;
|
|
251
|
+
audioComponentId?: string;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
export interface CreateSoundCueResponse extends BaseResponse {
|
|
255
|
+
cuePath?: string;
|
|
256
|
+
cueName?: string;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
// ============================================================================
|
|
260
|
+
// Effect Responses
|
|
261
|
+
// ============================================================================
|
|
262
|
+
|
|
263
|
+
export interface SpawnEffectResponse extends BaseResponse {
|
|
264
|
+
effectName?: string;
|
|
265
|
+
effectPath?: string;
|
|
266
|
+
location?: Vector3;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
export interface CreateNiagaraSystemResponse extends BaseResponse {
|
|
270
|
+
systemPath?: string;
|
|
271
|
+
systemName?: string;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
// ============================================================================
|
|
275
|
+
// Lighting Responses
|
|
276
|
+
// ============================================================================
|
|
277
|
+
|
|
278
|
+
export interface SpawnLightResponse extends BaseResponse {
|
|
279
|
+
lightName?: string;
|
|
280
|
+
lightType?: string;
|
|
281
|
+
location?: Vector3;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
export interface SetupGIResponse extends BaseResponse {
|
|
285
|
+
method?: string;
|
|
286
|
+
bounces?: number;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
// ============================================================================
|
|
290
|
+
// Animation Responses
|
|
291
|
+
// ============================================================================
|
|
292
|
+
|
|
293
|
+
export interface CreateAnimBlueprintResponse extends BaseResponse {
|
|
294
|
+
blueprintPath?: string;
|
|
295
|
+
skeletonPath?: string;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
export interface PlayMontageResponse extends BaseResponse {
|
|
299
|
+
montagePath?: string;
|
|
300
|
+
playRate?: number;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
// ============================================================================
|
|
304
|
+
// System Responses
|
|
305
|
+
// ============================================================================
|
|
306
|
+
|
|
307
|
+
export interface ConsoleCommandResponse extends BaseResponse {
|
|
308
|
+
command?: string;
|
|
309
|
+
output?: string;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
export interface ProfileResponse extends BaseResponse {
|
|
313
|
+
profileType?: string;
|
|
314
|
+
enabled?: boolean;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
export interface SetCVarResponse extends BaseResponse {
|
|
318
|
+
cvarName?: string;
|
|
319
|
+
value?: string;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
// ============================================================================
|
|
323
|
+
// Inspect Responses
|
|
324
|
+
// ============================================================================
|
|
325
|
+
|
|
326
|
+
export interface InspectObjectResponse extends BaseResponse {
|
|
327
|
+
objectPath?: string;
|
|
328
|
+
className?: string;
|
|
329
|
+
properties?: Record<string, unknown>;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
export interface GetPropertyResponse extends BaseResponse {
|
|
333
|
+
propertyName?: string;
|
|
334
|
+
value?: unknown;
|
|
335
|
+
propertyType?: string;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
export interface SetPropertyResponse extends BaseResponse {
|
|
339
|
+
propertyName?: string;
|
|
340
|
+
newValue?: unknown;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
// ============================================================================
|
|
344
|
+
// Environment Responses
|
|
345
|
+
// ============================================================================
|
|
346
|
+
|
|
347
|
+
export interface CreateLandscapeResponse extends BaseResponse {
|
|
348
|
+
landscapeName?: string;
|
|
349
|
+
componentCount?: { x: number; y: number };
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
export interface AddFoliageResponse extends BaseResponse {
|
|
353
|
+
foliageType?: string;
|
|
354
|
+
instanceCount?: number;
|
|
355
|
+
}
|