I've been implementing a checkpoint system using the save/load system. While the system is awesome, it's a bit problematic that it doesn't give a more fine-grained control over what's saved and what isn't.
For example, I'm trying to have my background music go uninterrupted between respawns. However, the save/load action returns the audio to the same position that it was in when saving, which is awkward sounding and strange.
The only way to get around this at the moment is to have an object with 'no save' behavior, and having instance variables on that object to keep track of playback time and then replaying the audio at the correct position upon respawn.
This is just one example - I'm sure many of you will agree that a finer control of what is saved and what isn't would be very helpful.
What do you think?