Search Results for: interactive fiction

Zarfplan: August: the endgame

The month is not over, but I am heading to DragonCon for a week. So you get your report early. Conveniently this allows me to report "not quite done yet" without too much slippage past my mid-August deadline. And without smacking into the more realistic end-of-August deadline.

It's not quite done yet! But at least the update posts are getting closer together, right?

At this point the entire puzzle-line of the game is playable. That is, you can start at the beginning and solve every puzzle. (Without using cheat or debug commands.) This doesn't end the game; it leaves you in a state marked "endgame", although "denoument" would be a better term. It's the wrapping-up sequence which leads to the ending text. There are no puzzles here, but it's an interactive sequence. At least, probably interactive.

I've intentionally left the denoument flexible -- or, if you like, "undesigned" -- because I didn't think I could construct it without the whole of the game in my subconscious. It's the last whiff of my "implement the first scene first, then the next scene, and so on until the end" plan. I stick to that rule for short games. It would have been impossible for HL, but I am writing the last scene last.

So that's the last task, mostly. Plus I have a few bits of background color to fill in, and the extremely annoying travel bug that I mentioned last time. And there are still 59 "TODO" marks in the source code; I should look through them and (mostly) delete them silently.

I will do some of this work at DragonCon. (What? Travel is good thinking time. I can't convent for a week straight. There'll be a lot of time alone in a hotel room, or wandering around a strange city.)

At the farthest limit, I will have it all wrapped up in the first week of September. I will then pass the complete playable draft around to the beta testers, and start looking at the iOS work.

I will also write another update post at that point. So -- you'll hear from me in less than two weeks. At that point I'll be able to talk more about the process of Shipping The Damn Thing. Strange and scary as that prospect may sound.

Posted in Zarfplan | Tagged , , , , | Leave a comment

IF meetup at WordPlay, Toronto, Nov 8th

We would like to invite the IF world to show up and hang out at WordPlay in Toronto on November 8th. (Free admission.) That whole weekend, really -- we'll have some kind of dinner and stuff.

For the past few years, the Boston IF gang has hosted community get-togethers in association with various local game-related shindigs. (First PAX East, then NoShowConf.)

What with one thing and another, that's not happening in Boston this summer. (Although we will be in attendance at BostonFIG in September.)

However! Jim Munroe is running his second annual WordPlay festival in Toronto on November 8th. This seems like an excellent opportunity to declare a get-together. So let's do that.

(Discussion on forum thread: http://www.intfiction.org/forum/viewtopic.php?f=4&t=14961)

Tagged , , , , , | 1 Comment

Zarfplan: July: almost done

A month ago I wrote: "I am still fairly confident that I will have a complete, testable game at the end of July." I halfway made it. I have a testable game! ...but it's not complete.

On July 17th I sent mail to the backers who chose the "access to the closed beta-testing phase" reward. (And also to select friends, because what's the point of being in a local IF meetup group if you can't hit them up for some beta-testing.)

At that point I had a version of HL which was playable roughly halfway through. That is, the game was maybe 90% written, but I stuck a barrier at a particular point and said "Play-test up to here. Everything up to this point is 100% complete. Past that, eh, there are a lot of holes."

So for the past two weeks, a few intrepid players have been trying out "chapter one". And sending me transcripts. Useful transcripts! At the same time, I have been pushing forward on the latter part of the game. Filling in holes. Dotting i's, crossing t's.

It's not 100% yet. This game has more i's and t's than an interstitial Italianate witticism about intermittent tintinnabulation at the Interutilitiarian Hittite Institute at Ytterby. However:

All the rooms are done. I couldn't let you folks wait on rooms for another month. As of July 23, the room-counter widget says "93 of 92 rooms are described." ...Yes, off-by-one error there, sorry. The game has a couple of dummy and debugging rooms and I screwed up the accounting. There are 92 actual rooms, and they are all properly described and furnished.

I have almost completed "chapter two". This is where the game scenery starts to change, so it involved some messy things-moving-around code. The code works; I'm missing a few descriptions.

I have done another optimizing pass and sped up a bunch of display code. I've followed up on a bunch of suggestions that came from my testers. I've added a very clever "GO BACK" command which takes you back to the last room you were in. (So you can type "GO TO KITCHEN", grab something, and then "GO BACK".)

What's left?

Three major rituals in "chapter three". One extremely annoying travel bug. A bunch of descriptions pertaining to things that change in that part of the game. Solidification of the ending scene, which I have hitherto only lightly sketched out because you can't write a decent ending without a game to build it on.

There are 109 "TODO" marks in the source code as of this evening. Don't take this as very meaningful; I've never shipped an IF game that didn't have a handful of "TODO" marks left in it.

When I sent out the test emails I promised that a complete test version would be ready in "mid-August". I still hold to that, although "mid" is intentionally vague. I would really like to get a final test going by the last week of August, because that's when I take off for DragonCon.

There we are. If I don't get completely blindsided by something, the next update post will report the completion of Inform programming for HL. There will still be iOS work to do, plus whatever bugs the testers turn up.

(Other words I considered for the "crossing t's" gag above: tripartite, zwitterion, tritium, irritability, invitation, totalitarian, instinctive, titular.)

Posted in Zarfplan | Tagged , , , | 5 Comments

Trying out itch.io

itch.io is a quick-and-easy platform for distributing indie games. I figured I'd take a look at it; it's a possible way to distribute Hadean Lands in the non-iOS world.

After a few hours of CSS massaging, I now have three of my old IF games posted:

Shade and S&W have donation buttons on them. I've never tried that before; we'll see how it does.

Tagged , , , , , , | Leave a comment

Zarfplan: June is getting there

Happy Canada Day (and pretend I said that in French). 82 out of 90 rooms complete.

I'm not really measuring progress in rooms any more. There were only a few days this month that I'd mark as "wrote some rooms". June was mostly spent on underlying mechanisms which are not located in specific rooms; they're spread through the game. I don't want to get spoilery at this late date, but I have implemented large swaths of code for:

  • dragons
  • human figures
  • shadows
  • doors that change state
  • progressive starting conditions
  • ritual environments
  • looking through magical lenses at all sorts of things
  • the alternative to sheets of paper
  • the problem of trying to create two doses of some potion when I've only implemented one
  • a cigarette lighter

The cigarette lighter was a late addition. Some rituals require you to set stuff on fire. There's a couple of fire sources in the game, and you can light a bit of wood and carry that around, so it's all workable. But carrying around flaming bits of wood turned out to be annoying. They burn out. You have to get more. It felt like an imposition. So yesterday morning I said "Why doesn't this chem lab have handy butane lighters, anyhow? Real labs do."

(I don't call it a "butane lighter", or a "cigarette lighter" either, but a pocket flame source is a pocket flame source. Perhaps you have fond memories of So Far.)

So I can't put the nail in the room-list this month, but I have checked off lots of the game's remaining tasks. I am still fairly confident that I will have a complete, testable game at the end of July. That could slip partway into August, because every task list has a "last 90%" that trails off into infinity. But the game is filling out fast, and it feels like I finished half of the remaining job last month.

I am excited. And nervous.

Again, there's a chunk of work to do after the "complete game" milestone. I'll need to polish the iOS interface and build its eccentricities. (I'm thinking a tappable encyclopedia of rituals, which updates as you discover them. That will save a lot of "RECALL TARNISH RITUAL" commands. And then there's the tappable map, of course.) So August at least is scheduled for that stuff. But I will have beta-test reports coming in as I do the iOS work, so I can parallelize.

Other June news:

For the first anniversary of Seltani, I posted a little puzzle Age called Salvanas. (That link will take you straight into the game world, although you'll have to sign in to solve everything.) No story, just a collection of Myst-style puzzles -- only in text, of course. Statistics indicate that only seven people have completed it to date! Surely this can be improved.

I also got my butt in gear and posted the source code for nearly all of my Inform games. I've always had the source for Hunter, Shade, and Heliopause on my web site; I've now added Dreamhold, Spider and Web, So Far, and several others. (All are under a "for educational/academic interest" license rather than an open-source license.) If you're curious about Inform 7 source code -- or Inform 6, or actually Inform 5 for the oldest ones -- dive on in.

I've been taking a look at new distribution platforms. If you saw Shade on itch.io for pay-what-you-want, would you pay a dollar? I could set that up. There's also the Humble Store, although that's got an application process and their developer FAQ is a bit thin.

And finally, the 2014 Interactive Fiction Competition is open! Gaze in awe at the brand-new web site, built and run by our blog-host Jmac. Sign-ups and prize donations are now being accepted.

See you at the end of July. With a little luck, I will be into the final stage of development by then.

Posted in Zarfplan | Tagged , , , , , , | Leave a comment

Old Zarf code

In a recent blog post, I wrote: "Maybe we'll even make more of a swing towards releasing game source code."

That thought stuck with me. I asked myself why I haven't posted the source code for all my classic IF games.

Some, I have. I posted source for Hunter in Darkness, Shade, and Heliopause because I thought other game authors might be interested in the techniques. But the larger games (Dreamhold, So Far, Spider and Web) have never had public source releases.

Why not? I didn't put it in words, but roughly: players should experience the game, not the software. If there are secrets, they should be ferreted out by people playing the game, not people browsing the source.

Of course there are Z-code decompiling tools, so I can't truly enforce this. Nor would I want to go down the DRM/obfuscation road to stop people from prying. That would just be a huge waste of my time. But if people wanted to pry into the technology, I wanted them to have to expend some effort. That friction matched my feelings about the right way to play the game.

Only I don't feel that way any more. I can't remember why I ever gave a snort.

Oh, I suppose I do a little. When a game is freshly released and players attack it en masse, the idea still applies -- I want the group experience to be about the game. But a year later? It's meaningless. And some of these games are fifteen years old, or older.

So yeah. It's time to knock that habit over. Here are some source links:

The I5/I6 games are tar.gz files, because for each I had to pack several source files together with the hacked library code that I used. The I7 games are directly readable as (syntax-colored) HTML.

All of these can be compiled with Inform 5, Inform 6, or Inform 7. The exception is Delightful Wallpaper, which was built with a 2006 version of I7 that's no longer available from the web site. I'd have to update the source to recompile it.

I have not used an open-source license. The games all say what Shade has always said: "This source code is provided for personal, educational use only." You can read it, and copy the programming techniques, but you can't make derivative games. (That is: my game text is copyrighted and I intend to keep hold of it.)

(Academic writing about my games is of course fine. That's fair use in the old-fashioned sense.)

(Fanfic -- riffing on the story or characters while using original text -- is another barrel of cephalopods. I figure I'm in the same position there as any other writer. You've always been able to read my story text, as part of the game, and my source release doesn't change that.)

Hadean Lands is an interesting question. I'm going to charge money for that one; it changes the equation. I guess I'll wait a year after release, and decide whether I feel like doing a source release then? Feels right.

(One of the HL Kickstarter rewards was the source code as a printed volume. I won't wait a year on that, obviously. But that was a limited reward, and will only be distributed on paper, not online; so I'm leaving it out of this discussion.)

Tagged , , , , , , , , | 4 Comments

Zarfplan: May report, counting down

Last month: 45 out of 86 rooms complete. This month: 65 out of 89 rooms complete. I did twenty rooms in the past month. The total grew because I decided to split one room in half, and then added two tiny closets.

This covers most of "chapter 1" of the game. In exploring this far, the player can reach 66 rooms and nearly all of the rituals of the game. (It's the tool-collection stage of the story.) Figuring out how the tools fit together is "chapter 2", and that's how you reach the last 23 rooms -- the tricky ones.

It's not all about reaching rooms. There's a lot of... unlocking cabinets? Okay, cabinets aren't much different from rooms. No, the fun of the game (I hope) is in trying to reach certain locations with certain items. It's fairly easy to enter room X if you use up resource R, but to bring resource R into room X is harder. That sort of thing is "chapter 3".

So the game will involve a lot of backtracking. (Yes, I've implemented a "go to room X" command.) This is why I can't just say "I will implement 24 more rooms and be finished." I will probably implement 20-ish rooms in June, but there are several crucial rituals which occur in existing rooms, and I've been saving those for the end. July is for those.

I still expect to move into testing at the end of July.

Then I have to draw a map, polish the iOS interpreter, and work on other presentation issues. But hopefully I can do that in parallel with testing.

Other news...

The new Inform 7 release arrived on May 7th. People leapt on it with gusto. It's very nice. I've decided I'm not going to shift HL development to it, though. It has no features that I need, and while it's faster in some ways, it's slower in others. Plus -- the time factor. I could easily blow a couple of months updating all my code and validating that it all works the way I expect in the new system. That would be a bad use of my time at this point. So I'll stick to the compiler I've been using.

I have been playing around with an in-game debugger for Inform 6 games. (Built into the Glulxe interpreter, actually.) This is not very useful for I7 games, because it only tells you about the fiddly I6 internals. But it's already helped diagnose a few fiddly bugs. See this source branch and this file if you're interested.

The one-year anniversary of Seltani is coming up soon. I can't let that slip by unobserved, so I'm cooking up a small set of puzzle Ages. Should be fun.

I went to Balticon! It was a fine (working) vacation. (I didn't implement any rooms while away, but I did implement two cabinets.) There was no Lost Pig, but I took part in a handful of panels about IF, narrative game design, and so on. All went well. (Okay, three of them went well. The one on mobile app development fell kind of flat. Next time, I'm sticking to narrative/game topics.)

Speaking of conventions, BostonFIG is coming up again in September. The Boston IF group plans to host IF events there, like we did last year, but we haven't gotten down to specifics yet.

I briefly considered demoing Hadean Lands at FIG. However, friendly voices (thank you jscott) pointed out that it would be tacky to demo the game in public before my backers have seen it. True! So I'm thinking about other game ideas I might whip together by September. The entry deadline is June 20th, so I'd have to whip rapidly, but it might happen...

See you in a month, with -- I hope -- the last room-count progress report.

Posted in Zarfplan | Tagged , , , , | Leave a comment

Purposes of archiving

This was a big week for IF events -- Spring Thing ended and ShuffleComp voting started. There were unexpected wrinkles in both of them, but I want to discuss the less dramatic one.

ShuffleComp is a music-themed game-jam-like event. I won't do the whole spiel; basically you get a song list and you're supposed to write a short game inspired by one of the songs. I didn't enter, but Jmac did, and he got all electrified about the idea of using Seltani. (Which is... do you read this blog? It's my multiplayer text Myst MUD project from last year.)

So Jmac implemented his idea, and that was great until he re-read the rules and saw:

The only restriction on platforms is that the game you submit must be playable as-is, not reliant on being hosted on a specific server or website. (This doesn't forbid hosting elsewhere - but if your game breaks if hosted on the IF Archive or played offline, that's a problem.)

Our topic for today is: why is the IF Archive, and how does that role change as IF changes?

(Spoiler: I do not have tidy answers. Best I can do is pare the questions into neat slices.)

(Footnote: The ShuffleComp organizer wound up disqualifying Jmac's game, with apologies all round and no ill will. Jmac has posted his game link on his own web site. You should jump into Seltani and try it.)


That ShuffleComp rule implies (and supports) a particular view of how games are to be managed. People write games; the organizer collects them; the organizer posts them as a big zip file; players download them and play them; the Archive saves them forever. There may be additional affordances for online play, but the big zip file is fundamental.

This set of assumptions is neither universal nor arbitrary. Various events and competitions in the IF world have different rules and models. But they generally represent the general consensus agreements of the IF community, which include "long-term archiving is good" and "players should be able to save playable copies of games".

...Except of course "the IF community" covers a lot more ground than it used to. The IF Archive accepts Twine games, but the Twine community has no general consensus that all their games should be uploaded to the Archive. (Some authors do, the majority don't.) There are hosting sites for Twine games (e.g. philome.la) but I don't know if they are operated with the same assumptions of long-term archiving.

These are technical issues as well as cultural issues. Or, I should say, cultural issues define technical issues. IF games in my world can nearly always be distributed as simple files -- one game, one file. Why? Because I wanted a way for people to upload IF games with graphics to the IF Archive! A single-file format fit the way we did things in the 90s, so I wrote up the Blorb spec. That let us keep doing things that way. But Twine came out of a different community.

(Okay, Twine came from Chris Klimas who was also in our community in the 90s. Nonetheless -- different goals, different needs.)

Obviously, Seltani also breaks the one-downloadable-file assumption. Let's not get into the question of whether Jmac's game needed to be built in Seltani. Assume that in the future, more IF will come along that undermines our archiving assumptions. We can imagine many possible reasons:

  • Inherently multiplayer games
  • Games that draw on real-time Internet data (Twitter, current news headlines, etc)
  • ARG-style games that are hosted on social media services for reasons of authenticity
  • "Living" games, where only one "live" copy exists and is passed from player to player
  • Games built in proprietary web services
  • Commercial games, where the author does not want free copies distributed
  • Games that run afoul of parochial laws
  • ...?

These are not hypotheticals in the IF world. Consider Blueful, Winterstrike, Naked Shades, the whole Versu story, etc.

The question is, how do we support our desire to save stuff without stifling or rejecting IF in these categories?


Archiving covers many needs, so let's split that up as well.

  • Long-term preservation: you want to play a game years after the original web site has vanished.
  • Short-term offline use: you want to download a game and play it without direct Internet access.
  • Medium-term reference: you are writing a web page about IF games (i.e. your games, or a specific competition) and you want to link to the games without hosting your own copies.
  • Discoverability: having all games on the same web site makes it easier to find things.
  • Academic study: you want to learn how a game was constructed.

We should note that the IF community (and IF Archive) are not equally interested in all of these things. The Archive is famously terrible for search -- or it was, until IFDB came along. (And IFDB can index games anywhere, so it does not directly boost the "all games on the same server" goal.)

Also, while we're fans of archiving games, there's no broad agreement to archive source code. Future academics may be more interested in source files than in game files, but most game authors don't upload it. (I have posted source for some of my games, but on my web site rather than the Archive.)

(Ironically, Twine is more accessible in this way, because Twine games are constructed in Javascript. They always contain their own source.)

Here, too, culture influences goals. And vice versa. It's not a stretch to say that the IF community-as-we-know-it is the Archive; we're the people who have this shared history. But also: by clinging to this shared history, we are conservative. (In all senses.) We are biased against completely new solutions, because they don't fit our models.

So we come back to the topic: how do we proceed?

The immediate answer is, as usual, save something. Save some files. Seltani has an export facility, so you can get the "source code" of your Age. It's not playable (since I never got around to an import facility) but it may make an academic happy someday.

Besides, I will write that import facility someday. Then it will be easier to try out Seltani worlds offline. Not easy, because the software is a hassle to set up -- but if my server dies someday, somebody else could reinstate some part of it.

This demonstrates the next answer, which is that if you're designing an IF system... think about this stuff. There are no requirements, but there are questions. Does it make sense to export source? Does it make sense to build a single-file package of a game? Can you document your format? (You've already thought about whether you can be open-source; that question hovers around every software design project.)

I will say, from the perspective of having done this for twenty years -- the history is important. I can talk about the games I wrote in 1995 and people can play them. Twine was invented five years ago and didn't start to boom for a couple of years after that. In 2030, the early history of Twine will be important! People will want to know what was going down! That history is part of what you are building today; don't neglect it.

Okay end of lecture.

I expect that IF events will continue to say either "must be archivable" (like ShuffleComp) or "is your game archivable?" (like IFComp). All the reasons above apply. Maybe we'll even make more of a swing towards releasing game source code.

I encourage people to chime in on this. Which of the above goals of archiving are important to you? Or did I miss some? What games have come out that slid past the IF community because they didn't fit our way of thinking?


(See also previous post: Everything I know about digital preservation.)

Tagged , , , , | 6 Comments

Inform 7 update

Graham Nelson has released a new version of Inform 7, the first in over three years.

This release is a major reform of a now-mature language which is widely used, and it has been over three years in the making. Text handling is better, Inform can now generate adaptive grammar, there's real number support, and a new Public Library of extensions is being introduced. There are significant improvements in the user interface for Mac OS X.

-- the very short form of the very long release notes

Also, the app's ancient-mosaic visual theme has been replaced with a stylish modern subway-map motif. Next thing you know, IF will be considered a 21st-century gig, eh?

My big contribution was the General Index of the documentation. This is a rewrite of the unofficial index I did a few years ago. Finding stuff in the documentation has been a perennial complaint about I7, and I hope this goes some way to fill the gap.

To repeat a word of warning: "This will be a disruptive release." Every major release of I7 has changed enough under the surface to warrant caution, and this one is a bigger shift than most. If you load an existing game project into the new I7, it is not guaranteed to compile -- and if it does build, it is not guaranteed to behave exactly the same. Test carefully, and if you prefer stability, keep your 2010 version of Inform (release 6G60) around. (It should be safe to keep both installed on the same machine.)

To be clear, we expect most old I7 code to still build with the new compiler. The major exceptions are if you used deprecated phrases (such as procedural rules), or if you used an extension that has serious I6 hackery under the covers. Such extensions will have to be updated for the new release. Many have been already; check the new Extensions Library.

(In case you're curious, Hadean Lands will remain a 6G60 project. I've got 25000 lines of working code, and I am not going to risk subtle breakages at this stage.) (Yes, I wrote a lot of regression tests. They're geared towards finding mistakes in my code, not changes in the underlying system.)

Congratulations to Graham and the rest of the I7 team for getting this wrapped up. To everyone else -- enjoy the new toys.

Tagged , , | Leave a comment

Zarfplan: April only it still feels like March out there

Seriously, it was 45 out today. Now it's rainy, but that's good news because it's a warm humid front coming in and we should get a May that feels like April, at least.

It's weird looking back at earlier updates. Last month I was pleased because the tutorial was finally done. In February I was pleased because I had finally started writing some rooms. Now the tutorial feels like it's ages past, and I have 45 rooms nailed down. That's 45 out of 86 total. We are past the halfway point, area-wise.

(Yes, I originally estimated 82 rooms, but a few more tiny ones have slipped in.)

So I did... (quick subtraction)... 23 rooms in April. Plus all the associated furniture and recipes and puzzle elements found in those rooms. Also I hammered in some optimizations that speed up large I7 games considerably (see here if you're interested), and added one of the two special viewing tools. And fixed a typo that's been staring me in the face for about a year and a half.

I have been informed that my last couple of update posts sounded disconsolate and defensive. (Not that you folks aren't supportive.) I really didn't mean them that way! This is the home stretch and I have been accelerating down it. I am aiming to do twenty rooms per month for May and June, and that will carry me to the end of HL's physical area. I'm excited.

The game will not be absolutely done at the end of the 86th room, because there is a final puzzle and some final scenes. (Associated with an existing room, but I will write them last because that's how I work.) Throw in some time for writing tests, and I can reasonably say that this thing will move into testing at the end of July. In fact this is so reasonable that I have now said it to you folks, out loud.

Wacky, huh?

The other news of the day was supposed to be the new Inform 7 release. This has slid a bit but should be out in a few days (see this post). I did a bit of final index-polishing last week, so you have that to look forward to.

Onward.

Posted in Zarfplan | Tagged , , , , | Leave a comment

Zarfplan: March update

I will keep this short, because I just noticed that I have to run to the Boston IF meetup soon, and I want to get this post out before then. (A late-night blog post would wind up dated "April 1", and do any of us need that additional cognitive stress? I think not.)

In the past month I have completed thirteen rooms, with all the objects, descriptions, recipes, and messages that appear therein. As usual, some of these rooms are fairly bare (corridors) and others are crowded with stuff.

I have also completed the tutorial -- which took nearly two weeks on its own. The tutorial is intended to hold your hand through the first room. That's basically the content of the teaser game. It requires more code than you might expect. It's done, though.

I have mapped out the "environmental spell component" that I mentioned last month, and started coding it up. That's not a huge task; it was just a corner of planning that I kept sweeping around, and now I've gotten to it.

I did not put in any time on the Edifice Gumshoe project idea. I still have hopes for it, but it wasn't gonna happen this month.

I have finished up some infrastructure work (bug fixes and feature requests for the Inform 6 compiler). These will someday enable bigger and better IF games. They may enable Hadean Lands to be more memory-efficient, but that wasn't the primary goal -- I just wanted to keep the track clear ahead, as it were.

Speaking of bigger and better IF: Graham Nelson has publicly admitted to a planned release date of April 30 for the next release of Inform 7. This is very exciting; the current release of I7 is three years old and the bug list has been building up.

One of the lines in that post mentions "a full index for the documentation." I cheerfully claim responsibility for that one. It's a complete rewrite and update of my old I7 index page. I worked very hard on this in January and February of 2013. Soon it will be out in the world, fully integrated with the I7 IDE.

Am I going to update HL to use the new version of I7? I haven't decided yet. I'll give it a shot. But I've got a lot of code written for the current version. Even if it all compiles with the new version (which it might not; I use a lot of low-level hacks) it might not work exactly the same. And I'd rather not spend a lot of time re-testing existing code, when I could be writing new code. So we'll see.

Upcoming Zarf events:

I will be at the MassTLC Made In MA party on April 10, demoing Seltani. (Also Meanwhile, Dreamhold, and the rest of the iOS demo pack.)

I will be at Balticon in May. I will be on some kind of IF-related panel but I don't know the details yet. (There just might be another Lost Pig run.)

I have made plans to attend Dragoncon for the first time. As usual, watch for the hideous plaid jacket.

And that's it for the month, I guess. See you at the end of April for... more rooms. Probably a lot more rooms, now that the tutorial is all hammered in.

Posted in Zarfplan | Tagged , , , , | Leave a comment

Zarfplan: February was kind of nuts

I suppose you want the room count, don't you. I will give it to you. When? Now, I should think. You look forward to it, do you? I think you do. ...Nine rooms, I got done this month. All clues, all descriptions, all scenery, all actions handled. I can play through those nine rooms and it is a solid, playable IF game.

This is most of what I call "chapter 0" in my notes. After another couple of puzzles, the player transitions to "chapter 1". That's where most of the game opens up, at least a little bit.

But how many rooms are there in this game? I hear you cry. Okay, that's a fair question. There are 82. So you might conclude that I am 11% done with this thing and have eight months of work remaining. And that's... not a completely terrible estimate.

I don't mean that it's my estimate. Or that it's accurate. Rather, I guess, that the possible errors fall in both directions. So I can't say it's definitely too long or too short.

Not all rooms are created equal. Laboratories and storage rooms are packed with exciting objects. Hallways are fairly boring. (They have just a couple of exciting objects that I moved from the storage rooms to even things out.) Maybe 25% of the rooms are hallway. They go by quickly.

Some of this month was spent constructing scenery classes which I will reuse throughout the game. That will save time later. On the other hand, I didn't have a chance to start the tutorial, which will run throughout the actions in the first room and then mostly drop out. A tutorial is hard work and may chew up a couple of weeks of March on its own.

I still haven't tackled the "monocle" plan (changing how some bits of paper are presented), nor one of the environmental spell components. (Neither appears until "chapter 1".) There's some planning to do there.

Some of this month was spent profiling the HL code, just to see if there were any horrible inefficiencies. Of course, there were. So I dug into a little low-level hackwork to speed up certain I7 activities. I will have to do more of this in the future.

So I add all those factors up and shrug. I got a lot of implementation done in February. It was a good month.

What else happened in February? I worked some on Project Edifice Gumshoe. I got as far as an iPad prototype, I showed it to people... total flop. The puzzle mechanic is simply opaque to players. Yay prototyping! I have some ideas for starting over. Boo starting over! Depressing even when it's necessary. But the code from the prototype will be recycled into something. I got clever with iOS animation transitions, and the result is very tactile.

I helped out with an effort to update the Z-machine specification documents. This is not strictly in my wheelhouse -- Hadean Lands runs on Glulx, my successor to the Z-machine. But David Fillmore decided to clean up a bunch of unfinished editing and error-correction from the old days... by which I mean 1997... and that turned into a bunch of online discussion. Plus I have the keys to the web site. So I put in some time on that.

There was also a proposal about adding text captions to IF cover art, and in general to images in IF data files. (For accessibility, like alt tags on web images.) This is in my wheelhouse; I proposed the IF data file spec so I get to organize updates to it. Then we looked at the IF Babel site (covering bibliographic information, including cover art) and realized that nobody was in charge of it; it's just been sitting untouched on the Archive since 2006. So I cranked up a mailing list and got that side moving. (The Blorb side is awaiting comment; I'll add it to the site next week.)

And today I dug into a completely tedious idea about adding more boolean flags to the Inform 6 object structure... which I thought I implemented in '98... but it turned out I forgot. Result: a completely tedious patch to the I6 compiler, which works great. (Unit test!) Only my clever optimization idea of '06 didn't take this into account, so it breaks when you run it. I'll have to update the Glulx spec too.

Will Hadean Lands benefit from more boolean flags? Probably not! Because even if I get the interpreter fixed, I7 doesn't know to take advantage of it! Yes, IF is still software engineering: messy. But I move my parts forward one step at a time.

And I played the new RealMyst update, and some of the Dishonored DLC from last year. Gotta finish that this weekend.

Posted in Zarfplan | Tagged , , , , , , | Leave a comment

Zarfplan: Welcome to the new age

(I have that song stuck in my head, sorry about that.)

It is the end of January; it's been six weeks since my last update. Merry 2014! The holidays are over and I ate a lot of cookies. You've probably forgotten what my voice sounds like. Welcome back. Or welcome me back, I'm not sure which way it runs.

January was a weird month for Hadean Lands development. I said it would be "story bits". What does that mean?

Way back when I was sketching out this storyline, I outlined a set of characters who would appear throughout the game. I sketched out their roles, and how they would relate to each other and to you. One appears at the very end of the teaser, if you recall back that far:

You can see a figure caught behind the fracture. You peer closer in the gloom... That's Lieutenant Anderes, apparently frozen mid-step. What's she doing down here? And why is she carrying a crumpled alchemical recipe?

My reputation is for not writing games with a lot of interacting characters. It's just not my thing. I suspect it will never be my thing, but I keep trying to put them in, and they keep winding up... heavily constrained. The interrogator in Spider and Web only permits you to respond "yes" or "no". The NPC in Dreamhold is only seen in flashbacks.

I've gone through the same cycle with Hadean Lands. As you see, the character above is "frozen" in a splinter of cracked space-time. Not exactly Floyd the chatty robot. Don't get me wrong: these characters will be woven into the story progression. Their positions and situations will not be fixed throughout the game. I have some ideas on non-traditional interactivity, which I think will be nifty.

On the other hand, they're not as deeply integrated with the puzzle-based storyline as I'd like. (Some critics would say Dreamhold had the same problem.) I've had this outline sitting in my notes for... way too long... and this month I just sat down and crunched out the text. If I had written it in parallel with the past three years of puzzles and map code, it might have come out smoother. (If I hadn't seen it as scary Character Writing to be procrastinated... oh well. Like I said, it's not my thing.)

Anyway, it's done. I now have a text file with N characters, described differently in M stages of the game, with X variations for branching possibilities. It's not a big text file, but it covers all of the game. And that's a task checked off. Victory!

As you can tell, I have reservations about this stuff. I had reservations about the flashbacks in Dreamhold too. Should I let that slow me down? No; I should get on with writing the game.

The good news is that this text was the last scary part. Now I have the map structure, and the puzzle mechanics, and the story bits, so I can dive into my usual IF-building plan: start at the beginning, implement until the end.

Thus: tomorrow, I will sit down and re-implement the beginning of the teaser. (It's changed somewhat, so I can't just copy the code over.) I'll start setting up the first room, just as the player will see it. I'll build all the scenery. Then I'll hook in that first ritual. Then I'll move on to the second room...

I still can't say how long this process will take. I won't finish it in a month. But it's the last stage of implementation. When I reach the last room and the last puzzle, I will have a playable draft of Hadean Lands. Scary, eh?

Quick note about related IF work:

  • I've updated my IF test tool to handle "include" sequences. (This will become critical for me, as HL proceeds.) It can also now test the contents of the status line. (Totally unnecessary for me, but I've been meaning to add that feature. Somebody must want it.)
  • I have planned out a wacky little iPad text game, which currently bears the code name "Edifice Gumshoe". (Inelegant, I know.) I've started implementing it, in spare hours. I'd like to ship it in the next couple of months. Just so that the world doesn't forget my name.
  • I'm making tentative plans to attend Balticon again; I might even appear on some panels about interactive narrative.
  • I've hung up a Heavenly Shining Beacon of Hope in my computer room. This has nothing to do with IF. I just like it.

I'll see you at the end of February. I'll tell you how many rooms I implemented in a month -- and with that, I might even have an estimate for finishing the thing.

Posted in Zarfplan | Tagged , , , , | 3 Comments

Arisia: IF and gaming panels

I spent this past weekend at Arisia, an SF convention. Like many conventions, it's diversified its topics to SF (and fantasy) in comics, TV, movies, and gaming. So I wound up at a whole series of nifty panel discussions that mentioned interactive fiction.

Okay, it was the deadly trifecta of gaming discussions: Are games literature? Are games art? And what the hell are games anyhow? But the moderators all ditched the cliche questions and got on to interesting stuff.

(I was not on the panels -- just sitting in the audience. I got to throw in some comments, though.)

I do not have transcripts of these. I tried to take notes, but at some point in each panel I got caught up in the discussion and spent my time thinking of comments rather than writing down what people were saying. So you get a rather disjointed view of all of this. Sorry! I think it's worth copying my jottings anyhow.

Quotes are guaranteed not accurate. I attempted to get down what I thought people meant; errors are mine. I've also thrown in some of my responses that I wasn't able to get out loud in the panel. Editor's privilege.

Games as Literature

Emily Lewis, John McDaid, James Meikle, Mark Waks / Justin du Coeur, Alan Wexelblat (mod)

The moderator started off by declaring that the panel was about multi-player and other collaborative game forms. (Single-player games are equally literary, but have been discussed plenty elsewhere.)

Introductions:

  • JMcD: Wrote an old-school hypertext novel: Uncle Buddy's Phantom Funhouse
  • EL: Worked on a group game/educational course, Operation LAPIS.
  • JMk: Designs roguelikes.
  • JdC: Writes LARPs.
  • AW: I missed what he does, other than "gamer".

JdC: When I create a LARP, I am writing the first half of a novel.

JMcD: The notions of character and story arc are baked into traditional literature -- but this is a bug, not a feature. They come from the affordances of written-down story as it evolved out of oral literature. Interactive fiction is not bound to them.

JMk: (Computer) MMOs are not literature; they're history or politics. (Just like history textbooks are not literature.) They're history of a fictional world, but this is not the same as fiction, because all the actors are real people wearing masks. (The goals are fictional, the struggles are not.)

AW: A game has failure conditions, literature does not.

JdC disagrees: LARPs are designed to not have failure conditions. Tragedies in the LARP story should be successes for the players, because the players' goal is to be true to their characters. Also, MMOs mostly don't have failure states, only short- and long-term setbacks.

(I also disagree, for a different reason: I simply think that literature may or may not have failure conditions. That may be a good criterion for deciding what a game is, but it's orthogonal to literature.)

JdC describes a combat system for an Oz LARP: Everybody has a combat strength, represented by a number. In combat, you compare your strength to the opponent, and the stronger takes the weaker captive. This is what combat situations look like in the Oz books, so that's how the game should behave. (Why the abstraction of numbers? Because it determines a result simply, without distracting players from the scene. Once the outcome is known, players can concentrate on role-playing to get there.)

JdC: A work is literary if the author intends it as literature.

JMcD: No, it's about reception. A work is literary if the reader (player) takes it as literature. (Describes a reader who didn't realize that Uncle Buddy was fiction; thought it was notes about an actual science fiction author. Eventually made that leap to reading it as a story rather than history.)

Some discussion of whether reality (real life) is vastly more boring than literature, or whether reality is the biggest, most exciting story possible. (Clearly these are Great Truths, since they're opposite and both true.) MMOs (think Eve Online) have long boring stretches, but interesting moments of story come out of them.

EL: What if you blend reality and game? (Leads to discussion of Ingress, an augmented-reality game.)

AW: Ingress is a terrible game, but a really interesting experiment. (Why terrible? Notes that Ingress has no representation of other players, much less any way to interact with them.) Augmented reality calls into question who the author of a story is.

JMk: The MMOs that seem most story-heavy are the ones where players compete for resources in a meaningful way. (Again, Eve. Players' time is always the base resource.) Competition is necessary for interesting cooperation.

EL: Is a work literary because players can follow a story, or because players can invent their own story, or what?

JMk: "Literature" is not a binary -- a work is literary to some greater or lesser degree. (General agreement.)

JdC, EL: The literary result of a collaborative game is the "war stories" that players tell afterwards. (It's an oral tradition, in the end.) The "literature" of Eve is not the day-by-day play, but the narratives in people's heads after some dramatic event. Therefore, game designers can't just design an experience; they must consider how players will remember the experience.

That's No Game

Izzy Peskowitz, Yitzy Abramowitz, Maddy Myers (mod)

I didn't get detailed notes on this one. It was a spirited discussion on the various kinds of games that get the "not a game" label, which seem to be heavily weighted towards interactive narrative: Gone Home, Dear Esther, The Walking Dead, choice-based IF, parser IF.

Everyone in the room was happy to adopt a broad definition of "game", so the discussion circled around why these things are contentious. Audience mismatch? Bad marketing? What expectation of a gamer is not being satisfied?

Maybe the whole question will subside as IF becomes more mainstream. Once "games like Gone Home" are a familiar category on Steam, players won't be disconcerted by them.

Much talk about when player choice counts as (or feels like) "real" choice. The panelists seemed to be evaluating everything by the ending -- a player choice which does not affect the final scene "doesn't count". I brought up Emily Short's notion of reflective choice (as a player, you can decide what you think of an event even if the game doesn't recognize that).

Also, games like Depression Quest convey meaning by how they offer choice -- meaning from game mechanics. Also, in literature, we commonly agree that how the protagonist gets to the end is more important than what the end is.

A reductio ad absurdum: if you add a non-interactive cut scene to the very end of a game, does it invalidate all the choices the player made up to that point? I say no.

Much discussion on how these categorization questions are political. Gamers like a particular kind of game, and when an unfamiliar category shows up, they push back: this new thing might drive out the stuff I like! (I didn't have a chance to mention how this exact political reaction has been playing out in the IF community.)

Does it matter whether these things get labelled "games"? It sure does if you want to make money on Steam. But on the other hand, Maddy Myers talked about failing to describe Gone Home to non-gamers. Maybe she should have been trying to describe it as literature rather than as a game?

Games as Art

Christopher K. Davis (mod), Maddy Myers, Izzy Peskowitz, Brianna Wu, Frank Wu

Introductions:

  • BW: Producing Revolution 60, a choice-based graphical adventure (upcoming).
  • FW: Doing artwork for Revolution 60.
  • MM: Videogame critic and journalist.
  • IP: Gamer.
  • CKD: Gamer.

Again, I didn't get specific notes.

Everyone agrees that games are art, sure, no problem. BW says that everyone on her team is an artist -- the art people, the sound people, the programmers, it's all high-level creative work. (I think programming is "design" rather than "art", but so what, really.)

The spectre of Roger Ebert still hovers above us. (After his widely-reported "games are not art" post, Ebert tried some games, and declared that Flower was art. Interesting that his criterion seems to be the opposite of what we got from the previous panel; hardcore gamers might say that Flower is "not a game". Is Ebert just stuck in a games-vs-art dichotomy?)

Games and game-related art are big in the New York gallery scene. Pixel art, interactive installations, etc. The Museum of the Moving Image has an indie-game exhibition; even MoMA has fastidiously stepped over the line.

Tangential comment by MM on how Boston indie game devs are spooked by journalists. Promote yourself dammit! Talk to the media! (I am terrible at this. I got her business card.)

Interactivity in Fiction

Heather Albano, Erik Amundsen (mod), Max Gladstone, Forest Handford, Carolyn VanEseltine

Introductions:

  • HA: Author of Choice of Romance and other choice-based games. Lead writer on Codename Cygnus. Two self-published novels.
  • FH: Director of Firefly Arts Collective (local Burning-Man-style hacker/art group).
  • MG: Published two fantasy novels, then wrote Choice of the Deathless (choice-based game in the same setting).
  • CVE: Working on Revolution 60. Several parser IF games.
  • EA: Gamer, writer, poet.

MG: Second person is exciting to work in. It's unusual in written fiction (though not unknown, Stross etc). It adds a storyteller or narrator voice. (I humbly add my lecture on this subject from a few years back.)

FH: Interested in stories that bleed over into real life -- books with in-character web sites, etc. (I tend to call this "alternate reality fiction", which is not necessarily a game. Although interactivity bleeds in whenever the reader starts exploring and engaging.)

CVE: Planescape Torment had a powerful moment when the game turns and asks you what you think about the game events. (Again, "reflective choice".) Interested in player investment -- a game doesn't move forward without some player commitment.

HA: There's a big psychological need to be the narrator, particularly in kids, but to some extent for everybody.

EA: Look all those online "which foo are you" tests.

MG: The fun of constructing a character -- defining the narrator through accumulated choices.

CVE: But there's also IF where you have to commit to a character without knowing who it is. (Mentioned Spider&Web, unreliable narrator.)

MG: Interactive stories about redemption. You have no choice about doing something awful; your choices are about how you deal with it.

MG: I'm a fast writer, so I've been able to do novels "by the seat of my pants". But building Choice of the Deathless required a lot more planning. Had to learn to outline. (Not to map out events -- the sequence of events is fixed -- but to map out the various ways a player can approach them. Which NPCs are allies, rivals, friends, enemies, etc.)

CVE: IF can place the storytelling "camera" at a large distance (cut scenes) or close-up (moment-by-moment interactivity). There's no middle range. This is different from traditional fiction. Also, in IF you usually stick to one viewpoint (or maybe two), to keep the sense of engagement strong.

MG: Right -- in novels I like to jump between character viewpoints, because they see things (and each other) differently. CotD didn't do that.

HA: Constructing a story arc in a game and in a novel are the same technique. But static fiction has more techniques available. The "Choice of" game model doesn't have cut scenes at all; the camera is always close in, making immediate choices.

MG: All types of IF have inherent illusions. Myst has the illusion that you can travel anywhere, without barriers. ChoiceOf games have the illusion that any life course the player can imagine is available. (Of course in both cases there are strict boundaries, and the game designer works hard to draw the player's attention to targets inside them.)

EA: This is very different from table-top roleplaying, where the GM is expected to let the players go off on any crazy tangent, and improvise to keep up.

Much discussion on "railroading" in game design. Audience comment: Railroading in games is like exposition (infodumps) in novels. You have to do some. It gets a bad rap, but it's not per se evil -- it's just really noticeable when it's done badly.

I made my standard point about multi-level game design: unless you're writing a tiny/experimental art piece, your game is doing more than one thing at a time. It's not a tradeoff between railroading and agency, it's a tradeoff between short-term, medium-term, and long-term agency. As long as the player's attention is on the level with plenty of choice, the player won't feel railroaded at other levels.

HA: Yes, that's why the ChoiceOf model is a series of episodes.

CVE: Similarly, that's how Fallen London works -- if you're focussed on long-term stat goals, you're okay with the simplistic short-term grinding structure. (Well, up to a point.)

HA: Shared-world anthologies (Thieves' World, Bordertown, some of the Darkover canon) are interactive in a sense -- interactive among authors, rather than between audience and author. (Mention of Alternity, a collaborative journal fanfic game.)

MG: Fantasy Powers League, a collaborative/competitive online story game that he got into as a teenager.

Game Developer Women (Carolyn VanEseltine, Brianna Wu, Maddy Myers): I didn't attend this, but it apparently got into Twine and indie narrative games. Hopefully someone will report on that one.

Not a panel, but worth noting: A friend turned me on to Torchbearer, a recently-Kickstarted tabletop RPG. It describes itself as a "love letter to Basic D&D", but I'm seeing a link to old-school IF as well.

Why do I say this? Because, as my friend described it, Torchbearer's three core mechanics are:

  • The light timer (your torch burns down quickly)
  • The hunger timer (you have to eat regularly)
  • The inventory limit (you can only carry so much)

These are the three Zork/Adventure-era tropes that modern IF has comprehensively dumped. (Everyone bitches about mazes, but we acknowledge that a creative twist on the maze can be cool.) I'm keen to see a game constructed around them.

And those are my gaming notes from Arisia. I will be at Boskone next month, but Boskone tends to be more book-focussed. We'll see.

Tagged , , , , , | 8 Comments

Random historical "treasure"

Here's a thing I found in a box: the records of my solving Infocom games.

(click for bigger and larger)

Back when I was first playing these things, I would generate these transcripts. Not while I was solving them -- oh, what a waste of paper that would have been -- but when I finished. I'd start from the beginning and play through to the end, reeling out all my hard-won game expertise in one swoop.

Well, maybe not one swoop. You can see that one of the transcripts starts in the middle of Planetfall. Probably I came to the end of a ream of paper and had to feed in a new one.

This is fan-fold dot-matrix printout from an Apple 2. It was an Okidata printer. Microline model 92, I think?

I have no idea what to do with this stuff, other than put it back in a box. It doesn't encode anything interesting about my play experience, since I was aiming at a clean "speed run". I guess you could analyze my typos.

If I get sufficiently famous, I guess one day I can donate my papers to a literary foundation. Something to look forward to.

Tagged , , , , , | 1 Comment

Jason McIntosh is the new IFComp organizer!

I'd be coy about it, but the above title is what Stephen Granade posted, so I'll stick with it.

Stephen has been running IFComp since 1999. In that time... you know what, a recap of the IF world in the 21st century would be messy. Put it this way: stuff keeps changing. We all try to keep up. Stephen's patience and good humor have kept the Comp steady through all these years.

Now Stephen is stepping down to concentrate on his career as a serious rocket scientist. Jason McIntosh has volunteered to take over and helm the ship. Jmac needs no introduction here -- because it's his blog -- but you can poke at the links if you want.

2014 will hold the 20th IFComp, and I sincerely look forward to steering this institution SG has helmed since 1999, even while aware that I find myself with shoes of a certain magnitude to fill. A lot's changed over the last few years -- to say nothing of the last fifteen -- and I see the Comp as more important to the continuing development of text-based games than ever before, both as a body of work and as an increasingly diverse art form.

-- Jmac's comment on the announcement

Is he hinting at changes to come? Only the Shadow knows!

(I am not the Shadow.)

Tagged , , , | Leave a comment

Put your favorite new IF in the IFDB

If you’d like to see a text game released in 2013 nominated for the XYZZY Awards, you have a few days left to make sure that it has an entry in the IFDB while it’s still 2013.

The XYZZYs are trying something new this year: every nominee must have an IFDB entry. While a perhaps bit wobbly in its homegrown editing interface, the IFDB nevertheless allows anyone to edit its existing game entries, or create new ones. In particular, a game’s creators are not barred from creating or updating their own works’ IFDB entries.

I stress that games you’d like to make eligible via the IFDB needn’t adhere to the classic parser-based IF format. This month I myself have added IFDB entries for both a web-based hypertext game and a commercial game-book adaptation for tablets, both of which I hope to see among the 2013 nominees. The competition’s post on the subject goes into more detail on what is and isn’t acceptable, under the section “Interactive fiction” — though it allows that this style of play does find itself in a period of definitional transition at the moment.

Tagged , , | Leave a comment

Holiday gifts of Inform source

I shared the source of The Warbler’s Nest to GitHub last weekend, a project that took a couple of hours by one measure and nine months by another. I started getting the codebase ready for sharing last spring, shortly after giving an invited presentation about the game at MIT. I considered the event as good a capstone as any on the game’s active presence in my mind, and releasing the source struck me as appropriate epilogue. As it turned out, this preparation would end up perhaps the last personal project I picked up before a family crisis would occupy much of my attention until wintertime.[1] And when, things calmer, I happened across this MetaFilter thread asking about Inform source examples shortly after I received an email from a Warbler player pointing out an embarrassing typo in the story, I thought: Oh, right. And so GitHub.

Mere hours after announcing all this on Twitter and such, I would laugh out loud from the solid upstaging my little effort would receive next to a truly delightful surprise: Daniel Ravipinto announced a special 10-year-anniversary re-release of Slouching Towards Bedlam, an IFComp-winning masterpiece released by Star C. Foster and himself in 2003. Daniel recast the game into Inform 7 (which didn’t publicly exist ten years ago) as an exercise, and this in turn allowed him to easily publish a web page linking to both the downloadable game file and its source text. I sincerely recommend taking this opportunity to try the game if you haven’t already; I quite look forward to playing it through again, myself.

Casting around a bit, I find that Inform 7 source examples are not quite as scarce as I may have thought. Inform includes a facility for releasing nicely HTML-formatted source text alongside one’s game, and just because I somehow hadn’t noticed it before doesn’t mean nobody else did either. Two publicly available recipients of this treatment come to my mind immediately: Aaron Reed’s Sand-Dancer exhibits intentional beauty and readability at the source level, since it serves as the game slowly built between the covers of his Creating Interactive Fiction with Inform 7 (which we’ve written about before). On another extreme, Emily Short made available the source for Counterfeit Monkey, which proves as eye-wateringly vast as the game itself. I note that one of the headings on that index page bears the title “Volume 5 - The Repository of All Things Possible”, and it does not exactly exaggerate. (Naturally, while this source is also quite readable, you really should play the game before browsing through its laid-bare secrets.[2])

I cannot fail to point out that Zarf quietly posted the source to several of his games some time ago, as well, including both his more recent work and classics like Shade. (Search for the word source in-page after opening that link.)

Lastly, on the topic of GitHub, Dannii Willis created the Friends of Inform 7 group, which contains lots of language extensions from various authors, as well as the open-source repository of Victor Gijsbers’ utterly gonzo Kerkerkruip, a procedural, stats-heavy, permadeathy dungeon crawl in the roguelike tradition, implemented entirely as prose-driven IF.

I have no doubts that many other examples of shared full-game Inform source lurk in the grue-infested darkness. If you know of a non-trivial Inform-based work with source available, do feel free to link to it here with a comment.

Update: As Juhana notes in the comments, “games with source available are neatly tagged at IFDB”. Wow, that’s quite a few games, too. Well, this is why I write these things.


[1]: And yes, dear reader, that would explain why I’ve written so little on this blog this past year, though I’ve no complaint about once again leaving it over to Zarf’s project-EKG in my absence. I have reason to believe that 2014 will be different, but time will tell…

[2]: Earlier this year, I wrote implementation-focused reviews of Counterfeit Monkey and a few other XYZZY Award nominees.

Tagged , , , , | 4 Comments

Zarfplan: Mid-December

Yes, it's early. No, it's not the Ides of December yet. That's tomorrow. Good thought, though.

I said that I wanted to place the final rooms and cabinets. That's now complete. With all the locks, navigation, and goal-traversal that they required.

I also decided to implement a lot of bits of paper. You'll recall that over the past two months, I chose locations for all the "magic words and recipes" to be found in the game. (Physical objects were basically all nailed down by November.) This information would appear on sheets of paper that you'd collect as the game went on. The first such sheet appears in the HL teaser.

So I decided, what the hey, I'll implement all of those objects. Not their text -- I mostly haven't gotten to scenery descriptions yet. But I wanted to create the objects, place them in the game, and assign their effects: what rituals and formulae do you learn from reading each one? This is all scutwork; I have all this information in my notes, I just have to crank through them. It'll maybe take me one day. And then that'll be done.

Well, it's done. You want to know how many pieces of paper I wound up with? Forty-three, that's how many. I've spent the past five days on this. (Admittedly, mixed in with some of the more recalcitrant cabinets.)

I intended a play experience rather like Infocom's Enchanter: you explore an area, and every once in a while you find a piece of paper! New recipes! Yay!

Forty-three pieces of paper is not that joyful experience. It's more of a burden. It's "Argh, more paper, what have I done to deserve this?" It's a tornado in a sticky-note factory.

Something is going to have to give. I will need a new game mechanic or two -- some way of discovering information in a location that isn't "See paper, pick it up, read it." The game doesn't need to be any more complicated, but it definitely needs some more variety.

I am not short of options here. There's books; books are always fun. (But I'd have to chain them down, because otherwise players would be juggling twenty books in the inventory, which is zero fun.) (Bits of paper, I can discreetly vaporize after reading.) (Yes, there's a REMEMBER command which gives you access to everything you've read.)

There's the old memory-flashback gag. Walk into a room, remember a lesson... or maybe it happens when you touch an object. Too cliche? I'm not thrilled with it. Maybe I'll have a special monocle you can peer through. I know, Counterfeit Monkey did it, but...

Well, something will turn up.

It will not turn up in 2013. On vacation now. Cookies are planned. Videogames are purchased. (Videogames are already started, to be honest.)

This is not to say that I'm off hacking for the rest of the month. I've done a draft of my other iOS text game idea, but it doesn't exactly work as-is, so that will get some more pounding. I will probably mess around with some Seltani features.

My next update will be at the end of January. Plan for that month: story bits.

Posted in Zarfplan | Tagged , , , | 4 Comments

Zarfplan: November

I am happy to report that all the items are placed. Every line in my recipe chart has a "found in" notation! ...I'm telling this out of order.

The first half of the month, I caught up on the implementation that I planned last month. That is, I created the ten new rooms (plus some cabinets) that all of October's placements required. And the navigation between them. And the locks on their doors, where appropriate. And the goal-tracking to open the locks.

In the second half of November, I decided all the placements for the latter half of the game. (Two "chapters", but as I said, the chapter numbers do not reflect either game pacing or numbers of objects.) The map grew another couple of rooms, and several more locked cabinets, but I have not yet implemented these.

You might think that the first half of the month was difficult coding work, and the second half was lazily scribbling in locations on a chart. Ha. No. Code is easy. Decisions are difficult.

Every decision is wading into a hazy cloud of "this will probably be okay" and throwing away 99% of it. Most of the possibilities that I discard are fine. Some look fine, but will trip me up later. I have to make sure that the one I keep doesn't trip me up. And then I have to make sure that I like the pacing -- where it shows up in the player's run-through. Or rather, the range in which it might show up. Too soon? Too much confusion early on? Might the player run into the hard-but-correct solution to a puzzle before the easy-red-herring solution? That would be embarrassing.

And then I do it again, and again. I've been doing it all day. My brain hurts.

(Yeah, I'm writing this on the evening of Dec 1st. Procrastination struck after Thanksgiving. I caught up.)

So, okay. I have (nearly) hit a serious milestone, and I am declaring a (sort of) vacation month. My brain needs to stop hurting for a while.

In December I will implement those last rooms and cabinets, so that I can say I've actually placed everything in the game. But I'm not going to work on HL otherwise. I will do holiday things. I will bake a lot of cookies. I may play the latest Bioshock.

I have a sneaky idea for another iOS text game, which I might try to crank out by the end of the year...

Posted in Zarfplan | Tagged , , , | 2 Comments