work-in-progress[1]This week I made much more progress than I have in the past few weeks.  My “ban on games” helped me to focus around 3-1/2 hours on writing Scene 2, and I’m to the point now where I believe I can have it done with about 2 more hours of writing.

I’ve finally reached the point with the language where I don’t feel confused by what I’ve just written — where I am controlling the language rather than being controlled by it.  Don’t get me wrong; I’m still stumbling around a lot and taking code straight from the tutorial examples, but I’m doing it intentionally now, for specific purposes that I’m getting to work correctly without extreme amounts of pain.

One of the coolest and most productive things I’ve done is to figure out how to use tables to handle conversational topics.  I’m sure I could write everything out longhand and get it to work just as well.  It might not even take a whole lot of additional typing to make that work.  But there’s something about being able to organize data in a table and refer to it in an orderly way that makes my thought processes cleaner.  It’s back to the same philosophy of making everything as code-like as possible.  Coming from the programming side, keeping code looking like code and text looking like text makes organizing a project like this much easier for me.

What I’ve done is to chain a couple of tables together.  One has a topic column and links to a label value.  The other table has label values along with whatever properties I need to use.  I then define a value with properties based on the second table:

Computer-label is a kind of value. The computer-labels are defined by the Table of Computer Topic Data.

Now I can use the topic column in the first table as a hook for any user input, and link that to the various properties I’d like to associate to that conversational topic in the second column.  This is nowhere near the same level of sophistication of other methods, but it’s surprisingly powerful and works well for me.

So at this point, I have Scene 1 done (barring revisions), the infrastructure for Scene 2 complete, about 1/3 of the content of Scene 2 written, and a big leg up on the rest of the game, as much of what I’ve already done should help with the subsequent scenes.

This is still a lot of work!  The programming issues I may be surmounting, but transforming this mess of Inform 7 into a playable work of interactive fiction with a decent plot and pacing is going to be tough!