It’s a very conventional parser game: a featureless, amnesiac protagonist wakes up in a bland environment, then wanders around finding keys to unlock doors which open up more rooms which might contain hidden keys.* It is effectively a room-escape game that happens to take place in several rooms: a series of simple puzzles that mostly test your persistence. There’s a plot of sorts superimposed on the medium size dry goods: a thing about a ritual and deja vu, and ultimately a cutscene fight with a dragon, followed by an it-was-all-a-dream frame-story for some reason.
The author is up-front that this was originally intended as a coding exercise, and as a coding exercise I suppose it’s okay: I didn’t encounter any bugs or seriously illogical behaviours, and it performs basic IF things. The author notes apologise for cliché, and this is a problem, sure; but there are other things that could use some work; the puzzles are kind of rote, and the writing is very flat.
This looks like a small gallery room. There is a neon tube on the ceiling, lightening up the room. The walls are covered with tiles. This room has a modern design and does not seem to fit into the rest of the building. But it looks familiar in certain ways. There is a wooden door (open) to the south. There are three hooks on the east wall, at eye level. You see six paintings standing on the ground, leaning against the east wall. Furthermore there is a gate on the opposite wall.
There is the left hook.
There is the middle hook.
There is the right hook.
You can also see a castle painting, a dragon painting, a ship painting, a dungeon painting, a moon painting and a flower painting here.
Rendered differently, this could have the potential to be a fairly interesting room: but the delivery makes it feel boring. Some of this is to do with standard principles of room-description organisation: the paintings and the hooks get mentioned twice, where only once is really necessary. But much of it is just style, some of which may be to do with the author’s fluency in English: many short sentences, very few adjectives, everything treated as separate atoms.
So, also, the dragon fight:
Wonders never cease: maybe it is the power of the sword to generate a protective shield. The fire almost hits you, but is deflected before burning you to ashes. In a frenzy you point the sword towards the beast. And again a miracle: a white flash of lightning emanates from the blade, accelerating skywards. Lightning does not strike twice, so hopefully this one will be sufficient. As the dragon is hit by the light, he screams in agony, and the building is trembling, vibrating with the resonance. And you watch the beast disintegrate into beams of colored light.
This is meant to be a climactic action scene, a pulse-pounding, intuition-driven fight. But the voice is still that of a wry, cool, detached observer: ‘wonders never cease’, the flat-affect almost-joke of ‘lightning does not strike twice, so hopefully this one will be sufficient’ at the action’s peak. A number of stages of the action are condensed into a single paragraph, which makes for homogenous pacing and lessens the impact of each event. Again, at least some of these issues – the tonal implications of idiomatic phrase, the rhythm and pace of language – are exactly the kind of things that could be challenging for a second-language speaker.
The game contains a couple of player-convenience commands which I hadn’t seen used before: SPHERE, a hinting mechanism which is meant to highlight rooms where action can usefully take place, and LIST, which prints a list of all the visible things in a room. I only really acknowledged their existence after I’d finished the game, but they seem like experiments which might plausibly help some players.
Anyway. This is a piece which does not aim very far beyond the basic implementation of standard IF elements.