I’ve had two problems in writing this article. First: how do I describe SpaceChem? And second: how do I describe SpaceChem without making it sound like the most boring game since Laurence Llewelyn-Bowen’s Paint Drying Extravaganza?
First things first: what is SpaceChem? I could say “it’s a puzzle game,” but that’s akin to asking your other half what’s for dinner and getting the response “food.” “Puzzle” is a wide genre.
So maybe this is a chemistry game, as you bond atoms into molecules… but that’s not right either. It’s really a programming game with a chemistry theme, in which you program little robots and make them bond atoms into molecules.
And now you see why I’ve had such problems describing it without making it sound horrifically boring. “A programming game with a chemistry theme” sounds like it’s only good for people with glasses so thick the lenses could be used in military laser experiments, and beards so massive they can’t shave for fear of dislodging a rare species of woodland creature. So perhaps I should call it a game about efficiency, but even that’s got unpleasant connotations.
I’ve been worrying about this because, quite frankly, it’s fantastic. It’s a game about chemistry and programming, but it’s fun. Really. It’s one of the most brain-meltingly smart games of the year, and even – you’re not going to believe this – one of the most beautiful. Not in terms of art, but in terms of the sheer intrinsic design. It’s exquisite.
Look at the picture below. What do you see?
A mess, probably. But I see a program; a machine of staggering elegance and beauty… which, now I look, could have been far more efficient with a few simple changes. But improving your designs is half the joy of SpaceChem.
You have two little robots (adorably named Waldos); one follows blue instructions, the other follows red. Using them, you need to move, bond, and unbond atoms and molecules. In the above image, we have silver coming in at the top left (at the alpha input) and fluorine coming in at the bottom left (the beta input). We need to make silver fluoride.
In the above instance our red Waldo calls in a silver atom, picks it up, carries it to one of the circles with a plus-minus symbol on it (meaning that a bond can be created or broken there), drops it, and then waits at the “Sync” marker. Our blue Waldo carries fluorine to the other bonding spot, binds the two together, and then whisks the result through the output point before wandering back to its “Sync” marker so they can repeat the process.
If you just fell asleep or felt your brain catch fire, then that’s down to my poor explanations rather than the game. The base design is almost frighteningly simple and very easy to latch onto: with limited commands, use two robots to carry out tasks as efficiently as possible. As the game gets more complex you spend longer on each level, trying to tweak it, until it finally works perfectly, and you sit there and watch your creation work, and it’s beautiful. You call over anyone nearby to watch, and they look at you with thinly-veiled disgust, but that’s fine. They just don’t understand. They haven’t played it yet. They haven’t gotten caught up in trying to build a machine that works, and they haven’t experienced the sheer joy that results when you get it right.
In a stroke of genius, you can also see how well the average person on the internet did each level, and – how the hell did this guy do it with only 24 commands? Sorry, I’m going to have to rejig my design. Hang on.
Right. The other stroke of genius is in the way SpaceChem ratchets up the complexity. The first few levels teach you how to call in, move, and drop atoms. The next few teach you about bonding and unbonding. And then you get levels where you have a 50% chance of getting one atom and a 50% chance of another, and you need to design it to deal with both. And then you get another level where you have multiple reactors, each with two Waldos. And then at some point your head explodes because the game is too bloody clever, but you’ll still be thinking about it.
The joy of creation is one of the core points as to why it’s so good; there’s an immense, incomparable rush on solving a problem. The other point is the way it all sticks in your head. I guarantee that, if you play SpaceChem, you’ll find problems percolating in your subconscious while doing the dishes – and you’ll nearly break one when a solution springs to mind.
If you’re a fan of puzzle games, or if you simply have a cursory interest in basic programming principles, pick up SpaceChem or give the demo a shot. As wide as this particular genre is, this is simply the best puzzle game I’ve played yet. It’s the cleverest, most rewarding, and most thought-provoking game in the genre, as far as I’m concerned.
Oh, and parents/teachers? It’s been suggested that SpaceChem be used in schools to assist in introducing basic programming theory (the chemistry’s a bit wibbly and somewhat fictional, particularly later) and, frankly, I’m all for it. Most edutainment is awful, but I truly wish we had stuff like this in schools when I was young.