devilutionX icon indicating copy to clipboard operation
devilutionX copied to clipboard

Remind player to save game before quitting

Open BileDemon opened this issue 1 year ago • 24 comments

I started a new character for v1.5.0 and since I know the game fairly well, I cleared about 4 levels without saving just once. I just didn't think about it.

A few minutes ago I wanted to wrap it up for today, pressed ESC and quit the game. At that moment I saw the "Save Game" menu option but it was too late. Progress gone... 2 hours of gameplay for the trashcan, all the loot vanished. I'm pretty sure I won't be replaying all of that again, so that's it for me, unfortunately. In my defense: Just yesterday I played a game that does not even have a save/load menu option. You just quit and continue automatically wherever you are. I guess that's what confused me, I promise you, I'm not an idiot.

Maybe it could be a good idea to remind the player that he has in fact not saved the game in a while and that much of the progress will be lost. Maybe the game could remind the player that quitting without saving is in fact exactly that.

BileDemon avatar Jun 16 '23 14:06 BileDemon

Interesting idea.

I'd agree but would suggest adding a time window to the decision (that could be configurable): e.g. only show the option if it's been "X" minutes since the person last saved.

Otherwise, this could become annoying in normal flows.

julealgon avatar Jun 16 '23 17:06 julealgon

Another idea could be autosave when going through stairs as an option. I can't really think of any reasons why you would want to reload a save after completing multiple levels as opposed to reloading a save at the start of a level.

DakkJaniels avatar Jun 16 '23 19:06 DakkJaniels

@DakkJaniels autosave on stairs is an interesting idea. Although, if you are trying to collect your items after dying, it can be really troublesome, sometimes is better losing the progress but keeping your items.

yuripourre avatar Jun 16 '23 20:06 yuripourre

@DakkJaniels autosave on stairs is an interesting idea. Although, if you are trying to collect your items after dying, it can be really troublesome, sometimes is better losing the progress but keeping your items.

There is no saving in multiplayer, at least not in the sense we are talking about here. You just die in single player, you don't drop items.

DakkJaniels avatar Jun 16 '23 20:06 DakkJaniels

@DakkJaniels Ops, my bad, I never play single player!

yuripourre avatar Jun 16 '23 22:06 yuripourre

"Are you sure?" type prompts are annoying and manual saving is not exactly rare in old video games. We've also gone years without getting a similar complaint. I think you just learn from the mistake here.

FitzRoyX avatar Jun 20 '23 00:06 FitzRoyX

I have seen lots of videos where players are shocked the game doesn't save automatically. If you just lost 6 levels of progress you might not feel like retrying. It's not always that they are even sure how saving works after that. The world seams to have changed a bit.

AJenbo avatar Jun 20 '23 01:06 AJenbo

I'd agree but would suggest adding a time window to the decision (that could be configurable): e.g. only show the option if it's been "X" minutes since the person last saved.

Otherwise, this could become annoying in normal flows.

I'm not sure, but I think this suggestion might actually be more annoying than an unconditional prompt. Instead of memorizing the exact sequence of clicks/keypresses to exit the game every time, you may occasionally get surprised by an additional prompt that isn't intuitively conditional. Mobile games do this kind of thing to get you to click on ads, and it can be infuriating.

StephenCWills avatar Jun 20 '23 02:06 StephenCWills

So what about having an autosave slot that always saves at the last positive level transition, which you can get back to when something like that happens, so you won't lose as much progress. Also the game might crash and you're left with nothing. I've seen other games from that era with one or more autosave slots. These can be highly convenient for the player.

BileDemon avatar Jun 20 '23 04:06 BileDemon

So what about having an autosave slot that always saves at the last positive level transition, which you can get back to when something like that happens, so you won't lose as much progress. Also the game might crash and you're left with nothing. I've seen other games from that era with one or more autosave slots. These can be highly convenient for the player.

People could become so reliant on the autosave system that they get in the habit of loading it even when it isn't the furthest progress. You're probably more likely to lose progress by confusing multiple saves per character than doing what you did.

And if you autosave in the background invisibly, now there's no indicator that it's even happening. You'd have made this same thread, the only difference is we'd have told you where the autobackup saves are to recover your data and everyone else gets their ssd hard drives thrashed.

FitzRoyX avatar Jun 20 '23 05:06 FitzRoyX

... everyone else gets their ssd hard drives thrashed.

The game is already writing to the save file whenever you use the stairs. This isn't going to harm your SSD.

StephenCWills avatar Jun 20 '23 05:06 StephenCWills

And if you autosave in the background invisibly, now there's no indicator that it's even happening.

There might be a solution to that :thinking:

AJenbo avatar Jun 20 '23 11:06 AJenbo

Any problem with what I suggested? I was going to see if I can figure out how to add something to the game menu to add an autosave option.

DakkJaniels avatar Jun 20 '23 12:06 DakkJaniels

sounds fine, could have it as "continue from last checkpoint" kinda thing, each level is saved as a temp already, so you could set it to a state where it will load them rather then the perm files. Then you only need to save the game state as a temp and you would be good to go.

AJenbo avatar Jun 20 '23 13:06 AJenbo

So what about having an autosave slot that always saves at the last positive level transition, which you can get back to when something like that happens, so you won't lose as much progress.

This is a very nice approach to it indeed and fairly standard these days. With a separate autosave slot, I'd probably be a bit more liberal with how often it is saved, as well, although limiting it initially to level transitions seems like a very decent approach.

Also the game might crash and you're left with nothing. I've seen other games from that era with one or more autosave slots. These can be highly convenient for the player.

Also very relevant... the autosave could potentially corrupt the main save data in some corner scenarios...

A very recent game that immediately comes to mind (since I'm playing it) is Zelda TOTK which autosaves and allows manual saves.

We could also autosave on game exit, BTW.

julealgon avatar Jun 20 '23 14:06 julealgon

Also very relevant... the autosave could potentially corrupt the main save data in some corner scenarios...

I agree that it's relevant, but it should be two different solutions. Autosaves can protect you from losing progress due to human error (with some additional side benefits). Automatic backups can protect you from save file corruption.

StephenCWills avatar Jun 20 '23 18:06 StephenCWills

Isn't it possible that you go down stairs purely to escape monsters and now you've got low hp, no tp, and the game autosaves you into a pickle? What if you haven't been manually saving the whole time because of the convenience of relying on the autosave, you just start a new game with that char?

FitzRoyX avatar Jun 20 '23 23:06 FitzRoyX

Isn't it possible that you go down stairs purely to escape monsters and now you've got low hp, no tp, and the game autosaves you into a pickle?

Back in the 90s, video games didn't hold your hand. They do this now to prevent people from getting mad and quitting the game, ending their constant stream of revenue from microtransactions. It's part of psychological manipulation. Most Diablo players are older and will learn from their mistakes.

galaxyhaxz avatar Jun 21 '23 01:06 galaxyhaxz

Isn't it possible that you go down stairs purely to escape monsters and now you've got low hp, no tp, and the game autosaves you into a pickle? What if you haven't been manually saving the whole time because of the convenience of relying on the autosave, you just start a new game with that char?

I don't see how that is relevant to what is being proposed. Are you commenting on an earlier part?

AJenbo avatar Jun 21 '23 01:06 AJenbo

That autosave should potentially be disregarded as it could save players in a bad position. It means, you have to play much more carefully, not attempting to take on more than you can handle, or the game will save and thus you face the consequence. The single player save system is already quite abusable.

galaxyhaxz avatar Jun 21 '23 01:06 galaxyhaxz

I think you guys missed the part where we said it would be a separate from the manual save.

AJenbo avatar Jun 21 '23 01:06 AJenbo

Isn't it possible that you go down stairs purely to escape monsters and now you've got low hp, no tp, and the game autosaves you into a pickle? What if you haven't been manually saving the whole time because of the convenience of relying on the autosave, you just start a new game with that char?

Yes, it's possible the autosave could put you into unavoidable danger. Manual save already allows this, so that really just represents a problem that is not solved by autosave as opposed to a downside to having it. That said, having options for both a manual save and autosave might give players another avenue for recovery if they happen to compromise one of them in this way. So it's still probably better to have autosave than not.

StephenCWills avatar Jun 21 '23 02:06 StephenCWills

Given that devilutionx provides a few options for a mostly vanilla experience without most additions, you could just have "Autosave: On/Off" in the main menu, it would save every 5 mins or so.

galaxyhaxz avatar Jun 21 '23 02:06 galaxyhaxz

it would save every 5 mins or so

Just drop the check for the existing auto save only applying for MP then. But I don't like that idea so much.

AJenbo avatar Jun 21 '23 02:06 AJenbo

How about

  • Save Game
  • Load Game
  • Save and Exit (Acts as both Save and New Game, and Quit Game is accessed from the main menu only instead of both the main menu and in game)

The only way to screw up is to hit load Game and lose progress then. If a player doesn't want to Save while quitting, they can just load Game first then hit Save and Exit.

kphoenix137 avatar Jul 02 '23 04:07 kphoenix137

I would like to revamp it. A lot of people fail to realize that "new game" is the way to get back to the menu and instead restart the game each time. On consoles and phones quit takes you to the main menu, since you can exit the application. But it should still be possible to quit without saving i think.

AJenbo avatar Jul 02 '23 11:07 AJenbo

But it should still be possible to quit without saving i think.

Agreed.

The way the game works is just too different from say D2 where it "constantly saves" the game anyways so it makes 100% sense that quitting also saves.

julealgon avatar Jul 03 '23 21:07 julealgon

How do you really fix this issue specifically? The problem is that the player forgot to save and then exited the game. I agree New Game should be renamed to something like "Exit Without Saving". Would that be enough of a reminder for the player to save though? The entire problem was a result of mindless clicking when the player is used to other modern games automatically saving. One extremely complex but potential solution might be to do it the same way that games like GTA5, RDR2, and Skyrim do it. You'd have a unique directory for the character you want to play (or mpq directory), then hero directory has the capacity for multiple saves. For example you could manually save the game before the butcher, hen manually save before Lazarus, then decide to load up the save you did before the butcher, then load the save before Lazarus again. In addition to managing multiple save points per hero, you'd have a save file labeled auto-save, which at intervals will automatically auto save the game to that save point, always saving most recent gameplay to it.

kphoenix137 avatar Jul 03 '23 23:07 kphoenix137

How do you really fix this issue specifically? The problem is that the player forgot to save and then exited the game. I agree New Game should be renamed to something like "Exit Without Saving". Would that be enough of a reminder for the player to save though? The entire problem was a result of mindless clicking when the player is used to other modern games automatically saving. One extremely complex but potential solution might be to do it the same way that games like GTA5, RDR2, and Skyrim do it. You'd have a unique directory for the character you want to play (or mpq directory), then hero directory has the capacity for multiple saves. For example you could manually save the game before the butcher, then manually save before Lazarus, then decide to load up the save you did before the butcher, then load the save before Lazarus again. In addition to managing multiple save points per hero, you'd have a save file labeled auto-save, which at intervals will automatically auto save the game to that save point, always saving most recent gameplay to it.

Auto-save is like a lazy option to saving then with the option to save and load manual save points without accidentally overwriting anything.

kphoenix137 avatar Jul 03 '23 23:07 kphoenix137

You'd have a unique directory for the character you want to play (or mpq directory), then hero directory has the capacity for multiple saves. For example you could manually save the game before the butcher, hen manually save before Lazarus, then decide to load up the save you did before the butcher, then load the save before Lazarus again. In addition to managing multiple save points per hero, you'd have a save file labeled auto-save, which at intervals will automatically auto save the game to that save point, always saving most recent gameplay to it.

I wouldn't go as far as saying that you need separate manual save slots, but I do think having at least a passive autosave slot (that also auto-saves when exiting) alongside a fully manual slot would be a dramatic improvement over what the game currently offers and should fully prevent those accidents where people forget to save for whatever reason especially when exiting the game.

Another option to a manually-managed multi-slot solution, would be to keep the last "N" manual saves but not allow the player to pick the save slot when saving. Personally, I don't like that because it just increases the exploitability of the game but sure... would certainly open up more options for players and make the game feel more "modern".

julealgon avatar Jul 04 '23 13:07 julealgon