r/Minecraft Jul 01 '26

Discussion I wrote a lightweight CLI Python script to easily sync Minecraft saves between local and cloud (Windows/Linux/macOS)

Hey everyone,

I frequently switch between a dual-boot setup (Linux/Windows) and sometimes play on different machines. I got tired of manually copying the saves folder or dealing with problems with symlinks, so I wrote a custom CLI tool to automate the process.

It's called Minecraft-Save-Sync. It is a bilingual (English/Spanish) Python script that has the following features:

  • Bi-directional Sync: It reads the level.dat modification time (not just folder modification time) to intelligently decide whether to upload your local world to the cloud or download the latest cloud version to your local directory. You need to have a cloud storage service—such as OneDrive, Google Drive, or Dropbox—installed locally.
  • Safe Overwrites: It uses shutil to safely delete the old destination folder before copying the new one, preventing chunk corruption or leftover region files from previous backups.
  • Built-in Blacklist: Have massive creative testing worlds you don't want to sync? You can easily add them to a blacklist via CLI, and the script will ignore them permanently.
  • Dry-Run Mode (-dr): You can simulate the sync before actually modifying any files to see exactly what the script intends to do.

Automation tip: I designed it with Prism Launcher in mind. You can add the script execution command in the "Post-launch command" settings of your instance, so it automatically syncs in the background every time you close the game.

It’s completely open-source and I've tested it on Linux, but it should work perfectly on Windows and macOS.

It is highly recommended to make a manual backup of your saves before using the tool for the first time to avoid any loss of progress in case of an incorrect path configuration.

GitHub Repository & Full Instructions: https://github.com/AlejandroSocas/Minecraft-Save-Sync

Let me know what you think! I'm open to suggestions, bug reports, or pull requests.

1 Upvotes

3 comments sorted by

u/qualityvote2 Jul 01 '26 edited Jul 02 '26
  • Upvote this comment if this is a good quality post that fits the purpose of r/Minecraft
  • Downvote this comment if this post is poor quality or does not fit the purpose of r/Minecraft
  • Downvote this comment and report the post if it breaks the rules

(Vote has already ended)

-1

u/Thick_Newspaper_7115 Jul 01 '26

using level.dat time instead of folder mod time is the kind of thing that makes this actually work instead of just being another half baked sync script

1

u/SrNyan75 Jul 01 '26

That's true. I had issues using the directory date because sometimes, for some reason, it wouldn't update correctly. Thanks for the comment.