Eric Eve’s “Shelter from the Storm”

shelter My most recent playing: Eric Eve’s Shelter from the Storm. The major gimmick is that you can set the narrative voice to first, second, or third person, using past or present tense. Eric’s announcement of this makes it sound as though it’s more experiment than game, which isn’t at all fair. It’s a short but complete story about espionage, with lots of twists along the way, and it moves along at a pretty good pace.

It comes along at a perfect time for me, since I’m in the middle of an old series called The Fourth Arm, which is all about soldiers and agents in training in the south of England during the second world war.

Gameplay-wise, it’s not too hard: most of the interesting interaction is in the form of conversation and other highly-directed scenes. There are some puzzles, but they’re mostly of the variety that involves inspecting everything carefully and collecting keys when you find them. (I managed to get stuck at one point, but it was largely my own fault — I didn’t examine everything closely enough and then misinterpreted what the hint system was telling me to do next.)

I had some odd reactions to the way that the end of the story plays out, which I’ll probably cover later in a spoilery venue. Still, it’s well worth a play in its own right.

Now, on the topic of the experiment itself: I played around with this a fair amount, but eventually settled into playing second person present for a while and then first person past. The second present seems natural to me (too much IF, I guess), except that at some point I started to feel some cognitive dissonance between what I would do and what my protagonist had to do, and it became more comfortable to play the game in first person past tense.

That said, I think more could have been done with the experiment (though at the cost of considerably more time and effort). As far as I was able to tell, the choice of person and tense changes the grammatical form of the sentences, but it doesn’t affect things like interiority and descriptions of motivation. It would have been very interesting, and made the narration styles much more distinct, if the first-person past voice had been more strongly characterized and contained more overt hints of the protagonist’s feelings; or if the third-person voice had been a bit more estranged and cinematic.* (Not that third-person narration can’t do character thoughts — I just mean, as a contrast.) It seems to me that a game that is written so that all the text can be swapped between persons and tenses is not going to take maximum advantage of any of those choices — so it might not actually prove as much as one hopes about their relative value for IF.

But I could be totally wrong. I hope Eric gets some interesting feedback from this, so I hope people do play and let him know what happens.

* Or perhaps what I’m envisioning is really a different game, where instead of the commands FIRST PERSON or PAST TENSE, the player is allowed to type OMNISCIENT VIEWPOINT…

(At which point the temptation would be to get all meta and require viewpoint shifts to solve puzzles.)

Random coding advice: Avoid Duplication

A lot of code I see from new coders shows a thought process like this:

— I’ve got a bunch of matches the player can burn
— after a match is burned, it is moved to a container for used matches; that way I can count how many matches have been burned by writing “the number of matches in the used matched depository”.
— after writing that enough times, I get tired of the verbosity and want to be able just to write “the number of burned matches”. Okay, I’ll also give the matches a “burned” property when I use them up!

Now the burning code looks something like this:

 Instead of burning something with a match:
     [other stuff];
     move the second noun to the used match depository;
     now the second noun is burned.

and other places in the code uses both “number of matches in the used matches depository” and “number of burned matches” to refer to (what the author hopes is) the same information.

This is asking for trouble. Sooner or later you’ll move the object but not set the flag, or change the way the multi-process destruction procedure happens in one place and not in the other. As soon as you do, there will be bugs.

So here’s the advice:

Do not put the same information into your world model twice.

Continue reading “Random coding advice: Avoid Duplication”

Two From the List

mimic-threatenI’ve been playing with a few things on the enormous to-be-played list from a few days ago, though of course there are so many things on there that it will take quite some time to get through.

Braid: I have now finished. It’s of course a masterpiece in the game-play area, and doesn’t need me to say so. I usually have a really hard time getting through platformers, since I don’t have the right combination of patience and skill. As advertised, Braid minimizes the amount of frustration involved in playing a platformer while offering a diverse range of genuinely interesting puzzles; and while there were still a handful of these that were too finicky and that I would have been happy to skip, nonetheless it was the best time I’ve ever had with the format.

As far as storytelling goes, it’s a bit more confused: there is some really intriguing material in the final level, in which the meaning of events is revised and reinterpreted in a way that naturally connects to the gameplay itself; and even before that point, many elements of the game are framed so that the play is metaphorically significant.

But what I get out of all that is not really a story (good luck finding two people who even agree on what happens in Braid) so much as a series of meditations on some of the common problems in relationships and self-definition. Some of it’s thought-provoking, some a little on the obvious side. Admittedly I usually find this kind of content under ask.metafilter’s human relations tag rather than in a game, and I’m generally encouraged when a game branches out to incorporate new material. So hooray for that.

Nettestadt Troll was recommended to me as an example of good Ren’Py work, and I’m afraid I didn’t get nearly as far with that. The premise is uncomfortable to start with: girl gets abducted and raped but discovers she kind of likes it and/or falls in love with her captor. This is a fantasy to be found in many forms of literature from Menander to a certain genre of 1970s romance novel, but it’s something that would need to be handled with a fair amount of psychological sensitivity in order to be a story I want to read. Otherwise, what you have is basically porn for a specific audience.

I wasn’t crazy about the art or the prose quality, either, and the pacing left me kind of bored during the first few chapters; as for the world-building, it’s extremely vague and careless, featuring both alchemists and telegrams, feudal hierarchies and shops with “receptionists”.

I did stick with it for a while, though, in case this was a case of poor writing craft combined with a strong storytelling sensibility. Unfortunately, once there started to be choices to make, they were often on the level of random and incidental choice: e.g., what dish do I make for my supper while waiting for the troll to come home and rape me again? It’s a bit less inane than Dream Day Wedding, but the choose-your-own whatever aspects display the same lack of significant agency that I complained about there.