Friday, November 18, 2005

18 November 2005: Adventure

Light relief from this AKTing lark is provided by occasional teaching and guidance for some undergrads learning languages such as Visual Basic, Java and, from next semester, probably Javascript.

One of my duties is to set and mark weekly labs and semesterly assignments. For the current bunch of second years, this means I get to choose what their object-oriented programming project will be. Ah, the choices, the choices. Could I go back to my MSc and steal the vehicle project which so clearly demonstrates subclassing? No, because it's tedious and boring. How about a theme park, where the rides, rollercoaster trains and customers are all objects interacting with each other? No, it'll probably require a fancy animated front end. Be a good one if they were learning Flash, though. So eventually I settled on a heavy extension of the project covered in chapter seven of the BlueJ book: write a text-based adventure game.

Now this, for me, is great fun. Brought up on the BBC Model B with its many limitations (how on earth did we survive with just 32k of RAM? I mean, really??), I quickly developed a taste for 'interactive fiction' as it was known. Colossal Cave, the model for them all, was ported across to the Beeb by Level 9 and provided me with many happy hours in a twisty maze of passageways, all alike. Acornsoft's Castle of Riddles and Philosopher's Quest were also great fun and quite challenging, while Scott Adams' Circus I just recall as being highly frustrating in terms of both the game quality and the extremely poor parser. Then one day my sister brought home the best game I ever played: L, the Mathemagical Adventure.

This was a school game, educational software in its early form. I knew a little of these games from 4Mation's efforts such as Granny's Garden and Flowers of Crystal. But this was different altogether. Here we had a sensible text-only GUI that didn't try to overpower me with teletext-style graphics, and the gameplay wasn't full of random monsters and clueless puzzles. The game fitted together wonderfully well and while certain puzzles I would still regard as too difficult (the clues to play 'three blind mice' on the piano were obscure, to say the least), it was sufficiently enrapturing to grab the attention of almost anyone who played, and keep their attention as the game unfolded. And the best thing was, I learned without even realising I was learning. At the time I didn't even know about Fibonacci, but I quickly worked out that the only telephone numbers that worked were 1, 2, 3, 5, 8, 13, 21 etc, and figured out that you add the previous two numbers in the sequence to get the next one. I had no idea about normal angles, but the billiard table made perfect sense to me. A collection of bats explained to me what a triangular number is, a hole in a boat taught me about icosahedrons, a computer apparently running its own version of L taught me about recursion. I didn't know the significance of the names like Neumann, Crowther and Woods, Martin Gardner but I learned as time went on. I knew about square roots, so the drogo guards weren't a problem, but if the combination for the safe lock is a perfect square and a perfect cube, what can it be? Some scrap paper enabled me to figure it out one Sunday morning while eating a bowl of cereal. I was learning, and I never even knew it. Congratulations to the Association of Teachers of Mathematics for providing an environment where it was so fun to learn, I didn't know I was learning.

So back to today, and the undergrad assignment. While I don't expect the Squirrel Adventure to challenge L or even Circus in terms of its complexity, it's been worthwhile just to bring text adventuring to a new generation. I've barely seen any since the early 90's days of 'Guild of Thieves' and 'Fish' on my Acorn A3000 machine, and even then the pictures were starting to become more important than the text descriptions. Adventure games today mean something more like Trogdor's Peasant Quest (albeit a little more sophisticated - maybe GTA San Andreas is a better example) so it's therapeutic if nothing else for us oldies to get back to the roots of the adventure game.

Who knows, maybe this is the start of the textual revolution?


Win said...

The revolution is going on.

DuncMcRae said...

And the revolution will not be televised.