Open Book, beta 1
This project, the original concept of which you can read about here, has ballooned in size a bit. Once I was really in the thick of it, I realized just how much potential there was to expand beyond my humble kernels of ideas into something larger, and how much more I would have to learn to build it. So, rather than shrink the concept to fit the time constraints, I’m putting a mostly working, but not feature-complete version out there with everyone’s favorite label: the beta. I’m hoping that some feedback will guide my direction as I continue development next semester, as it already has from showing the project in class.
Open Book, beta 1 is an interactive fiction / text adventure interface for the Project Gutenberg catalog. It allows interactors to explore the texts of books as if each book were a room in a work of interactive fiction, using the standard Infocom verbs to interact with objects, ie, any word in the current passage. Interacting with an object moves the interactor within the currently selected text, while navigating via the compass points (ie, north, south, east, west) moves the interactor to a new room and a new book. The goal is to provide a novel interface for novels (;-)) and to explore our spacial relationship to text.
At the moment, the web version isn’t working, but it will be soon. In the meantime, there are downloads for OS X, Windows, and Linux. Please download it, play with it, break it, and give me feedback (leave comments here, or email me at adam [at] thenameofthissite). I will be working on this project over the next few weeks, and again next semester, to make it more robust.
Some known issues:
- The web version isn’t working at the moment. This will be fixed ASAP.
- It sometimes hangs when splitting the full text into an array for searching, without throwing an exception. I thought this was network-related at first, and experimented with running the request as a separate thread, to no avail. My next thought would be to use PHP to fetch and store locally the texts, but there may be a simpler method.
- The text parser gets confused with capitalization and punctuation - these need to be stripped out of the searchable text, while kept in the displayable text.
- The two types of search (within a room and in another room) are currently just cut & pasted & altered versions of the same code, which should be turned into a function.
- The initial scenario needs to be more interactive - I want the interactor to be able to explore a bit themselves before finding the book in the mailbox and getting into the Gutenberg world.
Features that I plan on implementing:
- A save feature, to allow user accounts and for people to pick up where they left off.
- A history / map feature, which would show the titles of books that the interactor has travelled through.
- An inventory function, to allow the movement of words from one book into another.
- A more robust language parser, possibly using an API to a dictionary, so I can experiment with restricting certain types of actions to certain parts of speech.
Inspirations & Resources:
- Matt Webb’s playsh, which turns the entire internet into one giant MUD
- Zork and other Infocom text adventures
- ZaxApplet, an open-source Java implementation of the Infocom Z-machine game engine
- Clive Barker’s Abarat, in which one kind of magic is created by forming “glyphs”, which I always imagined as printed text that actually formed itself into a physical object
- Nick Montfort’s Twisty Little Passages, a well-researched book on the development of interactive fiction.
Download
Open Book, beta 1, Mac
Open Book, beta 1, Windows
Open Book, beta 1, Linux
Open Book, beta 1, web (currently non-fucntional)
Activity