Engine Settings Skill
🔀 Registered settings moved to the engine. Category-based registered-setting access (
list_categories/list_settings/get_setting/set_setting) is now Unreal 5.8's nativeConfigSettingsToolset— reach it withcall_tool(rundescribe_toolsetonConfigSettingsToolsetfor its actions/params). VibeUE'sEngineSettingsServicewas trimmed to the delta the engine doesn't cover: console variables (cvars), scalability levels, raw engine INI read/write, and config save. Use those fromexecute_python_codeas shown below.
Critical Rules
⚠️ CVars (VibeUE) vs Registered Settings (engine toolset)
- CVars (console variables) →
unreal.EngineSettingsService.get_console_variable/set_console_variable(kept in VibeUE). - Registered settings (category + key, e.g. RendererSettings) → engine
ConfigSettingsToolsetviacall_tool.EngineSettingsService.get_setting/set_setting/list_categories/list_settingswere removed in the 5.8 consolidation.
python# CVars (names like r.ReflectionMethod) — VibeUE value = unreal.EngineSettingsService.get_console_variable("r.ReflectionMethod") unreal.EngineSettingsService.set_console_variable("r.ReflectionMethod", "1") # Registered settings (category-based) — use the engine ConfigSettingsToolset via call_tool. # Raw INI is also still available in VibeUE when you know the section/key: value = unreal.EngineSettingsService.get_engine_ini_value( "/Script/Engine.RendererSettings", "bEnableRayTracing", "Engine.ini")
⚠️ Check Read-Only Before Setting CVars
pythoninfo = unreal.ConsoleVariableInfo() if unreal.EngineSettingsService.get_console_variable_info("r.MaxQualityMode", info): if not info.is_read_only: unreal.EngineSettingsService.set_console_variable(info.name, "1")
⚠️ Some Settings Require Restart
set_console_variable / set_engine_ini_value return an FEngineSettingResult whose
requires_restart flag tells you whether the change takes effect immediately. (Registered-setting
results come from the engine ConfigSettingsToolset instead.)
Browsing registered settings
Listing categories and the settings inside them is now an engine ConfigSettingsToolset job —
call it via call_tool and run describe_toolset for the available actions. These engine
categories cover rendering, physics, audio, GC, networking, collision, AI, input, and the rest.
For everything VibeUE still owns, see the cvar / INI / scalability workflows below.
Workflows
Enable Ray Tracing
pythonimport unreal import json rt_settings = { "r.RayTracing": "1", "r.RayTracing.Shadows": "1", "r.RayTracing.Reflections": "1", "r.ReflectionMethod": "1" } result = unreal.EngineSettingsService.set_console_variables_from_json(json.dumps(rt_settings)) unreal.EngineSettingsService.save_all_engine_config()
Optimize for Performance
pythonimport unreal import json # Set overall scalability to Low (0) unreal.EngineSettingsService.set_overall_scalability_level(0) # Disable expensive features perf_settings = { "r.RayTracing": "0", "r.VolumetricFog": "0", "r.MotionBlurQuality": "0", "r.Shadow.MaxResolution": "512" } unreal.EngineSettingsService.set_console_variables_from_json(json.dumps(perf_settings))
Search CVars
pythonimport unreal shadows = unreal.EngineSettingsService.search_console_variables("shadow", 100) for cvar in shadows: print(f"{cvar.name}: {cvar.value} ({cvar.type})")
Set Engine INI Values
pythonimport unreal result = unreal.EngineSettingsService.set_engine_ini_value( "/Script/EngineSettings.GameMapsSettings", "GameDefaultMap", "/Game/Maps/Lvl_Main.Lvl_Main", "DefaultEngine.ini" )
Data Structures
Python Naming Convention: C++ types like
FEngineSettingResultare exposed asEngineSettingResultin Python (noFprefix).
EngineSettingResult (returned by set_* and INI write methods)
success,error_messagemodified_settings,failed_settingsrequires_restart
ConsoleVariableInfo
name,value,default_value,descriptiontype,flags,is_read_only
VibeUE EngineSettingsService covers:
- Rendering optimization: Adjust r.* cvars, ray tracing, shadows
- Performance profiling: GC cvars (gc.*), streaming, scalability
- Quality presets: Apply overall or per-group scalability levels
- Raw engine INI: read/write sections directly when you know the key
For browsing/editing registered settings by category (physics, audio, collision, AI, input
classes, etc.), use the engine ConfigSettingsToolset via call_tool.
Sample scripts (run via execute_python_code)
scripts/set_cvars.txt— read scalability and set a console variable.


