Bulk Recompile / Reference

Feature reference

v1.1.1Editor plugin
  • UE 5.5–5.8
On this pageAt a glanceWhere to find itThe panelResult statusesBefore, during, and after a runWhat gets savedMessagesLimits

Everything Bulk Recompile adds: the panel and each of its options, result statuses and messages, what a run saves, and the Blueprint nodes for editor scripts.

At a glance#

Item Details
Plugin type Editor only. Nothing ships in a packaged game.
Editor platforms Windows, macOS, Linux
Engine versions UE 5.5–5.8
Dependencies None
What it processes User-defined enums, user-defined structs, and Blueprint assets of every kind: Actor, Widget, Animation, Editor Utility, interfaces, and function and macro libraries. Level Blueprints compile with their levels and are skipped. C++ is not compiled.
Blueprint nodes Two, for Editor Utility Widgets and Editor Utility Blueprints. See Blueprint nodes.
Settings All options are on the panel, and they reset to their defaults each time the panel opens. There are no Project Settings, preferences, or console commands.

Where to find it#

  • Tools → Bulk Recompile opens the Bulk Recompile tab. It is also listed under Tools → Miscellaneous.
  • The Open Bulk Recompile Panel node opens it from an editor script.

There is no toolbar button, shortcut, or Content Browser action.

The panel#

Where to look#

Project content is always included.

Option Default Effect
Include plugin content Off Adds the content of every enabled plugin, including Epic and Fab plugins. Saving into plugins installed with the engine can fail, or change files outside your project.
Include engine content (/Engine) Off Adds engine assets. Rarely useful; resaving engine assets is usually a mistake.

Changing either option updates the counts on the buttons.

Options#

Option Default Effect
Save assets when finished On Writes repaired assets to disk. Off keeps the fix only until the editor closes.
Force-save every asset, even unchanged ones Off Resaves every processed asset. Expect a large source-control change.
Dry run - report problems, change nothing Off Loads and inspects only: no compile, no save, and no confirmation.
Only recompile assets that are out of date Off Inspects everything and recompiles only assets that report as out of date. An asset that looks current in the editor but is stale on disk is not repaired unless you also force-save.
Skip structs that would crash the editor On Leaves structs that would likely crash the editor uncompiled and lists them as Skipped (unsafe).
Collect garbage after every asset (much slower) Off A stability fallback for a run that crashes. Several times slower.

A hint under the options suggests Only recompile assets that are out of date with Force-save every asset when packaging still complains but everything reports up to date.

Recompile buttons#

Button Processes
Structs (N) Every user-defined struct. Structs used by other structs compile first.
Enums (N) Every user-defined enum. Repairs entry names and restores missing display names; custom display names are kept.
Blueprints (N) Every Blueprint asset. Parents and dependencies compile first.
Recompile Everything (N assets) Enums, then structs, then Blueprints: the order that clears packaging errors.
Refresh icon Counts the assets again.

The buttons are unavailable while a run is in progress. Counting waits for the editor to finish discovering assets, so opening the panel just after the editor starts can pause briefly.

Results#

Control Effect
Summary Counts for the run, colored red for errors and amber for warnings or a cancelled run.
All / Problems only Problems only shows Warning, Skipped (unsafe), Error, and Load failed rows, and hides OK and Skipped. After a run with errors, warnings, or load failures, the list switches to Problems only.
Copy Copies the visible rows as tab-separated text with the columns Status, Type, Asset, Path, and Details.
Clear Empties the list.
Columns Status, Type (Struct, Enum, or Blueprint), Asset, and Details. The row tooltip shows the full path.
Double-click Opens the asset.
Right-click Open Asset, Show in Content Browser, Copy Asset Path, and Copy Result.

The results area appears after the first run.

Result statuses#

Status Color Meaning
OK Green Compiled or verified cleanly.
Warning Amber Compiled with warnings, needs recompiling in a dry run, or had stale references repaired that must be saved.
Error Red Compile errors. Open the asset and read its message.
Load failed Red The asset could not be loaded.
Skipped Default Already up to date, or a Level Blueprint.
Skipped (unsafe) Amber A struct left uncompiled because compiling it would likely crash the editor. The row names the Blueprints involved.

Typical Details messages include Recompiled cleanly., Recompiled (was out of date)., Up to date., Not up to date - would be recompiled., Verified (nothing to fix)., and, for errors, the number of errors with the first message. A dry run never shows Skipped (unsafe), and enums usually read as up to date in a dry run because loading already repairs them.

Before, during, and after a run#

  • A run does not start during Play In Editor or while a save is in progress; a message explains why.
  • No matching assets were found in the selected content folders. appears when nothing matches.
  • Except in a dry run, a confirmation lists how many assets will be loaded and recompiled and what will be saved. With source control connected, files are checked out without asking.
  • A progress dialog shows each asset and has a Cancel button. Cancelling keeps the work already done.
  • After a run from the panel, a notification shows the summary.
  • A run that is not a dry run clears the editor's Undo history.

Blueprints whose saved data still refers to a struct that no longer resolves, the kind that makes a cook fail with "Unknown structure", are repaired and always saved, even with Only recompile assets that are out of date on. The summary reports how many.

What gets saved#

  • Processed assets that end up changed, plus every processed asset when force-saving. Existing unsaved edits in those assets are saved with them.
  • Every compiled struct.
  • Saving happens as the run goes, so a cancelled run keeps what it saved.

A Structs-only run can leave Blueprints that use those structs changed but unsaved; follow it with a Blueprint pass, or use Recompile Everything.

Messages#

When Message
Play In Editor is running Stop Play In Editor first - recompiling Blueprints while a PIE session is running is not safe.
A save is in progress A package save is already in progress. Try again in a moment.
Summary N processed in s s, with counts of ok, warnings, errors, and skipped.
Stale struct references How many assets had stale struct references on disk, and that they must be saved for the fix to stick.
Unsafe structs How many structs were left alone because compiling them would have crashed the editor.
Saving How many packages were saved and how many failed, usually because the files are read-only: check them out and run again.
Cancelled Cancelled before finishing - not every asset was processed.
Safety stop The run stopped early to avoid a crash. Restart the editor and run Bulk Recompile before opening any Blueprints.

The Output Log category is LogBulkRecompile.

Limits#

  • It recompiles and resaves; it cannot fix invalid graphs or unsupported struct members.
  • It does not run during Play In Editor.
  • Memory use grows with the number of assets in scope.
  • The Blueprint node Recompile All cannot include engine content, force-save, or turn off the unsafe-struct check, and reports no save-failure count.
Documentation
↑ ↓ Navigate ↵ Openesc Close