Merk's Review: Gathered In Darkness

The “official” version can be found at my website:

I can explain part of that. QSG stores a list of every property-change made. (If you can run perl scripts, I can send you my disassemblers for .CAS and .QSG. You might even still have the version that came with Geas, though the CAS disassembler is out of date.)

Was there Perl code included with Geas? I got stuck on compiling the main C part, I guess. Yeah, I’d be interested, potentially. I’ve been programming in Perl for ten years or so. It might be interesting! Although at this point, I’m not nearly so curious as I was when it kept on getting slower and slower. :slight_smile:

— Mike.

I’m pretty sure that was present in the tarball, though it isn’t actually used in the compilation of Geas.

Yes, is included in the Geas tarball.

Somewhat tangentially, I’ve been trying to add Geas to Gargoyle (I’ve been quietly updating Gargoyle for myself over the last few weeks), but not really being a C/C++ programmer or understanding GLK, I hit a roadblock. I managed to persuade it to compile and link without problems, but it crashes when loading a game file.

Do you or your resident GLK expert have any plans to include a GarGLK bridge file with Geas, like you’ve done for GLKterm? I don’t suppose you have, but it would be nifty if you did…

I don’t know much about Glk. IIRC, David Jones did that. Also, Simon Baldwin got it working with his own multi-interpreter system. You might try talking with either of them.

Also, which game files have you tried running it with? It’s quite possible they aren’t compatible.

It doesn’t matter much, though; when I started writing Geas I assumed that Quest was at least sanely designed; the more I worked on it, the more I disovered that Alex doesn’t have a clue about compiler design.

Simon Baldwin’s IFP - you’re right. I forgot about that. I’ll have a look at the source code and see if I can deduce anything useful.

The only file I’ve tried with it is Gathered in Darkness. I’m almost certain I deleted Beam after last year’s comp (what a mess that game was!), and I’ve never played any other Quest game.

Anyway, I’ll probably keep poking at it for a while. If (a big if…) I manage to get it working properly, I’ll send you the code.


Thanks for the very detailed review of my game. This was my first IF game and I really enjoyed taking part in the comp. I have learned a lot from this, and most of what I have learned has been from the feedback of good reviews like yours. (By good review I do not mean reviews where people thought the game was good, but reviews where the reasons that they liked or did not like it where spelled out clearly).

It was pointed out in many reviews that it might be best for me to put this game through some serious editing before uploading the full version. I am heeding that advice and doing it right now. Then I guess it will be a round of testing or two. Then I will release it.

I had worked on that game for a long time. I missed last years comp because I was still wrestling with trying to override many of Quest’s default behaviors. I told myself that this year I was going to release it regardless of where I was at to give myself a benchmark. I was afraid that this would end up being one more thing I started and never finished.

I had to make a fresh build for the comp (the game right now is close to 2800kb) because Alex has to put up a new version of the interpreter just so you can play it (the size is larger than the current build of Quest can handle). Some of the coding problems crept in as I copied the first three chapters into a new file. Many things that work fine in the main version seem to act strange in the small one. Who knows? As for load times… that may be out of my hands.

That does not excuse my spelling. I suck at this. Bad. Quest outputs all text to Notepad which does not have a spell check feature. I have since figured out a painful work around by coping a paragraph of text and pasting it into a word processor, running the check, and than pasting it back into Quest. In the future I think I will write the prose portions of my game in a word processor and than just grab them as I need them while coding. I did this on my game in the one room comp and it worked much better.

I’m going to fix these bugs and get it up and running. Thanks so much for playing it Merk. And not only playing it but really trying to figure it out and pick it apart. Your review was one of the most helpful out of the ones I got.

Testing, testing, testing. O.K. next year we will do that. :slight_smile:


Well, I’d volunteer to help you test, but this is really going to be a big undertaking and you need somebody who’s serious enough to put some time into it. And I’m working like mad right now. I’d say “I’ll help” and then end up not helping. Hopefully you can find some willing recruits. Don’t rush, though. You may very well end up with weeks worth of work just to react to what the testers say. And don’t spend everybody in the first round. Get a person or two to start, and then when you think you’ve got it polished, be sure at least one or two completely different people see the new version.

Hugo spits output to a text file, but it’s just dictionary entries (no code – although formatting stuff like \B ends up there). What I do is dump to a text file, search/replace formatting codes (I only use a limited set, so it’s only a little bit of work) en masse with blank, and then spell-check.

What are you getting out of Quest? The entire game, or just the text? Because if it’s just the text, you should still be able to run it through spell-checking without doing a piece at a time. I’m horrible with spelling too.

Does Alex know about the problem with large saves and restores? As ralphmerridew pointed out, it’s basically a log of all state changes. So, the more you play, the longer it takes to process it all when you save and load. For me, this became a huge pain. I’m not kidding when I say it was taking more than a minute to save the game, and almost that long to restore. Is there anything that can be done in the version of Quest that’ll supposedly support your larger game to speed that up? I’m sure you can’t answer that, but Alex should probably be made aware. And maybe he already is?

Have you seen the same kinds of lag in saving and loading after you’ve been playing for several hours? Or do you just use built-in cheats to skip ahead? Because if you do (and of course, you should otherwise it’d be a nightmare to debug later sections), you may not even be aware at how bad the save/restore performs later on. It’s not even a big save file – my guess is it’s all the work Quest is doing to actually process those entries that takes so long.

Did I already send you my transcripts? Do you want them in email?

I would love to have the transcripts. You can send them to


For Alex to really fix Quest, he’d need to dump so much that he might as well do a scratch rewrite.