What is Interactive Fiction?
What Exactly is a Text Adventure / Interactive Fiction Game? According to Wikipedia: "Interactive fiction, often abbreviated IF, is software simulating environments in which players use text commands to control characters and influence the environment."
I grew up calling IF "Text Adventures". I was 12 when Infocom released Zork I for the Commodore 64 and it blew my mind. At the time computer graphics were very primative. Fine if you wanted an arcade "twitch" experience like Pac Man or Galaga... but not something that could pull you into a story. Zork changed all that... suddenly there was a detailed fantasy setting where I could be the main character. It was the computer version of reading a "Choose Your Own Adventure" book - but with infinitely more freedome. Like being set down in Middle Earth or Narnia and asked simply "Where do you want to go next?". I was overjoyed.
I came to IF for the stories but I stayed for the puzzles. Games like Zork did not rely primarily on roling dice, collecting gear, and gaining levels in the fashion of my other favorite childhood hobby, D&D (though Zork combat does have a minor element of chance to it). Instead, IF was all about solving a series of interlinked logic puzzles. And man could those puzzles be madening! This was back before Google. Back before the World Wide Web. If you got stuck you either had to mail order the Invisclues hint book - which cost about a third the price of the game and took weeks to arrive - or find someone who had solved it already and beg for answers. In my case I had one friend who had solved nearly every Infocom Text Adventure released - but at the time I only saw him at school during lunch period. So I might get stuck on a puzzle over the weekend and not see him till Monday... and then my friend (yes, I'm talking about you Geoff!) might well say "That's a really easy puzzle - you don't need a hint - you just need to think about it a bit more". Argh!!
The positive side to frustration was engagement and satisfaction. I would wander around the real world with the puzzles in my head - replaying the steps I'd tried already again and again and thinking about new things to try in order to make progress. And when I did finally have a breakthrough it was a genuine triumph. I can still vividly recall the thrill of getting the Platinum Bar for the first time in Zork.
When I first started learning Python (as part of an AI Coursera course) I marvelled at how well it managed text and lists. So, not unsurprisingly, when I decided to start a Python project to really learn the language, a Text Adventure seemed like a natural fit. That said, it's important to be aware that, while writing IF is a great way to *learn* Pyhton, it's certainly not the best way to *write* IF. That would be TADS - which is a purpose built language specifically created for IF and supported by a rich community of amerature IF game writers: https://www.tads.org
I also heartily recommend that you try out "real" IF if you haven't already.
- Play Zork I on the web here
- One of the most widest and most active repositories of IF content is the IFDB found here
- Lastly, if you're an Apple iOS user, I recommend the "Frotz" app. It's an older compiler but it still has a rich collection of works for free. Link found here
- Tom