[ If you are interested in how these games work, check out my Zork 1 repo instead. This repo is kind of a mess.]
This is based on the Inform 6 version of the game because I wanted a rich parser, similar to the old Infocom games like Zork and Planetfall that I grew up playing as a kid. When I started this, I had no idea how deep the rabbit hole would go on this - reading Inform source, several Inform books, ZIL code and a long lost manual on writing ZIL - just to figure out how games like this work. It's way more complex than I ever would have thought.
The source code is basically two parts. A library for writing Infocom/Inform type games and the Colossal Cave game itself.
The game is playable and winnable, however the library has only been implemented as far as what was needed to complete Colossal Cave (mostly). I am sure there are many small things that aren't quite right. But, it's getting there.
I have always wanted to write an object-oriented version of Colossal Cave that most people could understand, and this is that ongoing effort. This code had it's start somewhere back in 2009. I met a colleague at Starbuck's for a code kata - the rules being that all code had to be developed using strict TDD. And from that night I had the beginnings of the console input code.
