Curveship in AI Magazine

Delightfully, the current issue of AI Magazine (Volume 30, number 3, Fall 2009) is on computational creativity. The number offers articles on the field overall; the history of workshops on the topic; computer models of creativity; and creative systems to generate music, stories and their tellings, moves of chess, and humor. The last article is computer-generated in high Hofstadter style.

Pablo Gervás’s contribution, “Computational Approaches to Storytelling and Creativity,” provides a clear introduction to the concept of creativity and the history of the term, analyzes the relevant features that storytelling systems can work upon, gives an outline of work in computational creativity so far, and continues with a capsule summary of several important storytelling systems. The last one of these is my system nn, which I renamed “Curveship” as I started focusing on a public release of the software.

In the nn system for interactive fiction (Montfort 2007) the user controls the main character of a story by introducing simple descriptions of what it should do, and the system responds with descriptions of the outcomes of the character’s actions. Within nn, the Narrator module [now called the Teller] provides storytelling functionality, so that the user can be “told” the story of the interaction so far. The Narrator module of nn addresses important issues in storytelling that had not been addressed by previous systems: order of presentation in narrative and focalization. Instead of telling events always in chronological order, the nn Narrator allows various alternative possibilities: flashbacks, flash-forwards, interleaving of events from two different time periods, telling events back to front. It also captures appropriate treatment of tense depending on the relative ordering of speech time, reference time, and event time. Focalization is handled by the use of different focalizer worlds [now called concepts] within the system. Aside from the actual world of the interactive fiction system, nn maintains additional separate worlds representing the individual perspectives and beliefs of different characters. These can be used to achieve correct treatment of focalization (telling the story from the point of view of specific characters). [pp. 57-58]

In discussing the systems, Gervás notes (and I agree) that the other systems he discussed, ranging from Klein’s Novel Writer and Meehan’s Talespin to The Virtual Storyteller and Riedl’s Fabulist, are system for inventing stories, while nn’s Narrator (Curveship’s Teller) is the only system for telling stories. He writes:

If the processes for inventing stories in the reviewed systems rate low in terms of creativity, the rating obtained by processes for telling stories is even sadder. The challenge of how to tell a story has received very little attention in general, and it is mostly tagged on as a final stage to systems that concentrate on inventing stories. The nn system is a notable exception in that it involves a significant effort to model computationally some of the basic elements contained in Genette’s work on narrative discourse (Genette 1980): relative order of presentation and focalization. However, all the systems that tell the stories they invent do in fact include default solutions to many of the technical challenges involved in telling a story. [p. 60]

Although Gervás has provided a good take on the system, I’ll just note one way in which Curveship (née nn) does a bit more than the article might suggest to reader and one way in which it does less.

Genette described five categories of narrative discourse: order, frequency, speed, mood (which includes focalization), and voice (which includes distance). Curveship can vary not only order and focalization; it also allows for significant variation in the other three categories. I hope this will be of practical interest to interactive fiction authors and to those seeking to teach narrative theory using Curveship. However, the main research advances that have been made so far are in the two areas that Gervás indicates: order and mood (specifically, focalization).

While Curveship can automatically creative narrative variation based on parameters, I have to note that I am not putting it forth as a creative system. This makes it unlike many of the programs discussed in Gervás’s article and in this issue of AI Magazine. Given a specification for telling (which is called a spin), the system can make the appropriate changes and generate suitable text. However, the system does not, by itself, determine how a story should be told. The code that individual IF authors and AI researchers write is needed to accomplish that task.

Of course, formalizing the elements of narrative variation is necessary for any principled system that is supposed to vary the telling of a story. I hope that Curveship’s Teller will be deeply relevant to work in the creative invention and telling of stories, and that it will be used not only to enable new sorts of learning systems and interactive fiction pieces but also, in modified or unmodified form, as a component of creative systems.

Tenure Track Position: Assistant Professor of Visual Arts

My colleagues in the Visual Art Program are looking for an artist (and particularly inviting new media artists) to join the faculty and teach in the program. MIT, of course, offers the opportunity for artists to work in a diverse and high-powered technical context, but the campus also has incredible arts dimension. A nicely-formatted announcement is on the Web and available in PDF. Here’s the text of it:

The Massachusetts Institute of Technology (MIT) is seeking an individual with an emerging international reputation to join the faculty of its Visual Arts Program as an Assistant Professor, tenure-track. We seek a colleague with significant experience, knowledge and accomplishments in the fields of technoaesthetic and/or technocultural art practice, especially in the areas of New Media and/or Media Performance, an artist who has strong
skills and experience in teaching at the college, university or art school academic level. This appointment will be a tenure-track position as Assistant Professor.

Minimum Qualifications:
· Master of Fine Arts degree or equivalent
· Emerging international recognition as a practicing artist
· Experience teaching at the college, university or art school level
· Skills, knowledge and accomplishments in technocultural, technoaesthetic and performative art practice and a strong interest in transdisciplinary collaboration
· The candidate must be highly knowledgeable in contemporary art practice, art history, art and media theory

We seek a colleague whose artistic practice bridges art, science, and technology, and intersects with emerging directions and methodologies in sciences (including social and human sciences), new technologies (including communication technologies), and/or design, media research, and engineering. Accomplishments in the fields of new media including digital, database, Internet art responsive/interactive, media performance, or other emerging techno-aesthetic arts will be a plus. Candidates should be highly articulate in the field of audio/visual culture and other relevant fields and disciplines (for example, gender or postcolonial studies). Preference will be given to candidates whose projects and intellectual approach address contemporary social, cultural and ethical issues and do so in analytical, critical and/or transformative ways.

MIT’s Visual Arts Program develops critical analytical and visionary strategies in artistic practice within the context of the advanced scientific and engineering community of MIT. Students and faculty alike are drawn to the program because of the transdisciplinary opportunities found in this unique environment. The faculty is composed of renowned artists with active, international careers in artistic production and a strong interest in cross-discipline debate and modes of production. MIT students are diverse, intellectually gifted and highly motivated. Undergraduates come from a variety of scientific and technical fields from across the Institute. Graduate enrollment includes not only the program’s own master’s students, but also students from Architecture, the Media Lab, and other academic units.

This position is a unique opportunity to engage, interact and inspire undergraduate students from a variety of cultures and disciplines, as well as to mentor an exceptional group of graduate students in the visual arts. We are seeking candidates of diverse backgrounds and approaches, who are passionate about community building and who have an interest in collaborative projects crossing to other fields. The appointment can begin as early as fall 2010.

Please submit materials on DVD or CD to Professor Krzysztof Wodiczko, Chair, Search Committee, MIT Visual Arts Program, 265 Massachusetts Avenue N51-328, Cambridge, MA 02139. Submissions will not be returned to applicant. Included with materials should be (in digital format on disk):· CV· Letter of intention and teaching philosophy· A well-organized selection of artistic work, presented in a manner to make it easy to review· Names and contact information of at least four references· Other supporting materials such as selection of writing by applicant (writings, interviews, statements) and/or critical reviews by others of applicant’s work is appreciated

Review of applications will begin November 1, 2009. MIT is building a culturally diverse faculty and strongly encourages applications from women and members of underrepresented groups. Applications from women and minority candidates are strongly encouraged. MIT is an Affirmative Action / Equal Opportunity Employer. Further information on the Visual Arts Program can be found at: http://visualarts.mit.edu.

For more information, please email: vap-search@mit.edu

Tenured Faculty Position in Comparative Media Studies

I’m delighted to announce that MIT’s CMS program, where I’ve done much of my teaching and advising, is hiring:

MIT’s Program in Comparative Media Studies seeks applications for a tenured position beginning in September 2010. A PhD and an extensive record of publication, research activity and leadership are expected. We encourage applicants from a wide array of disciplinary backgrounds. The successful candidate will teach and guide research in one or more of the Program’s dimensions of comparativity (historical, methodological, cultural) across media forms. Expertise in the cultural and social implications of established media forms (film, television, audio and visual cultures, print) is as important as scholarship in one or more emerging areas such as games, social media, new media literacies, participatory culture, software studies, IPTV, and transmedia storytelling.

The position involves teaching graduate and undergraduate courses, developing and guiding collaborative research activities, and participating in the intellectual and creative leadership of the Program and the Institute. Candidates should demonstrate a record of effective teaching and thesis supervision, significant research/creative activity, relevant administrative experience, and international recognition.

CMS offers SB and SM programs and maintains a full roster of research initiatives and outreach activities [see http://cms.mit.edu ] The program embraces the notion of comparativity and collaboration, and works across MIT’s various schools, and between MIT and the larger media landscape.
MIT is an affirmative action/equal opportunity employer.

Applications consisting of a curriculum vita, a statement of teaching philosophy and experience, a statement of current and future research plans, selected major publications, and names of suggested references should be submitted by November 1, 2009 to:

Professor William Uricchio
Director, Comparative Media Studies
MIT 14N-207
77 Massachusetts Avenue
Cambridge, MA 02143 USA

Interactive Fiction Suggestions, Fall 2009

People who are interested in interactive fiction but who haven’t played much or any of it ask me for suggestions from time to time — not as often as I’d like, of course, but, luckily, once in a while. I’ve had a page of recommendations up on my site since 2005. The games on that list remain good ones, but I’m now updating those recommendations to take into account games from recent years. I’m posting the new recommendations here. Note that many of the people who ask me about IF are of a literary bent, as am I, and my suggestions reflect that.

A good introduction to interactive fiction does not have to be easy or simple. A game that you have to restart several times, and that you can only scratch the surface of after a few hours of effort, may show you, by being intricate and compelling, why it’s really worthwhile to try to meet the challenges of IF. It seems most important to me that a piece of IF quickly gives a sense of the powerful, interesting play of simulation and language. Such a game might happen to be hard or easy. On the other hand, some good games rely on a player knowing about IF conventions and even particular earlier games, characters, or puzzles. These often aren’t good places for someone just starting. There are many good commercial games from the 1980s and some from more recent times, but in my main list, I’ve limited myself to games that authors have made available for free download.

Although it’s possible to play some IF on the Web, it’s really best to use an interpreter to run all of this interactive fiction; the interpreter is to IF as the Flash player is to Flash and the Web browser is to the Web. There are good interpreters for Windows (Gargoyle) and Mac OS X (Spatterlight) that run IF in all of the major formats; you can also find interpreters for Linux and for smartphones. There are plenty of things you can read to help you play interactive fiction — one that I’d particularly suggest is Emily Short’s PDF introducing interactive fiction — but if you have the chance to play together with someone who knows the conventions of IF and has played a few games before, that will surely be the best way to get into IF.

These are my suggestions for eager first-time IF players, organized by year of release:

Anchorhead by Michael Gentry, 1998

A sprawling horror based on the mythos of H.P. Lovecraft, with exquisite attention to detail and compelling characters and places.

Bad Machine by Dan Shiovitz, 1999

The surface of this game seems to be a confusion of code, error messages, and a small bit of English, but its strange science fiction world is deeply systematic.

For a Change by Dan Schmidt, 1999

Schmidt’s game programming is better known thanks to Guitar Hero but before he coded that up he was inspired by Ben Marcus’s The Age of Wire and String and wrote this piece of interactive fiction, which features an odd lexicon and curious, magical assemblages.

Varicella by Adam Cadre, 1999

A sort of revenge-play, difficult, complex, and worth several attempts. A strange palace holds intrigues, surprises, an array of excellent characters who wander and plot against the player character, the palace minister.

Shade by Andrew Plotkin, 2000

The most famous “one room game in your apartment.” What seems to be a sleepless night undergoes a disturbing transformation as the character, undertaking ordinary actions, uncovers a different reality.

Slouching towards Bedlam by Daniel Ravipinto and Star C. Foster, 2003

An intricate steampunk piece with that deals with insanity and language and offer several different concluding threads.

Whom the Telling Changed by Aaron Reed, 2005

A reframing and reworking of Gilgamesh, the first known epic, which combines elements of hypertext-like word selection with the usual command-based IF interface.

Bronze by Emily Short, 2006

Reworks the beauty and the beast legend, embedding memories in an architectural space in compelling ways. It has a special “novice mode” and a status-line compass that will aid players in understanding and navigating IF locations.

Lost Pig (And Place Under Ground) by Admiral Jota, 2007

A hilarious underground romp that brings every major type of puzzle together in miniature form. The really wonderful aspect is the orcish, semi-literate narration that is used throughout.

Violet by Jeremy Freese, 2008

A graduate student locks himself in his office to try to make progress on his dissertation. The puzzles, as the player seeks to overcome distraction, are amusing, but the atmosphere and the voice of the character’s absent, imagined girlfriend are extraordinary.

I still like all of the pieces I originally suggested, but, in the interests of bringing in some newer games while making only ten main suggestions, I’m moving these here: Aisle, by Sam Barlow, 1999; Dangerous Curves, by Irene Callaci. 2000; The Edifice, by Lucian Paul Smith, 1999. Savoir-Faire, by Emily Short, 2002. And, in case you feel comfortable obtaining (previously) commercial games from abandonware sites or want to quest for them on eBay, I’ll also mention A Mind Forever Voyaging, by Steven Meretzky, Infocom, 1985; Mindwheel, by Robert Pinsky, Brøderbund/Synapse, 1984; Suspended, by Michael Berlyn, Infocom, 1983; Trinity, by Brian Moriarty, Infocom, 1986; and Wishbringer, by Brian Moriarty, Infocom, 1985. Note that reading or at least looking over the documentation to these commercial games is often very useful, and sometimes essential, in getting started with them.

Does anyone else have other good IF starting points to suggest? Or, does anyone want to report experiences of delight or frustration with one of these ten games?

Purple Blurb – Digital Writing, Fall 2009

Once again, Purple Blurb offers readings and presentations on digital writing by practitioners of digital writing. All events are at MIT in room 14E-310, Mondays at 6pm. All events are free and open to the public. The Purple Blurb series is supported by the Angus N. MacDonald fund and Writing and Humanistic Studies.

Noah Wardrip-Fruin.

September 14 — Noah Wardrip-Fruin is author of Expressive Processing: Digital Fictions, Computer Games, and Software Studies (MIT Press, 2009), co-creator of Screen (among other works of digital writing), and assistant professor in the Department of Computer Science at the University of California, Santa Cruz.

Mary Flanagan.

November 2 — Mary Flanagan is author of Critical Play: Radical Game Design (MIT Press, 2009), creator of [giantJoystick], and author of [theHouse] (among other digital writing works). She is Sherman Fairchild Distinguished Professor in Digital Humanities at Dartmouth.

D. Fox Harrell.

November 16 — D. Fox Harrell is the creator of the GRIOT system for computational narrative and author of several works in this system, including Loss, Undersea and The Girl
with Skin of Haints and Seraphs.
He is assistant professor of digital media in the School of Literature, Communication, and Culture at the Georgia Institute of Technology.

Marina Bers.

November 30 — Marina Bers is author of Blocks to Robots: Learning with Technology in the Early Childhood Classroom (Teachers College Press, 2007) and creator of the system Zora. She is associate professor in the Department of Child Development and adjunct professor in the Department of Computer Sciences at Tufts University.

Comics Are Great when Your Life Sucks

Comics are written by people whose lives suck, for people whose lives suck. Obviously, that’s not entirely true. Alternative comics do seem to be highly in touch with the lameness of life, though, whether they’re chronicling lynchings in the American South, exploring the emotional suffering of outcasts, or taking us through people’s decisions and indecision.

Since this blog is about digital media sorts of things as well as “other stuff [I] like,” I thought I’d note and briefly comment on a few graphic novels that I’ve read recently, even if nothing here feeds directly into computer conversations.

At Henry Jenkins’s recommendation, I read volume one of Jeremy Love’s Bayou, a comic about a girl whose father is a sharecropper and who faces a series of violent and historically apt horrors. This comic, in color, blends in a dreamworld of fabular elements to interesting effect, although the “truth” side of the story ends up being more terrifying and compelling than the “fiction.” For this reason, I think I enjoyed and learned from Mat Johnson and Warren Pleece’s Incognegro even more. This black-and-white comic tells of a black reporter who can pass as white and who goes to the South to document lynchings. Both comics show the strength of family ties and feature a sheriff who is, compared to the lynch mob, a somewhat good guy. Bayou‘s play with fantasy and folklore is nice, but I think Incognegro does even better, incorporating an incredible plot twist and keeping the action within a historical world.

The most dark, bitter, depressing, and hopeless sequential thing I’ve seen recently was Josh Simmons’s House. Three people meet up and explore a huge dilapidated ruin of a house. Guess what happens. Yep, except it’s even worse than you imagine.

I liked Night Fisher by R. Kikuo Johnson a lot. It’s the story of a high school student in Hawaii, a good student who ends up getting involved with drugs and then with despairing criminals for what seems like no particular reason – there’s not much else to do, though. Miss Lasko-Gross has a more amusing tale of school days in Escape from “Special,” which chronicles a younger student’s educational, social, and religious difficulties.

I really liked Dupuy and Berberian’s Maybe Later, a collaboratively written and drawn journal of the duo’s experiences writing and drawing Mr. Jean comics. I’m now reading some of those comics, translated and collected as Get a Life. Dupuy and Berberian don’t divide up the writing and drawing, but actually collaborate at each stage of the comic-creation process, from conception through to execution, much as I’ve collaborated as a writer with Scott Rettberg (Implementation) and William Gillespie (2002, The Ed Report).

Finally, David Mazzucchello’s Asterios Polyp is brilliant, with incredible writing and art. It’s well worth the price and the effort of carrying the hefty book home. The book’s form recalls that of an architecture book and is perfectly apt for this tale of a architecture professor who is a jerk, flawed, and incomplete – who loses the most important thing in his life, loses everything else, and decides to live, to listen and watch life, and to keep searching.

A Tiny Poetry Generator with Blinkenlights

ppg256-4 on a shelf

[As I wrote on netpoetic.com:] My latest Perl Poetry Generator in 256 Characters, ppg256-4, is my first one created specifically for a gallery setting. Although shown here in my office, it’s now on display at the Axiom Gallery for New and Experimental Media in Boston in the show Pulling Back the Curtain, which runs through September 27.

Since 2007, I have been developing Perl poetry generators that are 256 characters long. These programs constitute the ppg256 series. They are simply 256 characters of Perl code; they use no external data sources, online or local, and they do not make use of any special libraries or invoke any other programs. Here’s the code for ppg256-4:

perl -e 'sub c{$_=pop;$_[rand split]}sub w{c("b br d f fl l m p s tr w").c"ad ag ap at ay ip on ot ow"}{$|=print"\0\0\0\0\0\1Z00\2AA\33 b".c("be de mis re pre ").w." ".c("a on the that")." ".w.w.", ".c("boss bro buddy dogg dude guy man pal vato")."\4";sleep 4;redo}' > /dev/alpha

Note that those 256 characters of Perl include all of the control codes that are needed to drive the sign; the output is just redirected to the sign, a serial device, instead of appearing in the terminal. If you want to run ppg256-4 yourself, you can use this modified version that doesn’t include the control codes — it’s ready for you to copy and paste it into a terminal window:

perl -le 'sub c{$_=pop;$_[rand split]}sub w{c("b br d f fl l m p s tr w").c"ad ag ap at ay ip on ot ow"}{$|=print "\n".c("be de mis re pre ").w." ".c("a on the that")." ".w.w.", ".c("boss bro buddy dogg dude guy man pal vato")."\4";sleep 4;redo} #No LED sign version'

I’ll try to post a longer discussion about ppg256-4 on netpoetic.com and/or on Post Position before too long.

ppg256-4_2

ppg256-4_3

ppg256-4_4

ppg256-4_5

This was posted here on Post Position for the convenience of those of you who subscribe to the feed or visit the site. If you want to leave a comment, please head over to this post on netpoetic.com.

netpoetic.com Surfaces, Launches, is Erected

netpoetic.com, a rather massively multiposter blog, is now hosting writings, news, and conversations about digital poetry and electronic literature: “On these pages you will find links to new digital poetry/literature, ideas about what the heck that might mean, experiments, calls for work, exhibitions, activities, news, his/herstories and just about anything that the authors feel needed.”

Recently on the site I’ve read Sandy Baldwin’s discussion of permissions (“How does chmod relate to the absent body?”) (part 1, part 2) and have learned that Brian Kim Stefans’s arras.net has been reskinned. I’m going to make whatever contributions I can to the site, too.

Jason Nelson and Davin Heckman were the ones who laid the foundations for this enterprise, driving piles deep into the loam and shale of the Internet. The site seems to be building some of the energy of the net’s important mailing lists, although it seems to lack flame wars so far. I also appreciate that the site has modestly hidden its obligatory tag cloud behind the “categories” tab.

Digital Writing and Readings

[As I wrote on netpoetic.com:] Adam Parrish recently taught a class at NYU in the ITP program: Digital Writing with Python. I was very interested to learn about it and to see documentation of the final reading/performance, with some links to students’ blog entries about their projects. Here at MIT, I teach a class called The Word Made Digital in which students do poetry, fiction, and less classifiable writing projects using Python and other systems and languages. And, I know that Daniel Howe has taught the RISD and Brown class Advanced Programming for Digital Art and Literature.

I suspect, though, that these classes that are mainly focused on writing and programming are rather rare – much more rare, I’d bet, than design and art classes that are heavy on programming. It may have something to do with the number of galleries and curated Web sites exhibiting programmed visual art, which seems to me to be much greater than the number of similar edited venues for digital writing that’s driven by code. I’m not sure which way the causality flows. But several of the art-loving among us have some idea that, say, Processing programs can be aesthetic, even though they’re made of code. It’s not as common for literary folks to think of Python, Perl, or other programming languages (whether or not they start with P) as ways of creating literary art.

My sense is that having readings, of the sort that Parrish hosted at the end of his class and of the sort that the Electronic Literature Organization has sponsored and organized over the years, is a useful way to address this gap between literature and the visual arts. (Full-blown festivals, of course, don’t hurt either.) A reading allows writers to show off a program, which may be intricate, and explain how it works. It’s fun for those who are already into digital literature, and an accessible way for other literati to see what computational writing is about and how it bring certain literary qualities into the digital realm – even if it does radically subvert others. And since there aren’t as many official, edited, and well-promoted publication options for computational writers, going to do a reading can be a good way to appear in a context of other writers and reach a public.

I’m trying to do my part here by running a reading series for digital writing, but that’s grist for the next post [of mine on netpoetic.com].

This was posted here on Post Position for the convenience of those of you who subscribe to the feed or visit the site. If you want to leave a comment, please head over to this post on netpoetic.com.

Presence in Interactive Fiction

The first issue of the Journal of Gaming & Virtual Worlds, from earlier this year, sports a nice article by Alf Seegert, “Doing there’ vs. ‘being there’: performing presence in interactive fiction.” In it, Seegert sharpens the existing discussion of reader-response theory and IF to explain how IF may need to balance between boredom and overstrain and how the writerly role allows for new sorts of presence. He then conducts some good discussions of Jon Ingold’s All Roads (highlighting how the body of the player character is indicated) and Paul O’Brian’s Luminous Horizon (looking particularly at the subjective narration).

Looks like a single issue of the Journal of Gaming & Virtual Worlds costs £18, unfortunately. (Institutional subscriptions are £150.) Too bad, particularly since there are least three peer-reviewed, open-access, no-page-fee journals in the field (Game Studies, Digital Humanities Quarterly, and eLudamos) that were up and running before this one was founded. Update: That is the advertised price, but the issue is currently available for free, as is the article.

Read and Jump in Silent Conversation

“I had with me many tools, and dug much within the walls of the obliterated edifices; but progress was slow, and nothing significant was revealed.”

– H. P. Lovecraft, “The Nameless City”

Gregory Weir, who fashioned the very nice piece The Majesty of Colors, has a new game with levels built out of existing texts, including “The Nameless City.” The new platformer is called Silent Conversation, a title taken from poet Walter Savage Landor’s description of reading.

The Prufrock level in Silent Conversation

The second Nameless City level in Silent Conversation

My impression is that this one is not as short and compelling as The Majesty of Colors, but is more elaborate and is, if not a success, at least a very interesting failure. It’s not a particularly good or fun platformer qua platformer and doesn’t offer a very good model of the reading process, but it reveals more about about the potential of games as digital objects that can be both played and read. I don’t think that making levels out of pre-existing texts works nearly as well as would original writing, but the setting of those texts into interactive concrete was certainly done with care.

The model of reading is one in which you have to touch every word with your eye (your “I”, in this case) to seek a good score (represented as a letter grade, believe it or not). “Powerful” words fire slow-moving letters at you, which clear away your accomplishments on the screen if they hit you. In some places you can fall to your death and undo the reading on the screen, too.

If this were done as a parody of the reading process as conceived of in the educational system, it could work effectively. Playing the game does suggest to me things that I do when I read – looking back over the text for a word I missed or misread, trying to progress by looking at at least each phrase along the way. But the reading of these texts is numbed, rather than heightened, by having them as elements of play in this way. Just to stick to the mechanics, rather than looking to deeper aesthetic questions about reading: Words are either powerful or not, and I need to simply tag them in either case, carefully if they might undo some of my progress, quickly otherwise. Whether in a long fiction work or a short poem, I can, when reading on paper or e-book, skip back to re-reread without slogging back past each word, as I have to go in this game. And I can re-read sections when I’m done, too. While the phrases used as decorations add color and visual interest, this game, perhaps surprisingly, makes a less unilinear reading experience into a more linear experience in reading and playing. It also rewards a perfunctory glance and touch rather than requiring discernment, figuring out, and comprehension, as do some other video games made entirely out of words – works of interactive fiction.

Reading and playing are not two great tastes that taste great together in this case, but I appreciate Weir bumping them into each other in this piece and trying to figure out how they might enhance one other. And for those interested both in gaming and in digital writing/electronic literature, Silent Conversation is certainly required reading.

From nn to Curveship

This is the fourth in a series of posts about my interactive fiction system, Curveship.

I was recently asked to elaborate on the difference between nn (the research system I developed during my dissertation work at the University of Pennsylvania) and Curveship.

The most important difference is that nn is a research system that I used for making some advances related to computer science, computational linguistics, and narratology. The system was developed to prove certain points; it was used only by yours truly to implement narrative and text generation ideas and to run demos.

It worked pretty well for this. Using nn, I developed a new representation for the order of actions, one that can be used flexibly in text generation. I put together a string-with-slots representation used in templates, one that is much less cumbersome to use than a general abstract syntax representation. And I worked out how a focalizer world (now called a “concept”) can model an actor’s theory about the “real” or “actual” world that is central to an interactive fiction.

That’s not to say that you’d want to pick up this system, though, and start writing games in it. While nn in 2007 had all the basic components of an IF system (a parser, the ability to save an restore games, the ability to model a world), they were not all ready for prime time, because my development work was focused on trying to answer particular research questions.

So, I took the nn code and began working on a new project, Curveship. I wanted to release a system that was developed with other IF authors, other AI researchers, and other teachers of narrative theory and electronic literature in mind. Curveship is getting close to being this system – within a few months, I hope, I will get it to that point, with the help of a group of people, the Curveship crew, who are testing and commenting on pre-release versions.

Concretely, there are three main sorts of differences. First, bugs in nn that my limited use of the system didn’t expose have been fixed – and more will be. Second, there are improved capabilities that didn’t relate to my research goals, but which are important to IF authors. These range from better parsing and clarification (disambiguation) to better ways of formatting text to better capabilities for simulating physical aspects of the world. Finally, I have impeoved the interface, which includes changing the names of some components of the system. What used to be a “plan for narrating” is now “spin.” What I called “existents” (a perfectly nice but abstruse term from narratology) are now, more simply, called “items.” To avoid confusion, I even changed the name of the “Narrator” module, because “narrator” is a narrative function and a parameter that can be set within the system. This module is now called the “Teller.” There have been other name changes and a great deal of refactoring, some writing of docstrings, and other improvements to make the Curveship code more understandable and manipulable to those who want to get into it. The way string-with-slots templates are written has changed, too, as has the way items and actions are created.

The discussion of reply structures, focalizer worlds, and similar aspects of the system in previous publications (such as my dissertation) remains largely applicable to Curveship. But because Curveship is being developed with an eye toward a new group of author/programmers, researchers, and teachers, there have been many changes beyond the parts of nn that implement those core research contributions. Even some of publications and talks about Curveship from recent months have names for components that are now different and mention the old style string-with-slots formalism. That’s one of the reasons I’ve started in on this series of posts.

Worlds, Spin, and the Revolution of Curveship

This is the third in a series of posts about my interactive fiction system, Curveship.

Before I start descending into detail, I’ll explain why I think Curveship is a big deal.

Curveship does the usual work of an interactive fiction system when it comes to simulating a world: There are discrete rooms that make up the fiction’s locations, actors can inhabit and wander around these rooms, and things can sit in them, be taken and carried off or otherwise moved around. Items can change state, so that a lamp, for instance, can be turned on and off. Items can go into or onto other items, if they allow it. None of this is surprising; plenty of interactive fiction development systems already do all of it very well.

Hypertexts don’t do that. Hypertexts, including Web hypertexts but also pieces in HyperCard, Storyspace, Twine, and similar systems, present a structured document in which some phrases are hooked up to other pages. They might have guard fields or other pieces of code, but at their most essential, they are really strange surfaces of text, with phrases connected in an unusual topology.

Nothing’s wrong with hypertext. If you want to create an unusual language surface, to link pages together into a curious structure, it’s clearly the form to use. The play and connection of language can be intriguing and relevant. You can make a compelling literary work in this form, as several people have done.

But interactive fiction systems allow something else. You can put a simulated world underneath the text that people see. This lets you create different types of literary systems, which can be nice: Several people have created interactive fiction systems that are compelling literary pieces and that couldn’t have been realized as hypertexts.

In an important way, Curveship is to interactive fiction what interactive fiction is to hypertext. Just as interactive fiction added a new and significant model – a model of a simulated world – Curveship adds a model of the telling, of the narrating, of the way that the simulated world is represented in language. Curveship adds spin, as in the spinning of a tale and as in Spin Alley.

Curveship can leave actions out of the narrative, can reorder actions in the narrative to create flashbacks and flashforwards and retrograde narration and narration by category, can narrate at greater or lesser length, and can represent several actions in one statement or repeat the narration of a single action several times. The system can tell about what is happening in the simulated world from the perspective of any specified actor, based on that actor’s knowledge and perceptions, or it can narrate from a global perspective. It can tell about what has happened in the past just as easily as it can represent a current action.

The system is able to do this because it models every action that happens in the world, just as existing IF systems model every item. First-order representations of actions differentiate Curveship from other IF systems. And on that of that, a complete text generation system has been built, allowing for grammatical changes that follow from high-level narrative parameters – the spin.

Consider The Odyssey. Why is it interesting? Why has it shaped world culture and remained memorable for thousands of years? Yes, lots of interesting stuff happens in it. But the way it is told is also tremendously compelling – Odysseus listening to the song of his own exploits, shielding his eyes and weeping, being identified as the great hero, and then going on to tell the next part of the story in his own voice. That’s as fascinating a part of The Odyssey as is the encounter with the Cyclops or the slaying of the suitors. And the telling surely becomes more important in contemporary literature. Is Lolita really more interesting because of what happens or because of how it is told? What about Ulysses? To the Lighthouse?

Curveship’s modeling of the telling adds to the significant power that IF already provides by way of a model of a simulated world. Just as IF adds a simulated world to hypertext, Curveship adds control over the telling (that is, it adds spin) to the simulated world.

Those who want to create strange surfaces of text will want to work in hypertext. Those who want to have a simulated world will probably use an existing IF system. For those who are interested in varying the telling, as many great authors have done in oral, written, typed, and word-processed literature, it will be best to use a simulated world and spin: Curveship.

A Lexicon of the Curveship World

This is the second in a series of posts about my interactive fiction system, Curveship.

In writing about Curveship in any detail, I’ll have to use terms such as action, event, and order, which sound ordinary but are used in a special way in the system. Furthermore, I’ll have to use terms such as focalization and narratee, which do not sound ordinary, but have a meaning within narratology (a.k.a. narrative theory) and are important to the way Curveship works. I’m going to define a few of these terms – some I’ll save for later. Rather than sort them alphabetically, I’ll group them by how they figure in the system.

Worlds of Curveship

Actual World. Following Marie-Laure Ryan’s terminology, I consider the main, simulated interactive fiction world to be the “IF actual world,” that is, what is “actual” from the standpoint of the player characters and other actors. I’ve bothered to give this a special name (rather than just calling it the world) because it isn’t the only ball in play in Curveship.

Concept. A concept, formerly called a “focalizer world,” is a particular actor’s theory of the actual world, based on knowledge (put into a fiction file to begin with) and perceptions (gained as the actor moves around and looks at things). Concepts are almost never complete, and they may be wrong. They allow the telling of actions and the description of items to be focalized, that is, based on what a particular actor knows and sees.

What Exists in the World

Item. Basically, any object that has a representation. I could have called them “objects,” but that term means something different in object-oriented programming, even though items do end up being represented as objects. I could have called them “existents,” the term Seymour Chatman and other narratologists use, but that caused gnashing of teeth among some of the people I consulted, including one researcher whose first language wasn’t English. Items must be in one of three categories.

Actor. An item that can take action on its own, due to either code that an IF author has written or a script the author has dropped in. Any item can react, but only an actor can initiate action. Actors are also the only category of item that have concepts.

Cosmos. The special actor that is the root of the item tree. Responsible for earthquakes, power outages, and any occurrence where the author doesn’t want to model the cause as its own actor. The cosmos can also change the plan for narrating, which allows for a connection between the simulated world and the way the telling of this world is done.

Room. A discrete location which has exits leading to other rooms. Rooms are all on the first level of the item tree, directly below cosmos.

Thing. Generally, an inert item. Any item that isn’t a room and doesn’t need to act or have a concept is a thing. Things can react when something is done to them or done in the same room, so that pressing a switch on a lamp can cause the lamp to react by increasing its glow.

Item Tree. A structure representing all of the items in the actual world (or in a concept) and the relationship between them. It is a graph with a designated node (cosmos), directed links from parent to child, and no loops – that is, no item is its own descendant. Hence, a tree.

Parent-Child Relationship. The relationship between an item and an item a level under it, and connected by a link, in the tree. When an actor walks into a room, he or she becomes the child of the room. If the room moves (perhaps it’s an elevator) the actor will move with it. If the lights in the room become brighter, the actor and everything else in the room will be better illuminated. An apple placed in a sack similarly becomes the child of the sack and, for instance, is stolen if the sack is stolen.

Link. The edges (as they are called in graph theory) of the item tree, each one connecting an item to another item and indicating a parent-child relationship. Links are labeled, with the label indicating more about the relationship. If a person is holding a sack with an apple inside and wearing a cloak, the sack and cloak are the children of the person and the apple is the child of the sack. Furthermore, the link between the sack and the person is labeled “of” (indicating a possession) and the link between the cloak and the person is “on” (indicating something being worn). The link between the apple and the sack is “in” (indicating containment). If you have ever tried to use Inform 6 to model a desk that you can put things on (on top of) and in (in a drawer), something which is not very straightforward to do, you will see an advantage to the way Curveship works.

What Happens in the World

Action. A specific but fairly high-level action taken by an actor. An intended command (such as “get lamp”) usually corresponds to a single action. It also usually doesn’t make sense for an action to partly succeed; it either works or doesn’t, although the first components of it may succeed and later ones may fail. The set of actions is open. Authors can easily make up new ones. Actions are what the system narrates, because they are meaningful and high-level.

Event. A lower-level component of action. There are only five, representing different things to be done in the world. Any action is made of one or more of these with appropriate arguments. The five primitive events are sense, impel, misc, modify, and configure. Only the last two change the state of the actual world, modify by changing a feature of an item and configure by changing the item tree. Events are good for simulating the world – unlocking and opening doors, moving actors from room to room, and so on. But because they are so low-level, they are not very good as a basis for narration. We usually do not want to hear that an actor exerted force on a switch, then turned the lamp on, and then increased the glow of the lamp. But it’s nice to be modeling this under the hood, because if the lamp’s battery is dead, an actor might be able to do the first two things but not the third. If the battery is then replaced, the lamp should glow brightly right away, since the switch is in the on position.

Files of Curveship

Fiction File. What others call the “story file” or “game.” It can be a game, of course. Essentially, though, it defines a fictional (and simulated) world.

Spin File. A very short file with a few parameters and perhaps a bit of code, all of which could be included in a fiction file. These parameters determine how the story is told at a fairly high level. Released games probably won’t use spin files, but sets of these may be used in research and teaching dealing with narrative, because they allow different methods of telling to be applied to the same fiction file (or a set of fiction files).

These are the building blocks of the simulation done in Curveship. I should note that Curveship is designed to mainly simulate the physical world, not emotional states or conversations between actors. And, of course, it models the way actions are represented and items are described based on concepts of that world – it narrates in different ways based on parameters and code provided by IF authors. I’ll discuss how it does that in a future post.