I can't find any earlier references to this, though I remember a considerable discussion.
Having offered to code this, I propose to implement a system I have had in mind for some time, using the well known principle of coder's privilege.
The System:
1. Saving is automatic at the end of every turn.
2. A game may be saved part way through the current turn only - at the end of the turn the part way save is removed.
3. The data is saved in an incremental fashion, with a complete copy every so often (the interval to be derived by experiment), though truly unchanging details will be saved once only.
4. Each model will have its own save class, separate from other models.
5. The save file will be zipped.
6. If an earlier game (other than the last move or the current move) is reloaded, any subsequrent saves are lost. However, the player will be given an option to branch the saved game, thus producing another, and distinct, save file.
The advantages:
1. There is no silly micromanagement of save files as happens in Civ.
2. A complete playback of the game is possible.
3. Waste of space by duplicating static data, move after move, is much reduced. In particular, the basic map is saved once only.
4. It exploits the particular assets of Java.
5. I expect to code it so that loading a game is essentially instantaneous. I say this with some confidence, after recoding a program that manipulated an 8Mb Access database into Java. It turned out that the entire information in the database can be stored (zipped) in about 500K, and can be read in in about 1.5 seconds.
Cheers
Having offered to code this, I propose to implement a system I have had in mind for some time, using the well known principle of coder's privilege.
The System:
1. Saving is automatic at the end of every turn.
2. A game may be saved part way through the current turn only - at the end of the turn the part way save is removed.
3. The data is saved in an incremental fashion, with a complete copy every so often (the interval to be derived by experiment), though truly unchanging details will be saved once only.
4. Each model will have its own save class, separate from other models.
5. The save file will be zipped.
6. If an earlier game (other than the last move or the current move) is reloaded, any subsequrent saves are lost. However, the player will be given an option to branch the saved game, thus producing another, and distinct, save file.
The advantages:
1. There is no silly micromanagement of save files as happens in Civ.
2. A complete playback of the game is possible.
3. Waste of space by duplicating static data, move after move, is much reduced. In particular, the basic map is saved once only.
4. It exploits the particular assets of Java.
5. I expect to code it so that loading a game is essentially instantaneous. I say this with some confidence, after recoding a program that manipulated an 8Mb Access database into Java. It turned out that the entire information in the database can be stored (zipped) in about 500K, and can be read in in about 1.5 seconds.
Cheers
Comment