Side Projects
Moving Epic Games to a New Drive Without Re-Downloading Them

Part 8 of the thread Games and gear
- What it is
- Open-source tool
- My role
- Creator
- Year
- 2025
- Built with
- PowerShell
- Python
- Tkinter
- psutil
- PyInstaller
- Move your Epic games to another drive, point this tool at the new folder, and the launcher picks them back up without re-downloading.
- It rewrites three paths in each manifest
.itemfile and makes a timestamped backup first. - Comes as a PowerShell script, a Python GUI, or a standalone .exe.
- Close the launcher first, keep the folder names the same, and pick the parent folder.
Move an Epic Games install to a bigger drive and the launcher acts like it's never met you. The files are right there, but it wants to download the whole game again. With a few big titles that's a lot of bandwidth and an evening of waiting, all because a handful of paths in some config files still point at the old drive.
epic-games-transfer updates those paths for you. You move the games, point the tool at the new folder, and the launcher finds them where they are now.
Why the launcher loses track
The Epic Games Launcher keeps a manifest file for every installed game, stored as .item files here:
C:\ProgramData\Epic\EpicGamesLauncher\Data\Manifests
Each one records where the game lives. Move the folder and those records are stale. The tool opens every manifest and rewrites three fields:
| Field | Points to |
|---|---|
InstallLocation |
The game's folder |
ManifestLocation |
The .egstore folder inside it |
StagingLocation |
The .egstore/bps folder |
That's it. It doesn't touch game files, only the launcher's own records.
Three ways to run it
| Version | Good for |
|---|---|
| PowerShell script | Windows, nothing to install, folder picker dialog |
| Python GUI | Progress per game; runs on Windows, Linux and macOS |
| Standalone .exe | Windows 10 and up, no Python needed |
Whichever you pick, it closes the launcher if it's running, backs up the manifests to a timestamped Backups/ folder, checks that each game folder and its .egstore folder actually exist, updates everything in one batch, and finishes with a summary of what it updated, skipped or failed. Every step is written to EpicManifestUpdater.log as well, so you can see exactly what changed.
Using it
Move the games first. Then close the Epic Games Launcher all the way, system tray included.
For the PowerShell version, right-click EpicManifestUpdater.ps1, choose "Run with PowerShell", and pick the folder that now holds your games. If Windows refuses to run the script, this one-time setting fixes it:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
For the Python GUI:
pip install -r requirements.txt
python epic_manifest_updater.py
Click "Select New Games Folder", then "Update Manifests", and restart the launcher when it's done.
Tip
Select the parent folder that contains all your game folders, not one game's folder. And keep the game folder names exactly as they were before the move, because that's how the tool matches manifests to games.
If you're shuffling other folders between drives too, I wrote up a robocopy script for moving a list of folders to a new drive. It pairs well with this: move first, then fix the manifests.
Rough edges
The README is straightforward about the limits, and they're mostly deliberate trade-offs to keep the tool small:
- One destination only. All the games you're fixing need to live under the same folder. Split libraries across several drives aren't handled yet.
- No dry run. It can't preview changes, though the backups make it safe to try.
- Restoring is manual. If you want to roll back, you copy the backed-up manifests back yourself. There's no undo button.
- The Python version is GUI-only. No command-line flags for scripting it.
Heads up
The tool tries to close the launcher for you, but the README recommends closing it yourself first anyway. It's the safer habit, and it means nothing else is holding those files while they're being rewritten.
On the wish list: multi-location support for split libraries, a CLI for automation, and a one-click restore button.
Try it
It's MIT licensed and on GitHub. If you've been putting off moving your Epic library because you don't want to sit through the downloads again, this is the fix.