Posts Projects //TODO Links->

Chip's Challenge on Steam...WTF?

On a niche podcast I host with a friend of mine, I mentioned how Chip's Challenge was released on Steam for free, and that somehow the size of this game was somewhere around 100MB. This may not sound big for a game, and today it really isn't with new AAA titles coming in closer to 100GB, but the thing is, Chip's Challenge is an old game. In fact has a copy of the Windows 3.1 version, and it weighs in at 198KB zipped, 488KB extracted. I can't run it under Windows 10, but I suspect it'll work fine if I copy it over to the Pentium machine on my other desk.

The contents of the Chip's Challenge for Windows 3.1 archive

On the podcast we don't focus on games, but I'd brought it up as another lamentable example of how the progression of technology often seems to involve crazy changes, like taking a small game and somehow making it huge. But I didn't think much more of it, until a friend of mine sent me a Tweet and suggested that it might be using an emulator or VM:

Tweet from @BrettMN: maybe that chip game you mentioned ships with a VM/emulator

"Of course" I thought. I've got a bunch of Steam games that come packaged up via DOSBox, so it'd make perfect sense. I decided to actually install the game and it's interesting to note that despite the game being a couple of orders magnitude larger than it was originally, I could pull it from the other side of the world in less time than it'd take to copy the original 500KB game off of a floppy. Then I dug in to see what emulator or similar it was using.

The root directory structure, showing the .exe, a DATA folder and a Steam specific .dll

There's a few things to take note of here:

  1. There's a Steam specific .dll, which isn't surprising - but it does indicate that the game has been recompiled
  2. The size of the executable is now around 4x the size of the original game
  3. There's no sign of an emulator, which would make sense given the recompilation

So the extra size must be in the data directory, which again seems odd because the core data files shouldn't have changed, and the graphics and sound should be as they ever were. So I dug deeper, checking folder sizes to see where the disk space has gone, and it didn't take long to discover the cause.

The music directory listing, showing a long list of MP3 files

The music is all in MP3 format, weighing in at 83MB. Again, this may not seem extreme if you're not someone who was playing PC games in the early 90s, but if you were, you'd know it wouldn't have shipped with MP3 music. The original game used MIDI files, and these MP3 recordings are not new versions of the music, they're actually recordings of the MIDI files being played back. The Steam version includes many more tracks than the original Windows 3.1 archive I found, but two of the tracks are the same in each. In the old version we have 2 MIDI files taking up 21,595 bytes, and the two corresponding MP3 files consume 1,462,803 bytes. They're relatively small compared to the others included as they're quite short tracks, but here's the real kicker:

MP3 is lossy, which means the modern version of the game uses over 67x the disk space, more RAM and CPU cycles at run time, for inferior music. Progress!