blacksmith[1]Again, I got a substantial amount of work done this week.  I finished up Scene 2, as I figured I would, and actually got all the way up to the end of Scene 3.  I finally stalled out due to realizing that the way I had implemented a computer was suboptimal, and limits where I can go with some of the puzzles I’m implementing in later scenes.  Luckily, I put in some test code for an alternate approach and it works fine, so with a little bit of armor-plating I should be able to move on from that problem fairly quickly.

I had originally implemented the computer as a backdrop-type object, as it is accessible from multiple areas and this is what a backdrop is intended to do.  However, a backdrop cannot also be a person, and you must be a person to be talked to or asked questions.  I had tried to get around the problem by translating “ask computer about X” into the action of “consulting”, which is legal for an inanimate object.

Unfortunately for that technique, I’d also like to support text in the form of “computer, open the pod bay door”, which is rejected out of hand by the Inform 7 Standard Rules if you’re talking to a backdrop.  By making the computer a person with a fixed location, but changing the scoping rules to allow interaction from anywhere, I can get around this.  Of course, I’ll need to write code to make touching, pushing, smelling, etc. the computer infeasible except for around the computer’s actual hardware, but I would have had to have done that anyway.  The only extra work will be to ensure that the default “person” responses are appropriate for a disembodied computer interface, and to change them if they aren’t.

Scene 3 should be complete almost immediately the next time I sit down to write, and Scene 4 is not going to take very long.  The real test will be Scene 5.  In that scene there are several intricate puzzles that will test my Inform 7 coding skills quite a bit more than what I’ve done so far.  If I can get over that hump, the remaining scenes should go fairly quickly.  I’m confident that if I can continue to make progress at this rate I can have a testable game early in September for my volunteer beta testers.  It will still require a lot of polish work, but it should be playable.