The Legend of Zelda: Groundhog Day

I have been playing Zelda: Wind Waker on my new Gamecube lately. Aside from some control issues, the game is a wonder of interesting and unique mechanics, enjoyable narrative, excellent game design, good music and great graphics. However, my experience the past few nights might make me give up on the game altogether, and this is sad. Here is my story. I have often referred to Pete’s savepoint rant in my own rantings about games. Savepoints are truly one of the curses of console gaming. When he had originally written that piece, I mapped the term to what Halo or _Splinter Cell _do, where the user is only allowed to save her state upon reaching certain fixed points in the game narrative. While this system is pretty annoying, I had no idea that an entire universe of pain existed just outside the edge of my vision.

So I was playing Zelda, and having finally acclimated to the mechanics, I was really enjoying myself. It’s not often you come across a game that uses more than two or three mechanics well. Zelda gives you a new toy to play with in every level. This, along with the fantastic presentation and graphics had me really grooving. Then, just as I was really having fun with the jumpy plants, it was bed time. See, I’m old and feeble and need to go to bed at night rather than playing my favorite game until I actually reach the next savepoint. In a fit of optimism, I saved my game, so I could pick it up again the next day. But as I learned, you can never underestimate the psychotic cruelty of the console game designer.

One would think that a correctly functioning save system would save two basic sets of data:

1. The state of the game world.

2. The state of the player.

Apparently, in the world of console game design, one is free to pick and choose which, if any, of these data you actually save. The great thing is that you have to experiment to find out exactly what is saved when you hit that save button. As we have seen before, Splinter Cell and Halo save everything.

In Metal Gear Solid you have the “Oh sure, save anywhere. HAHAHAHA just kidding! We only kept the last savepoint” scheme. Here, the Save menu item is always available, but is silently ignored unless you happen to have recently passed a savepoint. So, you load your game and rather than being back where you saved, you are back at the most recent savepoint before the point at which you saved. This is because it would be thousands of man hours of work to change the game’s user interface to disable the Save menu unless it would actually do something.

Ratchet and Clank has a slightly different twist on this theme. Like Metal Gear, the game lets you pick the Save menu item any time you like, but the game picks a different subset of state of save. In general, if you save and then quit and restart, you come back at the start of whatever mission you were playing. You have to run through the level and do all the jumps and puzzles over again. But, the game does remember which enemies you killed between the start of the level and the checkpoint you reached. So you find yourself running through a long empty area. Also, the game very carefully remembers what items you have, how much health you have, and so on. Thus, the savepoint saves everything that is interesting about the your state and the game state, except your location in the level. This is because storing one extra 64 bit piece of data would have been too resource intensive.

Zelda follows the lead of other platformers, which seem to define an unpredictable continuum that saves some parts of the game world and some parts of the player’s state, but not all of both.

So, the next night, I come back to the game, and I notice that even though I saved my game in the middle of a long dungeon, I appear to have come back at the beginning of the dungeon. Not only that, but all the creatures that were in my way, which I dispatched with my sword, are back again. I conclude that saving the game in the middle of a dungeon does nothing, even though the save game button is always there. This is not quite true. The game does keep track of the puzzles I’ve already solved and the items I already have. I guess it would have been just too hard to also keep track of where I am in the dungeon and what I have killed. Orders of magnitude more data and expense.

It gets worse though. Occassionally in the game, you will come across a Boss, or a Mini-Boss. If you suck, like me, it can take a few tries before figuring out how to kill them (e.g. try a few times, read the walkthrough). Of course, every time you fail you get sent back to the start of the dungeon. This is sadism of the highest order. The end result of all this is that I’ll be playing the same dungeon all over again tonight, and I was already tired of the jumping puzzles last night. If I don’t make it through this time, I will put the game down and never pick it up again.

This is sort of sad, since there is so much in this game that is awesome. But, I don’t have time to deal with the game designer’s brain dead ideas of when I can and cannot save my state.

Of course, adding one simple hardware mechanism to every console would save the day and allow me to finish this game. This mechanism has been widely implemented in mass market computing hardware. I refer, of course, to instant sleep. To wit: when I feel like quitting for the night, and I want to save my place, I hit a magic button and the console goes into a sleep mode where it is inactive, but the complete state of the machine is kept intact by a trickle of power to the memory system. When I want to pick up the game again, I hit another button and the machine wakes up exactly where I left it. The only constraint is that I can’t open the console and switch games.

Now I am free of whatever stupid save system the game designer has decided to implement. I can stop playing when I am stumped by a puzzle, knowing that I won’t have to navigate the whole dungeon again. I can quit just as I meet the new Boss and read the walkthrough before dying the first time. And, most importantly, when I sleep/save/quit, I know for a fact that the system is saving everything, not some random subset of the state that is important to me.

Note that this is not the same as “save anywhere”. This mechanism does not allow for creep saving or saving an infinite tree of different game timelines. It does not require huge save files (since we are keeping the state in the console itself) and both the save and load are instantaneous. All it does it let me save and quit when I want and come back exactly where I left off. This, it seems to me, is what saving my game is supposed to be about. In addition, many modern games on the GBA SP (including all of the GBA ports of Zelda) implement this mechanism, and it is good enough that it allows me to forgive almost all the savepoint sins that might be in the actual game.

So how about it Nintendo, put this into the next GameCube. Then maybe I can see what all the fuss is about Zelda.

Zelda Status Update: I managed to get to the end of the dungeon in one more try. So I might keep going.