Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Save management system (for consideration) #14

Open
vesper8 opened this issue Jan 6, 2023 · 3 comments
Open

[Feature Request] Save management system (for consideration) #14

vesper8 opened this issue Jan 6, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@vesper8
Copy link

vesper8 commented Jan 6, 2023

I know that at first glance this will feel very much out of scope. I just think this would be an awesome addition to your launcher and I've yet to see anything like this on Mac.

In the past I've implemented a quick-save / quick-load feature for different games that would essentially just map a hotkey or a CLI command to doing a backup or restore of the save files for specific games.

This would add quick-save/quick-load functionality to all the games that don't support it. Such as pretty much all roguelike/roguelite games.

I know I would use this a lot!

Once the main logic is setup, the only thing required is to know where each game saves its save games, which could be customized on a per-game basis and ideally would be auto-detected/guessed based on common save file locations.

Please consider adding this : )

@jxhug
Copy link
Member

jxhug commented Jan 6, 2023

I think this is a cool idea, I'd just like to have some more info on how the CLI command would work. Can you give an example? We have a discord server you can join to contribute ideas for features. It might be easier to explain there: https://discord.gg/YWNdkJcu

@vesper8
Copy link
Author

vesper8 commented Jan 6, 2023

Well I use the CLI to invoke the quick-save and quick-load because it's convenient for me and moreso because I have no idea how to create a sweet UI like what you've done here.

But I imagine that the implementation via Phoenix wouldn't make use of the CLI at all.

You would specify where each game's save files are stored on the filesystem. And ideally this could be auto-detected/guessed to help users configure this part.

Once we know the path where the game stores the save files.

Then Phoenix would handle a few operations via button clicks.

Quick-save makes a backup of the save files (sometimes it's a single file, sometimes it's a folder containing many files), it would store this backup somewhere and keep track of it. There could be a single quick-save "slot" or there could be multiple save slots.

Then, if the user later wants to "quick-load" or simply "load" one of the save backups, then Phoenix would grab the files it has previously backed up and it would restore them to their original location, overwriting the current ones.

Usually you also have to quit the game and re-open it, or at least quit to the main menu. And then upon clicking "continue" it will use the save file you just restored.

This is very convenient for hard games such as roguelite/roguelike games that don't allow you to save at all. This is also called 'save scumming' which is sometimes frowned upon.

But this feature would be useful not only for games that don't support in-game saving/quick-saving but even for games that do. Sometimes games only allow you to have one save slot and you may want to make backups often.

Another cool feature that I would use would be the ability to periodically make backups of the save files. So making a save backup every 30 minutes for example. Because sometimes you do something bad in a game and wish you could go back but the game won't allow you for various reasons. Or maybe your save gets corrupt.. so having periodic save backups becomes a godsend.

@Shock9616
Copy link
Member

I definitely like this idea, and it's definitely not out of scope for the project as a whole, but I think in the app's current state it's more important to get core functionality all working and stable first. This definitely belongs on a list of long-term goals though! I would love for this app to get that sort of functionality eventually!

@jxhug jxhug added the enhancement New feature or request label Jun 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Backlog
Development

No branches or pull requests

3 participants