Kachipochi - Source Relinker

Overview

Every imported asset remembers the Source File it came from.

Move the project to another drive, switch NAS, merge outsourced data, or tidy up your folders — and those paths silently break. Reimport starts asking for files, and nobody knows where the originals went.

Source Relinker finds every broken Source File Path in your project and safely reconnects it — in bulk, with a preview, and with Undo.

Your source files are never touched.

Source Relinker only rewrites the path string stored inside the asset. Your FBX, PNG, and WAV files are never copied, moved, renamed, or deleted.

Features

Bulk scan with a health overview

  • Scan the whole project, the selected folders, or the selected assets.

  • Every Source File is classified as Healthy / Missing / Resolved / Ambiguous / No Source Data / Unsupported / Error.

  • A pie chart shows project health at a glance. Click a slice to filter the table.

Prefix Mapping rules

  • Register old → new prefix rules, e.g. C:\ProjectA → D:\ProjectA, \\OldNAS\Art → \\NewNAS\Art.

  • Set priority, case sensitivity, and enable/disable per rule. UNC paths are supported.

  • Paste a path into Test Input to check the rewritten result and whether the file exists — before scanning.

Candidate search with visible reasons

  • Add Search Roots, and every missing file gets candidates from a background file index.

  • Candidates are scored by stored MD5, relative path, filename, extension, and modified time.

  • The reasons behind every score are shown as badges in the table — no black-box numbers.

Renamed or moved files are still found

  • The MD5 check uses file contents only.

  • A file that was renamed or moved to another folder still matches the hash recorded at import.

Safety-first auto resolve

  • Rows with a clear winner (score threshold + lead over the runner-up) are selected automatically.

  • If same-named files compete without a clear winner, the row stays Ambiguous and you decide.

  • A filename match alone never triggers a relink.

  • Thresholds live in Project Settings, shared by the whole team.

Preview → Apply, with Undo and backups

  • Nothing is written until you review old path, new path, reasons, and affected count in the Apply Preview.

  • Apply is an editor transaction — Ctrl+Z reverts it.

  • A JSON backup is written to Saved/SourceRelinker/Backups right before each Apply.

Force Relink — only when you say so

  • Low-score candidates, mismatched extensions, or a file you pick by hand can be forced through.

  • Only for rows you explicitly select. Forced rows are flagged in the preview, report, and backup.

Team and source control safe

  • Right before Apply, the stored path is re-read and compared with the scan-time value.

  • If a teammate changed it, the row is skipped as a conflict instead of overwritten.

  • Read-only / checkout-required packages are detected up front: Checkout / Skip / Cancel.

Stays out of your way

  • Scanning, indexing, and candidate search run in the background with progress and cancel.

  • The file index is refreshed on every scan, so newly added files are never missed.

  • Open from the Content Browser: right-click assets or folders → Kachipochi → Source Relinker → Check Source Files...

Reimport stays a separate step

  • After relinking, run Reimport explicitly on the rows you choose.

  • Relink success is never mixed up with reimport success.

CSV / JSON reports

  • Export results as UTF-8 CSV, or as a JSON report with scan conditions, mapping rules, results, and plugin/engine versions.

  • Readable by any script or CI pipeline without launching the editor.

No network access

  • No telemetry, no license server, no cloud API. Nothing leaves your machine.

Typical Use Cases

  • Project / drive relocation — moved from C:\ProjectA to D:\ProjectA

    • One Prefix Mapping rule, one preview, every asset updated.

  • NAS / server migration — \\OldNAS\Art → \\NewNAS\Art, or Z: drive → UNC path

    • Rewrite every Source Path in one pass. Unreachable files are reported, not hidden.

  • Outsourced deliveries — reorganized folders, several same-named FBX files

    • Add the delivery folder as a Search Root. MD5 matches resolve automatically; ambiguous rows are left for you.

  • Milestone health check

    • Scan the whole project, export Missing rows as CSV, and track the count until it reaches zero.

Who is this for?

  • Technical Artists and pipeline engineers who keep source paths correct across the whole project and need to fix them in bulk, not asset by asset.

  • Artists who hit "file not found" every time they press Reimport and just want the link back.

  • Leads and producers who move projects between drives, servers, or studios, and need to know how many links are broken before and after.

  • Teams working with outsourcing partners who receive assets whose source paths point to the vendor's machines.

  • Studios on Perforce or Git who need relinks that check out files properly and never overwrite a teammate's change.