Wednesday, October 31, 2012
Plan for the month: create a major new subsystem, supporting shortcut actions! Outcome: ...part of it. Sorry. This month was a "missed expectations".
What threw me off track was -- well, in part, I admit, The Fool and his Money. It came out last week, after ten years of development, and it's a heck of a game. (See my review from a couple of days ago.)
But that game was released on the 25th, so no, it didn't devour the entire month. The larger time-sucker was a series of improvements and bug fixes to the Inform 6 compiler. This is the IF development language that I started out using. (Well, really I started out using BASIC, and then got serious with Inform 5. But Inform 6 is an evolutionary improvement on Inform 5 -- it's still "the same language", whereas Inform 7 is a whole new deal.)
I6 has been largely superseded by I7, and development on it has mostly ceased, although it's still invisibly present in the I7 toolset. (The I6 compiler is I7's low-level code generator.) Nonetheless, some people still use I6 in its own right. It so happens that a couple of months ago, David Griffith picked up the thread of I6 development, and has been working on a new I6 release -- the first since 2004.
David's work required some new I6 compiler features. I've handled most of the (sporadic) I6 code work in the past few years, so I was in the best position to pick up those requests. While I was in there, I grabbed a bunch of other code cleanup I'd been meaning to do. There went the first two weeks of October.
These updates will primarily benefit I6 authors; most of them will not affect I7 authors. One exception: I added an optimization to reduce the game file size by omitting unused functions. Right off the bat this knocks 6% off the size of Hadean Lands. (The I7 compiler inserts some features that I'm not using, and is also imperfectly efficient about building support code for the classes in my code. Turns out that these total about 6% -- more for smaller I7 games.)
So, okay, this is not a crucial milestone in HL development, but it was important and I didn't want to roadblock David's work. So now it is done.
Returning to HL, I got through a chunk of the shortcut-action feature. The game can now track all the objects you find, and answer questions of the form "Where the heck did I leave X?" Not as trivial as it sounds: the answer might be "You transfigured it into Y, then hammered that into a Z, and then threw it into a furnace, so tough luck, buddy." If you type "RECALL X", the game will actually tell you all of that.
(Okay, it won't say "tough luck". That would be unkind.)
This sort of tracking is necessary, because you might type "CREATE FOO POTION" -- this being after you've learned how to make the Foo Potion and gone through the ritual at least once. So now the game is willing to do all the work for you... but it knows you need an X. Where the heck did you leave that? If X is in another room, you have to be able to get there; but if you've thrown X in a furnace, the game will have to explain why the Foo Potion is now a problem for you.
This is a fairly standard recursive-dependency problem, and it's not going to kill me. I just have to crank through it, and I have now cranked as far as "Where is X?" Cranking will continue.
I've started the next bit, the "walk to room Q (where X is)". But just like an hour ago, and only so that I can get up tomorrow morning in an already-rolling mood, rather than "Ungh, gurk, must start a major new feature, maybe after lunch." Always leave a sentence unfinished before bedtime, sort of thing.
I shall endeavor to get all the shortcutting code finished in November, and hopefully before the end of the month, so I can post a more encouraging update then. Merry Halloween.
As you are well aware, tomorrow is the second anniversary of the Hadean Lands kickstarter going live. I continue grateful to you all. While admittedly distracted by The Fool and his Money, I have taken some lessons from it. One: don't announce a release date that you can't make good on. Two: the game is finishable. No matter what anybody says. I'm really sure that it won't take me ten years.
Monday, October 29, 2012
Okay, I did my moral homily, now I'll talk about the game. It occurs to me that some of my readership may not have played The Fool's Errand.
Well... probably most of my readership here has, because my friends include a lot of Mystery Hunt types. Plus people who (like me) were already gamers when TFE came out in (oy) 1987. Plus people who played System's Twilight, my TFE homage from (gah) 1994.
So, for the rest of you! The Fool and his Money is a puzzle collection wrapped in a narrative, with more puzzles hidden in the gooey center.
It's not an adventure game. The early example of TFE played hell with my notion of what an adventure game was, because it had puzzles and text and a story just like Zork, but it... was... something else. Years of research and meditation (--playing more games) clarified the distinction: The Fool games do not present you with an explorable game world. You don't find a puzzle by looking under a rug; you find a puzzle on your screen. This is not a flaw, this is a different outlook.
Thursday, October 25, 2012
I was planning on writing this blog post Friday afternoon, and cueing it up to hit the streets at 9:01 PM. But that rat Johnson has tripped me up yet again and released The Fool and His Money a day early.
My download meter says "5 min 29 sec remaining", so that's how long I have to finish this post.
I was going to make a speech about not being a sardonic smartass about this sort of thing. I guess I still want to make that point. The past seven years have been punctuated by a lot of comments from That Guy -- you know who I mean -- the Guy Who says "Ha ha, 'the fool and his money', you're the fool, Cliff Johnson stole your money, he's never going to finish the game."
If you're that person, be ashamed. Doubt is easy; I've doubted. Calling somebody a liar is also easy, but it costs more. Don't impugn someone's honesty just to make a weak pun about the game's title. That's jackassery.
(Some of my friends are That One, and I'm sorry for lecturing you about this. I think it's important to say this.)
Yes, I am a biased commentator. I am a dude who is late with a game. Nobody's called me a liar yet, but I'm sure it'll come along. It won't break my spirit. That's not the point. The point is this:
If you have been 100% confident all along that Cliff Johnson would finish his game, today you are riding high. Your game is here and you're excited to play it.
If you have been hopeful -- or even doubtful! -- that Cliff Johnson would finish his game, today you are riding high. The world has justified your hopes, or the world is brighter than you expected; you are excited to play the game.
If you have been going around telling people that Cliff Johnson would never finish his game, that he was a liar, that we were idiots to believe it -- today you are horrified. You are disappointed. You're not the smart one after all. You invested yourself in believing the worst of someone, and the world has crushed your hopes. Your soul is smaller today.
I am here to tell you that you can be better than that. Your heart can grow three sizes today. It will hurt, though. Apologies always do.
Wednesday, October 24, 2012
Kairo was one of the two extremely abstract first-person puzzle adventure games that excited me at PAX this spring. (Is that an acronym yet? EAFPPAG? No? No.) (The other one was Antichamber, which I'm still looking forward to.) Kairo was just released for Mac/Win, with Linux and iOS promised later this year. I grabbed it on Sunday and jumped in.
Kairo is pleasant, but quite short; I finished it in two evening play sessions. Why evening? Because the stark architectonic worlds work better with the lights off. It's not exactly a beautiful game, not like Dear Esther or the highly-rendered graphical adventures of decades past. But the author chose his style and worked the living hell out of it. With little more than rectangles, distance fog, baked shadows, a little focus-blur, and a few concrete textures, Kairo builds an impressive range of architecture -- thematically unified but not repetitive -- and invests it with a startling sense of scale.
Friday, October 19, 2012
(If I was sensible I would have posted this last night...)
I just kicked Pocket Storm 1.1 out to the App Store, and to help spread the news, I'm lowering the price to one dollar -- today only. Call it Thunderstorm Friday! (In real life it's just drizzling out there in Boston, but with technology, we can do better.)
I got the download size down below Apple's 50-meg limit, so you can install the app over 3G now. There are a handful of other small improvements. (The fade-out timer behaves more sensibly now; you can use headphone controls on PS; and I plugged in the necessary vacuum tubes for the new iPhone 5 display size.) But app size is the important change. Apparently people make impulse purchases -- who knew?
And, as before, I am donating 10% of Pocket Storm revenues to Freesound.org, because of the awesome service they provide to indie game designers and other artists. In particular, they provide CC-licensed thunderstorm noises to me! Thus far Pocket Storm has not been a huge moneymaker, but I am hoping that over time, people support it.