Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: TOTALLY unable to (manually) save  (Read 1197 times)

Jackal912

  • Escaped Lunatic
    • View Profile
TOTALLY unable to (manually) save
« on: March 24, 2009, 07:24:11 pm »

I've found one, essentially infinitely repeatable (for me, anyway), bug -  if I turn on 'autobackup' and seasonal autosaves in the init.txt file, the only saves which well ever actually stay saved, are the ones that are automatically created at every change of the seasons, OR sometimes when I continue from the backed up 'region1' save, which is essentially the moment after I embarked, if I save /before a seasonal save/ it'll overwrite region1.

What it appears to need is for the save and quit to create it's own folder when autobackup is on.
Logged

Gertack

  • Bay Watcher
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #1 on: March 24, 2009, 11:41:32 pm »

It's supposed to always overwrite "region1" (or whatever you loaded from).
Logged

Dwaref

  • Bay Watcher
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #2 on: March 25, 2009, 10:22:06 am »

DF is not designed so you can go back to earlier saves. This is a legacy of roguelikes everywhere.

Reverting to earlier states is called save-scumming and is considered bad form, losing is fun.
Logged
He is somewhat reserved. He prefers to be alone. He doesn't need thrills or risks in life. He is never optimistic or enthusiastic about anything. He has a fertile imagination. He is open-minded to new ideas. He is put off by authority and tradition. He is very straightforward with others. He is very disorganized. He thinks it is incredibly important to strive for excellence. He has very little self-discipline. He takes time when making decisions. He doesn't really care about anything anymore.

Jackal912

  • Escaped Lunatic
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #3 on: March 25, 2009, 03:37:24 pm »

You missed the point, dwaref - as it is right now, with an option /built into/ the game(auto backup), you HAVE to save scum - it creates older save versions that are never deleted except manually, and those are the only ones you can use, you can't save and quit, as it won't work. Backups are perfectly reasonable due to my game's tendency to crash at inconvenient times. Also, I like to keep the 'you just embarked' save in case I want to try the whole map over again in a completely different way (some regions are pretty nice, and reclamation means you can't build an entirely new fort)
« Last Edit: March 25, 2009, 03:39:39 pm by Jackal912 »
Logged

Derakon

  • Bay Watcher
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #4 on: March 25, 2009, 04:03:36 pm »

There's a "save on embark" option which will make a backup save the moment your dwarves arrive.

However, save-and-quit should update the region1 (or whatever) save file. It certainly does for me and I have seasonal backups turned on.
Logged
Jetblade - an open-source Metroid/Castlevania game with procedurally-generated levels

Kethas

  • Bay Watcher
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #5 on: March 25, 2009, 06:13:09 pm »

Two points.

First, you'll notice that when working correctly, DF writes seasonal autosaves into the <region>-<season>-<year> folder, and in your load list in DF they're listed as <region>-<season>-<year>. Manual saves (i.e. by selecting Save from the ingame menu, saving, and returning to the main menu) save into the "current" folder, and are listed as <region>. So some part of DF, and (possibly) other roguelikes, must know to differentiate between manual and automatic saves and to append the -<season>-<year> strictly on automatic saves.

Somehow this gets screwed up. In my experience, upon loading a seasonal autosave, the game still believes I've loaded a manual save. It therefore appends <season>-<year> to what it thinks is just the region name - but instead I get saves in the <region>-<season_of_first_autosave>-<year_of_first_autosave>-<season_of_current_autosave>-<year_of_first_autosave>. For manual saves, it strips off the season and year from the end, writing into the <region>-<season_of_first_autosave>-<year_of_first_autosave> folder - the same name used originally for the seasonal autosave you loaded.

Interestingly, this can happen multiple times, and the game keeps appending seasons and years. I'm currently loading my (manual) save from the "region1-spr-202-sum--win-203" directory. Manual saves always save *somewhere,* at least in my opinion - but you need to guess and check the directories.

"But Kethas," you say, "just see which folders were modified last - surely that's the most recent save. No need to check them all." Interestingly, at least for me, that's not always the case - sometimes I have an empty "current" folder showing as the most recently modified - but the game IS saving somewhere else, so DF is accessing at least two folders. This suggests that DF is doing something other than simply picking a directory name according to some (possibly flawed) algorithm and saving the current game in there. Another indicator a test I did:

-load a seasonal autosave
-delete all subfolders in the save folder, excluding "region1" and the seasonal autosave I loaded
-save
-load from the resulting save

When I do this I end up playing from one of the saves I deleted. How does DF access it? Does DF load multiple save files just to screw with me?
Logged

AncientEnemy

  • Bay Watcher
  • The Answer is always POUR MAGMA ON IT
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #6 on: March 25, 2009, 06:25:30 pm »

jackal: i'm not sure I see the problem. when you manually save, it'll overwrite region1. if you want to keep a copy of your initial embark, just copy the region1 folder and rename it as something else before you save over it.



the game does not make any distinction between a backup save and a regular save. they're just save files.

when you manually save or the game auto-saves, it saves as the same name as the folder you loaded.

when it auto-saves with backups turned on, it also makes a duplicate folder and adds the season/year onto the name.

it's very easy to avoid confusion as to what your current save is. never load from an backup folder. if you want to use one of your backups, open the save folder, delete region1, copy the autobackup, and rename it to region1. load up DF and play from there.

-

Two points.

First, you'll notice that when working correctly, DF writes seasonal autosaves into the <region>-<season>-<year> folder, and in your load list in DF they're listed as <region>-<season>-<year>.
DF writes automatic -backups- into those folders. it automatically saves into the <folderyouloadedfrom> folder, same as manually saving. if backups are on, it then makes a copy of <folderyouloadedfrom> and adds the date.
Quote
Manual saves (i.e. by selecting Save from the ingame menu, saving, and returning to the main menu) save into the "current" folder, and are listed as <region>.
careful there, I know what you mean but watch how you phrase it since there's a folder called current which has little to do with this.
Quote
So some part of DF, and (possibly) other roguelikes, must know to differentiate between manual and automatic saves and to append the -<season>-<year> strictly on automatic saves.
again, automatic saves and manual saves both save to the same folder that you loaded from. automatic -backups- create a new copy of this folder with the new name.
Quote
Somehow this gets screwed up. In my experience, upon loading a seasonal autosave, the game still believes I've loaded a manual save. It therefore appends <season>-<year> to what it thinks is just the region name - but instead I get saves in the <region>-<season_of_first_autosave>-<year_of_first_autosave>-<season_of_current_autosave>-<year_of_first_autosave>. For manual saves, it strips off the season and year from the end, writing into the <region>-<season_of_first_autosave>-<year_of_first_autosave> folder - the same name used originally for the seasonal autosave you loaded.

Interestingly, this can happen multiple times, and the game keeps appending seasons and years. I'm currently loading my (manual) save from the "region1-spr-202-sum--win-203" directory. Manual saves always save *somewhere,* at least in my opinion - but you need to guess and check the directories.
again, a misunderstanding on how autosaves work. if for example it just autosaved in spring, and then your computer crashed, to load that spring, you just load <region>. <region><spring><year> is a backup of <region>.
Quote
"But Kethas," you say, "just see which folders were modified last - surely that's the most recent save. No need to check them all." Interestingly, at least for me, that's not always the case - sometimes I have an empty "current" folder showing as the most recently modified - but the game IS saving somewhere else, so DF is accessing at least two folders. This suggests that DF is doing something other than simply picking a directory name according to some (possibly flawed) algorithm and saving the current game in there. Another indicator a test I did:

-load a seasonal autosave
-delete all subfolders in the save folder, excluding "region1" and the seasonal autosave I loaded
-save
-load from the resulting save

When I do this I end up playing from one of the saves I deleted. How does DF access it? Does DF load multiple save files just to screw with me?
after you've loaded a save, it doesn't matter what you do with the files in the save folder. you could load region325532, delete everything in the save folder, and when you save it will create a region325532 folder. the game reads the save folder once when you load it, and writes it back down when you save.
« Last Edit: March 25, 2009, 06:51:55 pm by AncientEnemy »
Logged

Kethas

  • Bay Watcher
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #7 on: March 25, 2009, 07:28:13 pm »

Please reread my post. Example:

1) Load Spring of 201. Save and quit.
2) Boot, load Summer of 203. After loading, delete all folders in \save\ except \region1\ (say) and \region1-sum-203\
3) Save and quit.
4) Load the save marked "region1"
5) You're now staring at the spring of 201.

I've had this happen multiple times. Either I *really* don't understand what the autosave - and the save feature in general - is trying to do, or this is not intended behavior.
Logged

AncientEnemy

  • Bay Watcher
  • The Answer is always POUR MAGMA ON IT
    • View Profile
Re: TOTALLY unable to (manually) save
« Reply #8 on: March 25, 2009, 07:55:19 pm »

err, when you load region1-sum-203, then manually save and quit, it saves to region1-sum-203. not to region1. it saves to the same name as the one you loaded. this is what my long ass post was about.

again, the main distinction is that autosave and autobackup are -not- the same thing. and the game does not 'know' which save is the original and which is the backup. all save files are treated the same. all manual and automatic saves are written as the same name as the folder you loaded them from. only automatic backups get the date added, to whatever the name of the save you loaded was.

example:
you start a new game (region1)
summer arrives:
 -the game autosaves. the folder region1 now reflects summer 201
 -the game creates an autobackup titled region1-sum-201 that is a duplicate of region1
 -you save and quit immediately

now if you wanted to continue from where you left off, the 'right' way to do it would be to load region1. NOT region1-sum-201. this is just a copy in case region1 becomes unusuable or if you want to come back to summer 201 later on.

now, if you load region1-sum-201 (this is the 'wrong' way to continue) and play until autumn:
 -the game autosaves to region1-sum-201. this save now reflects autumn of 201
 -the game creates a duplicate called region1-sum-201-aut-201

is this clear enough? when you're saving and continuing normally, you should only ever load region1 each time. the region1-season-year folders are merely backup copies in case something goes wrong, and aren't intended to be used for normal play.

if you do need to use one of them (your region1 save becomes corrupted or you decide you want to go back and replay from a certain season)
-remove region1 (delete/move/rename it)
-make a copy of region1-season-year
-rename that copy to region1
-load region1
« Last Edit: March 25, 2009, 08:13:08 pm by AncientEnemy »
Logged