Rocky’s Boots
May 20, 2007 by Peter Berger
I was 11 years old when I learned Warren Robinett’s name.
I found the gray dot in the black castle, made my way out through the blue maze, and went south-east from the Gold Castle. The usually impassable vertical line on the right side of the screen was flashing prismatically. Holding the dot behind me, I sidled up to it and walked through the wall and into the next room. There, in those psychedelic Atari colors, were the blocky words: “Created by Warren Robinett.” It was the first Easter egg in a video game, and perhaps the first time I realized that somewhere there was a person who wrote these games and that they didn’t just appear by magic. A few years later, I discovered that Robinett had left Atari and gone on to found The Learning Company. They had released a game with the incongruous name of Rocky’s Boots. It’s a game that teaches the fundamentals of programming (or, more properly, symbolic logic).
I’ve always had a soft spot in my heart for programming games. There are fewer than you might think. There’s Corewars, Chipwits, and a few assorted versions of Silas Warner’s Robot Wars, and if you want to stretch you could call the Karel programming language a game.
The object of Rocky’s Boots is to build a machine which makes a boot kick certain shapes off of a conveyor belt and avoid kicking others. You choose one of several puzzles and then build a machine to solve the puzzle. A typical puzzle might be something like “Kick all non-purple triangles.”
The box is connected to three sensors which differ for each puzzle. When an object moves into the box, power is supplied to the sensors that match that object (for example, if an orange cross were in the box, the “orange” sensor would light up, as would the “cross” sensor, but a “triangle” or “purple” sensor would stay unpowered). The player has access to equipment laying around the game world that can be hooked up to the sensors and to the boot. These include wires (which carry power) as well as a wide variety of logic gates (AND, OR, and NOT), timers, delays, and flip-flops.
The timing aspect is what makes this a challenging game, even for seasoned software developers. Most of us are used to thinking of symbolic logic as some platonic idea, where expressions are evaluated immediately. However power transmission in the world of Rocky’s Boots is not instantaneous, so a machine that is too complex may take too long to operate, yielding the wrong answer. There’s nothing more frustrating than building a machine that correctly determines that the boot should kick an object, only to see that object move out of the box just as the boot activates. It’s in practical details like this that Robinett’s background as a 6502 assembly language programmer shows itself.
By modern standards, Rocky’s Boots is playable, but only just. Movement, via the keyboard, is clunky and somewhat frustrating. The process of navigating your square avatar is more painful than it ought to be. The game, however, is about the puzzles, and the physical aspect of the world is what makes the puzzles accessible. Reducing electronics diagrams into little pieces that can be seen and held makes the game accessible to those know nothing about electronics. The graphics and UI are primitive, and yet no kid under 10 can resist staring at the game when it’s being played.
You’ll need an Apple ][ emulator to play Rocky’s Boots (the author, Robinett, provides a link to a disk image of the game on his web site, http://www.warrenrobinett.com). You will have to do some work to overcome the ancient user interface, but I think it’s worth it.
















Comments
Feel free to leave a comment.
If you want a pic to show with your comment, go get a gravatar!