Inform 7, while a great tool for creating interactive fiction, has always lacked some of the testing and debugging features that programmers in other languages can take for granted. Several exciting new developments this week will go a long way towards addressing these problems.
Brady Garvin (better known in the community as EmacsUser) announced the Interactive Debugger extension, which incredibly adds a whole debugger to a Glulx Inform 7 project, with support for breakpoints, printing a detailed call stack including the built-in Standard Rules, and interactively showing executing code at the Inform 7, Inform 6, and even Glulx assembly levels. There's even PDF documentation. The extension is built atop an impressive new infrastructure of behind-the-scenes extensions collectively called GRIP (Glulx Runtime Instrumentation Project) which themselves offer a whole new level of access and control into the complex internal workings of an I7 project. The whole works is still in beta form; the author would appreciate your comments and bug reports over in this thread on intfiction.
Finally, in a surprisingly short time Ron Newcomb has completely rewritten Inform 7's parser in Inform 7. A key component of the underlying system, the parser handles the difficult task of deciphering the player's commands. One of the oldest pieces of code in the I7 ecosystem, the parser is famously written in monolithic blocks of Inform 6 that are tricky to decipher and even more difficult to modify. The new version breaks things up into smaller chunks with human-readable variable names, not only making for smoother parser-delving but also much easier customization of the parser's behavior. The link above goes to the latest version of the (also in beta) extension; you might check Ron's blog to find future updates.
I'm not sure whether Ron, Brady, and Dannii intentionally timed these releases as an early Valentine's Day gift to IF authors, but they definitely deserve all the candy hearts they can eat this week.
Thursday, February 9, 2012
Prom Week is an ambitious experiment in social AI and emergent narrative, releasing this Valentine's Day on Facebook and other online venues. As lead writer for Prom Week, I've spent much of the past year embedded in the challenging (but fascinating) problem of sharing authorship with algorithms. As with the interactive drama Façade---whose co-creator, Michael Mateas, is one of our producers---we faced big problems of making the player's choices truly meaningful, without resorting to branching tree structures that quickly become too huge to author for. Over at the Expressive Intelligence Studio's blog I've just posted some observations on how we tackled the writing for Prom Week. Check it out if you're interested. (IF fans should note that community humorist Duncan Bowsman and Sand-dancer co-designer Alexei Othenin-Girard also have writing credits.)
Prom Week has also been honored as an IGF Finalist in the Technical Excellence category, the only game by a university-based team in the main competition. Audience choice voting for IGF is going on this week, and we've released a special preview version of the game to celebrate. Check it out, and if you like it, give us a vote!
Thursday, February 2, 2012
A while ago I received a beautiful piece of art illustrating a moment from Blue Lacuna. I was excited not just because it's a beautiful image, but because it was the work of Evan Dahm, one of my favorite webcomic artists. I had previously read Evan's beautiful Rice Boy, a heartbreaking, mythic fable set in a fantastical world. (Anyone who enjoyed Blue Lacuna would certainly like Rice Boy, too.)
I think what pleases me most about the image is its remarkable attention to the particulars of the story. Beyond just the topography of the island, tiny details are just right-- like the outfit the central character is wearing, or the tunnel mouth by the roots of the windsigh tree. You can click on the image for a larger version.
So thanks, Evan, for the gift; and if you haven't read Rice Boy (or Evan's current episodic webcomic, Vattu) it's well worth checking out.