Wednesday, March 15, 2023

Game 364: Rocky's Boots


Back in the summer of 2001 - it seems like centuries ago now - I read about and online-ordered this PC game about designing robots to compete in races, battles, and other contests. It was called MindRover: The Europa Project, and was the first I ever bought on the Internet, having being made on a small budget and too niche to distribute through normal retail channels. The heart and soul was its programming mode, where you designed robot behavior by wiring the components you put in it, such as wheels, engines, servos and even guns, to sensors, memory, and transistor-based logic gates. Once you were satisfied with your design, you sat back and watched it behave accordingly, hands-off, and if it didn't work right, as it often didn't, you most likely had to stare at your chaotic mess of a circuit board for a good hour or more to figure out just what in the blazes you did wrong.

The concept seemed really innovative and cutting-edge at the time. But it turns out, the whole simulated circuit board concept had been done in a limited fashion nearly 20 years earlier in 1982, on a computer thousands of times less powerful. And by 1984, a spiritual follow-up even did the whole hands-off robot action aspect! But I get ahead of myself.


The purpose of Rocky's Boots isn't immediately apparent, as it's frontloaded with an extensive tutorial, beginning with a lesson on how to move and manipulate objects.

It's mostly the same as Gertrude's Puzzles, but this room is new.

Lesson 2 teaches about wires, connections, electricity, and basic input/output machine components.

 

Lesson 3 teaches the building blocks of circuitry - logic gates, which here include inverters, OR gates, and AND gates.


 
OR gates can be chained to make a multi-input gate


A loop with an inverter becomes an oscillator

Each of these tutorials concludes with a sandbox room which accumulates new toys for you to play with as you learn about them.

I made this machine that punches the alligator in his stupid face.


Lesson 4 finally teaches about the titular boots, which kick at shapes when electricity reaches them, and the games' goal - construct logical circuits to selectively kick at shapes matching some criteria and not others.


And with this tutorial completed, you can finally play Rocky's Boots!

The game select room lets you pick one of eight basic puzzles.

A machine that kicks only blue triangles. This is as complex as this level gets.

Level 5 teaches about a few more advanced logic components.

Flipflops act as 1-bit memory

Clocks send periodic pulses in four phases, as seen in early microprocessors

Delays tie circuit state propagation to a second input, such as a clock

And with those tutorials completed, the true Rocky's Boots, as they say, starts here.


 

Rocky's Challenge. 31 puzzles, six rooms of spare parts, and even a puzzle creation room! The puzzles start off simple enough, the first eight just retread the same ground tested in lesson four. But each set demands more.

An OR tree selects three inputs

Constructing a NOR gate

Every gate type gets involved with this one

An XOR gate

The third set starts demanding use of the more advanced components, and sometimes some out-of-the-box thinking.

1-bit state machine turns the boot on once it reaches a blue thing, but must be manually reset.

 
This ridiculous machine barely works, but it does. Blue circle turns the lower-AND input on after a delay, green cross turns the upper-AND input off.

A timed oscillator kicks alternating targets. Be sure to start the targets during the correct cycle, or you'll kick the wrong ones!

The final set of puzzles don't even tell you the rule! You just have to come up with one that kicks the correct subset of shapes and is also one that you can program.

Mystery rule, or freeform rule?

I made blue act as a toggle.


With the even more increased complexity requirements of these last machines, you have to be more mindful than ever of race conditions, which are impossible to avoid completely. A wire too long in the wrong place can trigger kicks or state changes where there logically shouldn't be, and necessitate a redesign. But you just haven't got the space to use proper synchronization techniques - sometimes you just have to rely on the boot's timing quirks, which tolerates a brief period of incorrect state. And yet other times, you'll need to use long wires to delay signal propagation on purpose.


I can't even figure out a rule. Can you?

Took me nearly 90 minutes to kludge a machine that does this one right.

One last kludged oscillator kicks every third cycle

The engine really hits its limitations during these last set of puzzles. Arranging these big, chunky parts into a relatively small working space, things get claustrophobic, and with lots of things close together, snapping components into the right slot becomes a real pain, not to mention having to constantly guess what length of wire you need to link things up. Using the wire cutters to undo a wrong connection usually decimates your circuit by undoing a whole lot of them and jostling all of the parts around. One time it even corrupted the target sensors, forcing a restart. And having so many parts and wire segments cluttering up the screen kills the framerate and makes the keyboard input sluggish and unreliable.

The last few puzzles were objectively quite challenging, and not just because of interface struggles, though that certainly played a part. I'd estimate Rocky's Boots took me around six hours to complete, including the opening tutorials, which is multiple times longer than all of the previous TLC games put together. I'm still not going to GAB this one - it's ostensibly a children's edutainment title that happens to have some real challenges at the end - but I actually enjoyed this one on its own merits and would recommend playing it. The interactive tutorials are excellent and ahead of their time as per TLC's standards, the WYSIWYG interface is clever, and intuitive, the technology overachieves, the puzzles and the subject matter teaches a real world skill. Just don't ever design real circuits this way, please!

Next post is where it's all been leading up to - Robot Odyssey!

1 comment:

  1. Was this the inspiration for Zachtronic's games? It really reminds me of his stuff.

    ReplyDelete

Most popular posts