iOS Interpreter milestone

Thursday, April 19, 2012

After only a couple extra weeks of work (and non-work -- oh, PAX, you great distraction) I am declaring my iOS IF interpreter ready for beta-testing.

Again, this is not Hadean Lands. The first game I will distribute this way will be The Dreamhold, a tutorial IF game. It will be a free download. (Really, The Dreamhold is already a free download -- you can play it on my web site or in iPhone Frotz. I will be packaging it as a standalone IF app with my new interpreter code.)

As I said, I'm doing this for buzz, and to get feedback on the UI design. But as a bonus, this release of The Dreamhold will contain a brand-new dynamic map. I figure that mobile IF players don't want to draw their own maps. (I mapped all the IF I played when I was a kid... stacks of scrap paper all over the computer room. When you're standing on the subway in rush hour, it's not so simple.) So the game will track your progress, and fill in a map for you as you play.

I hope testing won't run too long, and The Dreamhold will be out by the end of April. (I know, last update I said "early April". Turns out that was wrong.)

So, what else have I been working on? I do have some excuse other than hanging out with other indie developers at PAX.

A couple of weeks ago, I buckled down and wrote RemGlk, a JSON-based IF display library. I've been meaning to write this since 2008 -- it was supposed to be the flip side of GlkOte.

Here's the one-paragraph pitch: RemGlk attaches to an IF interpreter engine (written in C), and translates its output into Javascript data. (JSON, technically.) GlkOte is a Javascript IF display library: it takes IF output in Javascript form, and puts it up on the screen as windows and input lines and things. If you stick the interpreter and RemGlk onto your web server, and then hand GlkOte to the web browser, you've got a fully functional IF web app.

Now, I haven't actually built this web app. I wrote RemGlk to work with Floyd, a MUD bot we've got running on IFMud. Floyd runs our weekly ClubFloyd IF sessions, but he's never been able to present a complete IF interface. The status line would get lost, text styles wouldn't be visible, that sort of thing. Now (after a heroic integration effort by MUD host vimes), Floyd understands RemGlk's Javascript output, and all is much happier.

(Except for that annoying text buffer bug, which I promise I will fix as soon as Dreamhold is out the door.)

In other news, I've upgraded Meanwhile to support the new iPad and its stupidly high-resolution display. If you own the app, I'm sure you've already updated. (Really, take a look on your new iPad, or your best friend's new iPad, or any new iPad you can get your hands on. The display is nice. If you zoom Meanwhile all the way out... you can't quite read the tiny text across the entire story map. But you feel like you almost can.)

My contract-work board-game project has also shipped: Fealty for iOS. (App store link here.) Chris "Asmadi" Cieslik got to show it off at PAX, and he says it's selling nicely. If you like a small strategic territory-control game for iPhone and iPad, check it out. It's sweet.

(Except for that annoying Game Center invite bug... which I'm pretty sure is Game Center acting strange. At least, other iOS board-game app developers have complained about it. We are investigating and will have some sort of patch out soon. Sorry about the hassle.)

That, I believe, is all the announcement I've got this month. Hadean Lands, as ever, continues to progress in its own way.