From 9c6572e0cc590dc5e0811f8dbe4016583c385b0a Mon Sep 17 00:00:00 2001 From: Collecting Date: Mon, 29 Dec 2025 01:09:20 +0000 Subject: [PATCH] feat(fs): Implement Global Custom Save Path Added a "Global Custom Save Path" configuration option in the Filesystem settings. Implemented a prioritized save-loading hierarchy: Global Path (if enabled) > Per-Game Custom Path > Default NAND. Introduced a non-destructive migration tool that allows users to consolidate their existing saves into the new global location. The migration tool specifically prioritizes per-game custom saves over NAND saves to ensure the most up-to-date data is preserved during consolidation. The migration process is copy-only; no data is deleted from the source directories, ensuring absolute user data safety. Maintained compatibility with the existing "Backup Saves to NAND" feature, ensuring saves continue to be mirrored internally if configured. Signed-off-by: Collecting --- src/common/settings.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/common/settings.h b/src/common/settings.h index cb7a1df37..a2d37f10b 100644 --- a/src/common/settings.h +++ b/src/common/settings.h @@ -686,6 +686,8 @@ struct Values { // Custom Save Paths (with backups) std::map custom_save_paths; + Setting global_custom_save_path_enabled{linkage, false, "global_custom_save_path_enabled", Category::DataStorage}; + Setting global_custom_save_path{linkage, std::string(), "global_custom_save_path", Category::DataStorage}; Setting backup_saves_to_nand{linkage, false, "backup_saves_to_nand", Category::DataStorage}; };