diff --git a/README.md b/README.md index 194e241..70968f2 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ Legend: ✅ Confirmed working, ❔ Unconfirmed, - Not available in the store | Chained Echoes | ❔ | ❔ | | Chorus | ✅ | ❔ | | Control | ❔ | ✅ | +| Coral Island | ✅ | - | | Final Fantasy XV | ✅ | - | | Forza Horizon 5 | ✅ | - | | Fuga: Melodies of Steel 2 | ❔ | ❔ | diff --git a/games.json b/games.json index 8b99b66..8b35be6 100644 --- a/games.json +++ b/games.json @@ -236,6 +236,12 @@ "name": "Railway Empire 2", "package": "KalypsoMediaGroup.RailwayEmpire2Win_e60j8nnj33ga6", "handler": "railway-empire-2" + }, + // Coral Island + { + "name": "Coral Island", + "package": "HumbleBundle.CoralIsland_q2mcdwmzx4qja", + "handler": "coral-island" } ] } diff --git a/main.py b/main.py index 9bf9961..5067236 100644 --- a/main.py +++ b/main.py @@ -450,6 +450,16 @@ def get_save_paths( continue save_meta.append((container["name"], file["path"])) + elif handler_name == "coral-island": + # 1c1f with ".sav" suffix, but if the file name is prefixed with "Backup", we place it in a folder + # without the prefix. + for container in containers: + fname = f"{container['name']}.sav" + if fname.startswith("Backup"): + fname = f"Backup/{fname.removeprefix('Backup')}" + fpath = container["files"][0]["path"] + save_meta.append((fname, fpath)) + else: raise Exception('Unsupported XGP app "%s"' % store_pkg_name)