Move an imported content pack from your Content root into any folder, like /Game/ThirdParty/PackName. Preview every move first, execute in batches, revert the last move. Editor-only.
Fab and marketplace packs often land in the root of your Content folder. Moving them by drag-and-drop is slow, easy to get wrong on large packs, and Migrate can't target a specific subfolder in the same project.
Asset Relocator moves an already-imported pack (for example /Game/DemoPack) into a folder you choose, such as /Game/ThirdParty/DemoPack. It uses the engine's own asset rename, which updates referencing assets. Before anything changes, Preview (Dry-Run) shows every asset's old and new path and flags conflicts and warnings. If you change your mind, Revert Last Move (this session) puts the last move back.
Asset Relocator works on content after it has been imported. It does not hook into or replace the Fab downloader.
FeaturesRelocate a pack folder into any folder under /Game (default target parent: /Game/ThirdParty)
Use Selection as Target Parent — set the Destination from the Content Browser selection (you can still type a path)
Preview (Dry-Run) — lists every asset to move with its new path, plus conflicts and warnings; nothing changes while Dry Run is on (default)
Execute is blocked while the preview has conflicts or errors (e.g. an asset already exists at the destination)
Export Report (JSON)... to Saved/AssetRelocator/Reports/
Batched moves using the engine's asset rename, with a configurable Batch Size
Redirector fix-up — redirectors created by the move are fixed up afterward: 0 before, some during the move, 0 after (shown with Show Redirectors on, UE 5.8)
Revert Last Move (this session) — undo the most recent move during the current editor session
Scripting — Python-callable RelocateWithReport and RevertLastWithReport return an error count and a full report
Editor-only — nothing is added to your packaged game
Before large moves, commit to source control or back up your project.
Known limitationsLevels that are currently open are skipped with a warning. Close them first (open another level), then run Preview (Dry-Run) again.
Revert Last Move only undoes the most recent move in the current editor session. The record is lost when the editor closes; use source control or a backup beyond that.
Redirector cleanup is scoped to the assets moved; older redirectors elsewhere in the project are not touched (use the engine's Fix Up Redirectors).
World Partition / One File Per Actor levels are not verified; external actor packages are skipped by default.
Sources and targets must be under /Game (plugin mount points are not supported).
Empty source folders may remain after a move; delete them manually.
When run from an unattended script/commandlet, redirector fix-up is skipped and a warning is logged.
Type: Code plugin, one Editor module (no runtime module)
Engine versions: Targets UE 5.0–5.8. Functionally verified on UE 5.0, 5.3, 5.4, 5.6, 5.7, and 5.8. Build-verified on UE 5.1, 5.2, and 5.5.
Platform: Windows (Win64) editor
Open: Tools → Haishan → Asset Relocator..., or right-click a folder → Relocate with Asset Relocator...
Settings: Edit → Project Settings → Plugins → Asset Relocator (Default Target Directory, Dry Run, Batch Size, Fixup Redirectors After Move, Skip External Actors)
Documentation: User Guide, Quick Start and FAQ in the plugin's Docs/User folder
Publisher: Haishan · Author: Christon Chan