Intermediate

Complete reference for all gengine project settings — ports, safety mode, token budget, rate limits, and auto-start behavior.

Project Settings

gengine's configuration lives in Project Settings > Plugins > gengine. Settings are stored in Config/DefaultGame.ini under the [/Script/Gengine.GengineSettings] section. You can edit them in the editor UI or directly in the INI file.

Opening the Settings

Edit > Project Settings > Plugins > gengine

The settings panel is divided into four sections: Server, Safety, Performance, and Bridge.

Server Settings

SettingTypeDefaultDescription
RestApiPortint8080Port the gengine HTTP REST API listens on. Change if 8080 conflicts with another service.
McpBridgePortint3000Port the MCP bridge (Node.js) listens on for HTTP+SSE connections.
BindAddressstring127.0.0.1Network interface to bind. 127.0.0.1 restricts to localhost only. Do not change to 0.0.0.0 on a shared network.
bAutoStartBridgebooltrueAutomatically launch the MCP bridge Node.js process when the editor starts. Disable if you want to manage the bridge manually.
bAutoStartRestApibooltrueAutomatically start the REST API HTTP server on editor launch.

Port configuration example

[/Script/Gengine.GengineSettings]
RestApiPort=8080
McpBridgePort=3000
BindAddress=127.0.0.1

If you change RestApiPort, also update the GENGINE_PORT environment variable in your Claude CLI or MCP client config to match:

{
  "mcpServers": {
    "gengine": {
      "command": "node",
      "args": ["C:/path/to/Plugins/gengine/Resources/mcp-bridge/dist/index.js"],
      "env": {
        "GENGINE_PORT": "8081"
      }
    }
  }
}

Safety Settings

SettingTypeDefaultDescription
SafetyTierenumSupervisedActive safety tier: ReadOnly, Supervised, or Unrestricted. See Safety System documentation.
bRequireConfirmForDestructivebooltrueWhen true, destructive operations require confirm: true in params. Automatically set based on SafetyTier.
bBlockConsoleCommandsboolfalseWhen true, completely disables run_console_command. Overrides blocklist.
ConsoleCommandBlockliststring[](built-in list)Additional command prefixes to block beyond the default blocklist.

Adding custom blocklist entries

[/Script/Gengine.GengineSettings]
SafetyTier=Supervised
ConsoleCommandBlocklist=(entries=("myDangerousCommand","anotherBlockedPrefix"))

Performance Settings

SettingTypeDefaultDescription
MaxConcurrentTasksint4Maximum tasks the queue dispatches simultaneously. Reducing this to 2 can help on lower-end machines. Do not increase above 4.
TaskTimeoutSecondsint30How long a queued task waits before timing out.
MaxActorsPerDeleteCallint200Cap on actors deleted in a single delete_actors call.
MaxSearchResultsint200Maximum assets returned by a single search or list call.
OutputLogMaxLinesint1000Maximum lines returned by get_output_log.
bEnableOutputSanitizerbooltrueRun MCPOutputSanitizer on all responses. Only disable for debugging.

Token Budget Settings

SettingTypeDefaultDescription
MaxResponseTokensint8192Maximum tokens in a single AI response. Passed to the provider as max_tokens.
MaxContextTokensint200000Maximum context window size. gengine truncates conversation history if it would exceed this.
bCompressLargeResponsesbooltrueCompress tool result payloads above 4 KB before sending to the AI. Reduces token usage on large asset lists.
LargeResponseThresholdBytesint4096Payload size above which compression is applied.

Rate Limiting Settings

SettingTypeDefaultDescription
bEnableRateLimitingbooltrueEnable per-session rate limiting.
RateLimitRequestsPerMinuteint60Requests per minute per session. Overrides license tier default if set lower.
RateLimitBurstSizeint10Additional requests allowed in a burst above the per-minute rate.

Note: Rate limit settings in Project Settings cap at or below the limits set by your license tier. Setting RateLimitRequestsPerMinute to 600 on a Free tier license still enforces the Free tier's 60 req/min limit.

Bridge Settings

SettingTypeDefaultDescription
BridgeLaunchCommandstringnodeExecutable used to launch the MCP bridge. Change to a full path if node is not in your system PATH.
BridgeScriptPathstring(auto)Path to the bridge entry point. Auto-detected from plugin location. Override only if using a non-standard installation.
BridgeEnvstring map{}Additional environment variables passed to the bridge process.
BridgeRestartOnCrashbooltrueAutomatically restart the bridge if it exits unexpectedly.
BridgeRestartMaxAttemptsint3Maximum restart attempts before giving up and showing an error in the Diagnostics tab.

Full Settings Reference (INI format)

[/Script/Gengine.GengineSettings]

; Server
RestApiPort=8080
McpBridgePort=3000
BindAddress=127.0.0.1
bAutoStartBridge=True
bAutoStartRestApi=True

; Safety
SafetyTier=Supervised
bRequireConfirmForDestructive=True
bBlockConsoleCommands=False

; Performance
MaxConcurrentTasks=4
TaskTimeoutSeconds=30
MaxActorsPerDeleteCall=200
MaxSearchResults=200
OutputLogMaxLines=1000
bEnableOutputSanitizer=True

; Token Budget
MaxResponseTokens=8192
MaxContextTokens=200000
bCompressLargeResponses=True
LargeResponseThresholdBytes=4096

; Rate Limiting
bEnableRateLimiting=True
RateLimitRequestsPerMinute=60
RateLimitBurstSize=10

; Bridge
BridgeLaunchCommand=node
BridgeRestartOnCrash=True
BridgeRestartMaxAttempts=3

Common Configuration Scenarios

Offline / air-gapped development

Use Ollama locally and lock down network binding:

BindAddress=127.0.0.1
bAutoStartBridge=True
SafetyTier=Supervised

Configure the provider to use Ollama at http://localhost:11434.

CI/CD read-only pipeline

Prevent any writes during automated asset auditing:

SafetyTier=ReadOnly
bEnableRateLimiting=False
MaxConcurrentTasks=4

High-throughput batch operations (Pro/Enterprise)

Increase rate limits for sustained automated work:

SafetyTier=Unrestricted
RateLimitRequestsPerMinute=600
RateLimitBurstSize=50
MaxConcurrentTasks=4
TaskTimeoutSeconds=60

Low-end machine

Reduce concurrency to avoid editor hitches:

MaxConcurrentTasks=2
TaskTimeoutSeconds=60
bCompressLargeResponses=True