Source Path Relinker - UE5 plugin
A downloadable game
The art folder moved, and now every Reimport says "Source file not found".
Someone reorganised the texture library. The art moved to a NAS. A contractor delivered into a different tree than the last one. Every asset imported from the old location still records that old path, so Reimport fails on every machine that syncs, and it stays broken until somebody fixes it.
Unreal's answer is a modal file picker, in a details panel row, one asset at a time.
## This does the whole project, and it can prove it
Anything can compare filenames. The reason this is a tool and not a script is that it knows the difference between a match it can prove and a match it is guessing at, and it tells you which one you are looking at.
When an asset is imported, the engine records the MD5 of the source file. That hash is still there, in the asset registry, long after the path went stale. This indexes the folder you name, hashes the files whose extension a broken asset actually asked for, and matches on that recorded hash.
## Six answers, and the class is the product
hash proven - exactly one file under your search root has the MD5 the engine recorded. Safe to write.
hash ambiguous - two or more files carry that MD5. Refused, and both are named.
name only - no usable recorded hash, one file shares the name. Written only if you pass -AllowNameOnly, and always labelled.
name ambiguous - several files share the name and nothing can be proven. Refused.
no candidate - nothing under the root can be this file. It does not quietly fall back to a same-named file, because a same-named file is usually a different revision of the art.
healthy - the path still resolves. Never touched, and counted, so an empty result is legible.
## It reads nothing it does not have to
The survey comes out of asset registry tags. It does not load your project's textures and meshes to read one string out of each. Assets are loaded only during -Apply, and only the ones being rewritten.
## Relinking is reversible, and checked afterwards
-Apply validates every row before it touches anything, copies every file it may write into a journal first, rewrites the paths, saves, and then re-reads the saved packages from disk to confirm the stored path resolves to the file the hash proved. A relink that only looked right in memory is not reported as done. -Undo restores every file.
An asset can carry several source files. The unit of work is the (asset, slot) pair, so a mesh with a separate LOD or skinning source has each slot matched and written independently.
## How you run it
Audit: -run=SPR -Audit
CI gate: -run=SPR -Audit -FailOnBroken (exit 5 when any source path is broken)
Preview: -run=SPR -Root="D:/Art/Library"
Relink: -run=SPR -Root="D:/Art/Library" -Apply
Undo: -run=SPR -Undo=
With no -Paths, the survey covers /Game only. Engine and engine-plugin content record the source paths of the machine Epic built them on, so scanning them would report dozens of broken paths that are not yours and cannot be fixed.
Every run writes a self-contained HTML report. Paths in it are shortened so a screenshot does not carry your machine's folder layout; -FullPaths puts them back.
## What you get
Full C++ source, raw and readable: one editor module. No content, no fonts, no third-party code.
## Scope, stated plainly
UE 5.8 only. Built, gated and run against 5.8 on this machine. Nothing else is claimed.
Windows (Win64), editor-only. It adds nothing to a packaged game.
The download is source: the editor compiles it the first time your project opens, which needs Visual Studio 2022 with the C++ workload.
-Apply is a commandlet and expects the editor closed, like any tool that resaves packages.
It repairs the recorded PATH. It does not reimport for you, and it cannot recover a source file that no longer exists anywhere.
## Documentation
Every switch, every exit code, and the walkthrough:
https://github.com/onefreeman1337/csaf-releases/blob/main/docs/source-path-relinker/README.md
Pairs with
- Orphan Reference Rescuer: repairs references left behind when an asset moved without its redirector
- Retarget Relinker: repoints Blueprints, DataTables and soft references at your retargeted animations
- Migration Ledger: finds and fixes what an Unreal upgrade silently broke
| Updated | 4 days ago |
| Published | 20 days ago |
| Status | Released |
| Author | CSAF — Core Systems Asset Factory |
| Made with | Unreal Engine |
| Tags | asset-management, Automation, editor-tool, gamedev-tool, pipeline, plugin, tools, Unreal Engine, unreal-engine-5, workflow |
| Languages | English |
| AI Disclosure | AI Assisted, Code, Graphics |
Purchase
In order to download this game you must purchase it at or above the minimum price of $14.99 USD. You will get access to the following files:





