Share this project


Share this project

I'm going to write and sell a full-length text adventure for iOS (iPhone, iPad, iPod Touch). The game framework will be open source.
I created a full-length puzzle text adventure. (Available for Mac, Windows, Linux, and iOS.)
I created a full-length puzzle text adventure. (Available for Mac, Windows, Linux, and iOS.)
713 backers pledged $31,337 to help bring this project to life.

Recent updates

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.


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.

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.

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.



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.