Toolbar
The plugin's primary surface — a checkbox and class picker on the level editor toolbar.
The toolbar widget is the plugin's primary surface. Everything the plugin does is driven by two controls in this widget — there is no Project Settings page, no separate config UI, just a checkbox and a class picker on the level editor toolbar.
The plugin extends the level editor toolbar's User section with a single composite widget. It has two interactive controls and lives between two vertical separators.
Where it lives
Editor menu path: LevelEditor.LevelEditorToolBar.User. This is the
right-hand portion of the level editor toolbar where most editor
extensions register their entries. Other extensions in the same
section will sit alongside this widget.
The widget is added by UOverrideGameModeUISubsystem (an editor
subsystem) during its Initialize, which runs once per editor
session.
Controls
Override Game Mode (checkbox)
| State | Effect |
|---|---|
| Checked | The override is active. PIE / editor sessions use the selected class. |
| Unchecked | The override is inactive. The class picker is greyed out but keeps its selection. |
The override is editor-only — toggling this in no way affects packaged or standalone runs.
Changes are written to
Config/DefaultQuickGameModeOverride.ini immediately — no save step.
Class picker
A SClassPropertyEntryBox filtered to subclasses of AGameModeBase.
Same picker used by the GameMode Override field on World Settings,
so any class that shows up there shows up here.
| Setting | Behavior |
|---|---|
| Picked class | That class becomes the override target. |
| None | The override target is cleared. Even with the checkbox ticked, no override applies. |
The picker is disabled while the checkbox is unchecked — this
mirrors the runtime check (bOverrideGameMode && OverrideGameModeClass.IsSet()).
Tick the checkbox first if you want to change the class.
Changes are written to disk immediately.
Visibility
The widget hides itself during PIE (EVisibility::Collapsed) and
reappears when PIE ends. This avoids accidental edits while a play
session is running. The visibility toggle is driven by
FEditorDelegates::BeginPIE / EndPIE.
Settings file
Both controls write through to
Config/DefaultQuickGameModeOverride.ini. See
Settings
for the on-disk layout and how to edit it without going through the
toolbar.
Why not Project Settings?
The plugin's settings live on a UObject (not UDeveloperSettings),
so they don't surface in Project Settings → Plugins. The intent is
to keep the override one click away in the toolbar — not buried in a
settings page — because it's a workflow toggle, not a project-wide
configuration.