Postmortems in interactive fiction

I’m a big fan of postmortems in projects.  While they are interesting to read as an outsider to a project, they are most beneficial to the stake holders of any project.  In Interactive Fiction, this is no different.  They are usually very interesting to read, but of more importance to the author.

Following the results of IFComp 2014, we’re seeing quite a few postmortems appear.  You can read quite a few interesting ones on the forums (http://www.intfiction.org/forum/viewforum.php?f=32).  What I find great about reading these is you get an insight into what the author was thinking / feeling as they wrote their work, it’s just great reading about the inner reasonings behind their decisions and their reflections on what they learned.

I’ve released two games, not counting my IntroComp entry this past year which I’m still working on to get to a truly releasable state.  I’ve written postmortems for both and while not as comprehensive as some I’ve seen come out after the comp, they serve the purpose I set out for.

My format for postmortems is simple.  I simply find 3 things that went well, things that I want to do more of and then find 3 things that didn’t go so well, things I want to learn and grow from.  With that simple template, I create a document for myself (and others) that is not only an exposition on the work that went into the piece, but also something that I refer back to from time to time.

I hope that more people take the time to write postmortems, not only for their comp entries, but for anything they release.

February 2014 – IF Update

I suppose I should do a February update before it’s March.  Well we’ve been dealing with a cold and snowy winter here in the northern US.  You’d think that would give me all kinds of time to do some coding.  Well I have been coding, but not much of anything anyone reading this would be interested in.  All work related stuff, and man have we been busy.  Good for the old wallet, but not much help with the free time.

In fact, I’ve fallen out of the community a bit, not kept up with the goings on.  Oh I’ve poked my head in now and again on the forums, looked on IFDB to see if anything interesting popped up and of course I’ve stayed a little more active on our private Google+ IF writing group that Marshall created.  The writing group, as Marshall stated in his post, has been invaluable to me in learning so much, even though I’ve not been writing much.

That brings me to my main point to this update.  I’ve not written much in the last month and a half.  I’ve tinkered with my WIPs a few times and added some pieces and fixed some bugs, but I’ve just not felt too creative.  I have however, read as much as I could, learning as much as I can.  Keeping up with what Emily and Zarf and all the others have been doing.  Reading the forums and seeing the problems that have come up and the solutions that were found.  I’ve tried to contribute when I could, but not as much as I would have liked.

I hope to get back working on some IF in March.  The muse has not been kind to me and as I sit here thinking about my WIPs, I don’t know what to do next with them.  I might need to start something small and fresh just to get the juices flowing again.  I’m looking at getting into the ShuffleComp that is being talked about on the forums….something like this would be the perfect vehicle to get me back on track.  I think that’s why I like these smaller comps.  They are typically pretty focused and in this case some guidance on the story will be helpful.  In fact, just writing about it on here is getting me excited to get started.  Comp is still in the planning phases so watch the forum for updates and I’ll try to announce something here, especially if I do end up participating.

Well that’s been my new year so far….a whole bunch of nothing.  Never gonna get my game done for IFComp 2014 at this pace.

As always, Go north my friends!

November IF Update

Thanksgiving_1900As I write this, it’s actually late on October 31.  Despite it not quite being November yet,  I have plenty to talk about for this monthly update so I’ll get started now anyway.

Halloween is past us and IFComp 2013 voting is starting to wind down.  I’ve played most of the games and have my votes tallied though I’ve been lax on putting out reviews here.  Initially I was enthusiastic about playing all the games and sharing my thoughts here, but as the month went on I became less and less excited to post reviews.  Not because the games weren’t good….there are some good ones in the batch, but more I had too many sticks in the fire this month to spend too much time writing reviews.  I was struggling finding time to play the games as it was.

I did however, manage to squeeze three hours last Saturday to create my entry for EctoComp 13 (website hasn’t been updated yet, but he said it would be soon).  Games were released today so get out there, play them and rate them.  This year EctoComp received a record number of entries (24) ….last year there were only 6 games submitted.  I’ve played through a few already and despite being speed IF, they have for the most part been of good quality.   I won’t talk about my game here just yet….but I do plan on revising it, I’ve actually started already, to fix the problems it has, round out the story and perhaps expand upon it a bit.  I really like my idea and I want to expand on it.  I’ll let you all know here when I have an update ready.

I’ve not touched my other two WIPs too much since last month.  I’m probably falling behind some if I plan on getting something ready for the Spring comp, but maybe if I push through, I might be ready.  I’ve spent most of my coding time this month toying with new ideas, looking at others source code, and generally just learning more about the craft.

It’s been an exciting October for me so looking forward to a great November as well.   As always….go north my friends.

 

What could we use IF for other than just games?

Of course the most obvious use for IF tools and languages is for games.  It’s been used that way for years and years.  I got to thinking about other uses of the technology.  What other kind of system could I create with my language of choice? Any specific examples will be with Inform 7, but I suspect that it wouldn’t matter if you were using TADS3, Adrift, Quest or any of the other languages, though I suspect that some things may be more difficult, if possible at all in some of the more CYOA type systems.

Here are just a few things to brainstorm about.

Education – This I think is an obvious one and one that is already being explored and implemented and has been for years.  Look at about any IF blog or site and there will be links. 

              • Inform 7 site – http://inform7.com/teach/ – here’s a whole section on resources and examples of people using Inform in education.
              • Emily Short has a whole list of examples of classes teaching IF or using IF to teach some concept (http://emshort.wordpress.com/how-to-play/teaching-if/) If you follow many of those links you’ll find a plethora of information not only about their coursework, but you can look at the material used in the classes for useful white papers and other resources.

Also, IF can be used to teach other subjects.  For example, here is a course where the student, using Inform 7 is tasked with recreating a historical event or situation (http://gamingthepast.net/simulation-design/inform-7/inform-simulation-assignments-and-rubrics/) .  There are resources out there for using IF to teach languages, literature, philosophy…just about any subject you can think of. 

Obviously, it can be used for teaching programming.  Being a developer myself, I think this is really important as we need to encourage children to become developers and get interested in programming at a younger age.  What better way to do so in a classroom setting, then to have them develop a game.

Simulation – I’ve thought about this a bit and while IF in general is a simulation of a fictional world or situation and as talked about above, can be used for historical simulation, what I’m really thinking about here is scientific simulation.  I think it would be an interesting exercise to put scientific formulas into IF form, and allow the “player” to experiment with different variables and have the simulation run and display text describing the results (or with some of the newer methods and extensions with Vorple and Gluxl support, perhaps we could do more than just print out text)

This could be useful for being a low-cost alternative to high priced simulation software.  This could also provide a way for students to interact with and experiment with dangerous or high-cost experiments, say a nuclear explosion.  For example (albeit a very simple example):

You weight 100lbs on earth.  Enter in a planet you would like to travel to or enter in a new weight to see what the effect of gravity would have on your weight.

>go to mars
You travel to mars and step up on the Martian scale that is provided to you at the docking station.  You now weigh 38.95 pounds.

>add 25 pounds to your weight
You pick up your luggage which on earth weighed an even 25 pounds.  Now here on Mars the combined weight of you and your luggage (in Martian weight) is 48.6875 pounds.

>convert that weight to metric
For the good of those outside the US, you translate that to metric pounds and your metric weight is now, 22.08427851 kilograms.

And as always, I’ve always felt that you learn best by actually doing and not just reading, so writing out the code to create these simulations will not only teach logic and programming, but also reinforce the scientific formula / laws that govern the simulation you’re are trying to create.

Business Analysis – I spend much of my professional career building business intelligent software for companies.  A large part of that is creating software to analyze sets of data and providing answers to questions asked about that data.  This might actually be a stretch and more of an interesting exercise instead of anything useful, but could we create a work of IF, that reads in sample data and answers questions about it. 

For example, we read in quarterly sales data for a company.  The user can then enter in commands like:

> examine sales for salesman John Doe
After examining the sales information for John Doe, you find that he has sold $1000.00 of widgets for the last quarter.  This is an increase of 1.2% from the previous quarter.

> show me the total sales for Mondays in the last quarter.
You sum all the sales for each Monday for the last quarter of sales to find that you have sold $23,093 worth of widgets. This is up 3.5% from last quarter and is the 2nd highest day for sales (behind Wednesdays).  You have earned $345.93 in commission on those sales.

Just some examples and perhaps a lot of parser magic would need to be done to allow for these queries and really there are probably better tools out there to do the same thing in an easier fashion, but it’s kind of an interesting thought process none-the-less.

These are just a few thoughts I had and I’m sure that I’ll come up with more.  As I said, most of these may be unrealistic or impractical for a number of reasons (other than some of the educational uses as it’s been shown and I do believe that there is usage there in languages, historical simulation, … that are important)

Please share any thoughts, additions or omissions you may have.

Beginning of September Update

Well kids are back in school, football season is upon us and fall is just around the corner.  Now is the time to start making my plans for the winter months and what I want to accomplish.

The last month, I’ve been putzing around with Inform 7 getting the hang of it and toying with some ideas.  I’ve now got a notebook full of ideas and I feel relatively comfortable in the language.  I’ve got one work in progress, a longer piece who’s idea has been floating around in my head for a while now and a handful of skeleton works that will eventually get worked into shorter pieces (or longer if they take a life of their own that I haven’t anticipated.)

The couple most exciting things however, unfortunately I can’t talk much about them yet.  I met with a friend of mine who also happens to be an author and we’ve got a few ideas that I’m really excited about.  Hopefully by next month, I can spill a few more beans.

Why IF?

Why have I chosen to create a blog about Interactive Fiction (IF)?  Let me define that a bit first.  IF traces it’s roots back to the text adventures of old.  Back to the old Infocom games of Zork, Enchanter, Trinity.  Going further back to the Scott Adams games that I was first introduced to.  And traveling even further back to what many consider the father of it all, Adventure.

Back when I was a young teenager back in the early 80s, I was introduced to text adventures (I had not heard the term Interactive Fiction until much later) on my Vic-20 with Scott Adams Adventureland and Pirate Adventure.  The Scott Adams games were not at the pinnacle of the technology at the time, the parser only accepted two words and even then only scanned the first three letters of each word.  So the phrase LOOK BEAR was syntactically the same as LOO BEA.  Consequently LOOK BEAR was treated the same as LOOK BEAN, LOOT BEAN, LOOP BEANPIPE.  While seemingly limited, with careful programming the developers included a vocabulary of over 120 words and a rich, while terse, story for the times.

Then I discovered Infocom.  Oh what a difference their games were.  Rich and entertaining stories, descriptive scenery, full sentence parser (though the two word verb-noun, still prevails to this day) and much larger and difficult gameplay.  I played through almost all of them.  Purchasing each one as they came out and while I only ever finished one (at least back then), I believe it was Enchanter, I loved them all, played them constantly trying to get past just one more puzzle.  Infocom set the standard for the text adventure and many conventions that they began, carry through to today and modern IF.

Many other companies came along, selling their own brand of text adventures, some (including Infocom) started to include graphics and sound into their games to attract the crowd they were beginning to lose as video cards and computers became cheaper and more obtainable by the gaming masses.  Eventually, as a genre of commercial games, they faded into history.

However the community never dies.  Players kept playing, developers kept developing.  Companies developed adventure game creators, that allowed the general public to create their own adventures without worrying about the technical details of building a parser or managing memory or any of that stuff that us developers love (well at times not so much).   Enterprising folk, reversed-engineered the Z-machine, the virtual machine that Infocom games ran upon so that still others could write interpreters to run the Infocom games so people could play them on modern machines.  The community blossomed.  In 1993 Graham Nelson brings us Inform, a language that you could write IF games with that compiled to the z-code format that all those z-machine interpreters could run.  in 1996 Michael J Roberts opens up his TADS development system, which since 1988 was a shareware development system, for free for the masses, making it today the second largest development platform for IF behind Inform.  There are many others, and as we move to the modern era, even more platforms are being created to develop and run your games on, with some HTML platforms becoming popular over the last few years.

I don’t mean this article to be an all encompassing history on Interactive Fiction nor a plug on any one particular style or platform.  I really intend this to be a introductory message to help you see what kind of information you’ll find presented here.  I hope to share:

  • Being that I’m a software developer by trade and a bit of story-teller at heart, I’ve gravitated to writing my own Interactive fiction.  Since I ‘ve settled on the Inform 7 platform (for now, it’s natural language structure intrigues me as a developer and is different enough from my day job as a .NET developer, that it provides and escape from work), I may share code or coding tips or strategies that are useful or that I may want to easily recall at some later time.  I will also include pieces on story-telling, plotting and other story crafting thoughts that apply across the board to any platform.  I may include technical bits or information on other platforms as I want see the community grow regardless of what platform is being used.
  • Information on the history of interactive fiction, interesting tidbits that I run across or other well-known (or not) pieces of story behind the pioneers of the genre.  I enjoy playing the old games and learning about the history of the companies, people and games that I recall from my childhood.  Information was harder to come by back then, but now in the world of the internet, information is just a search away.  I’m finding all kids of interesting information.
  • Reviews or thoughts of modern pieces of IF that I play and find interesting and that I have something to say about.  I like to play the games still.  While modern games look and sounds incredible, I find, with some exceptions of course, that modern gaming lack the story of even the simple IF games.  The visuals that are presented also take away the visuals that come to mind as I read a simple sentence in a game I’m playing.  I can become immersed into a piece of IF much quicker than any modern game.
  • Any thing else that catches my eye and I feel is useful to and relates to (whether anyone else agrees or not) the world of IF.

So there you have it, in under 1000 words, I’ve laid out my plan for this site.  Using the play on my name, I give you Lautz-of-IF!

If you’d like to explore before I go much further, go to the Interactive Fiction Database to find more games and everything you need to download and play for yourself.