-
Notifications
You must be signed in to change notification settings - Fork 0
Home
In the 1980s text adventures were a respectable genre of computer games. But times have changed: in the 21st century, they pale in comparison to modern MMORPGs with 3D engines. Where books survived the rise of the film, text-based games quickly lost the battle against their graphic counterparts. "Interactive fiction" is kept alive by an active community, but its commercial value has long since disappeared.
Zork is a popular series of video games of the text adventure genre. Developed on mainframes in the late '70s as a unique game, published in the early 80s as three separate games: Zork I: The Great Underground Empire, Zork II: The Wizard of Frobozz and Zork III: The Dungeon Master. In the '80s and' 90s the series inspired many other titles.
Zork is set in an labyrinth that is part of the "Great Underground Empire". The player is a nameless adventurer with the goal of finding the hidden treasures in the subsoil and returning alive to the surface, while at the same time trying to escape the gruesome enemies (monsters who live in darkness). The universe and the chronology of Zork have been enhanced by the subsequent works of interactive fiction by Infocom.
In March 2007, Zork was declared one of the ten most important video games of all time by Henry Lowood of Stanford University.
For many years I tried to make my own text adventure inspired by Zork. This project was born in 2001, when I was studying C language at an evening university course.
I developed this project slowly (very slowly) during these years, and I decided to resume its development for the following reasons:
-
Recently the original sources of Zork and Colossal Cave Adventure have been released. Some users have taken these sources and have cleaned and improved the code making it more readable and modern. I want to do the same thing with this project.
-
This project is a wonderful memory of when I lived happily, I was fine and I had no problem. It represents a creature of mine, and a passion that has never vanished over the years.
Why write an adventure game using a generic programming language? Because doing it can be fun, stimulating and educational. The C programming language may not be the obvious choice for writing a text adventure; Scripting languages like Python and Lua may seem like the obvious choice. But while I was writing my humble adventure of text, I learned that the C language fits well with this specific context, unlike modern languages that impose their own rules of syntax and reasoning (OOP) that I have always considered useless, and not suitable for the development of simple projects to learn programming. The C Standard language (ANSI C) has many advantages!
This is just a small list of unique features that make the C language the best choice for writing classic text adventures in Zork style and Colossal Cave Adventure:
- The C uses functional and procedural programming (no OOP).
- C is a standardized language, which has been revised and improved since 1983, thanks to the ANSI (American National Standards Institute) committee. It means that a program written in ANSI C will always work (even after many years to come).
- Many small external libraries (header .h), useful and extremely easy to integrate into the project (it is sufficient to copy the .h file in the "include" folder of the project and recall the library in the code).
- C is one of the most used and versatile languages that exist. There is a lot of documentation on the web.
- Learning C language is a long-term investment (unlike some modern languages).
- Many other good reasons...
Are you interested in the ancient art of writing text adventures from scratch? Perhaps you only have a sense of nostalgia for old times, when life was simple, and so was software. In both cases, you're in the right place.