Style | StandardCards

Planet Interactive Fiction Last Update: Saturday, 05. September 2026 05:01

The Sharpee Blog - Sep 05

Who draws the line break?

Apparently, not the Author.

A post came through Planet IF this week about wrangling line breaks in Inform 7. It is a good post, in the sense that it accurately describes what an Inform author has to do. That is what bothers me about it.

The setup is a bowl

3 hours ago
Who draws the line break?

Apparently, not the Author.

A post came through Planet IF this week about wrangling line breaks in Inform 7. It is a good post, in the sense that it accurately describes what an Inform author has to do. That is what bothers me about it.

The setup is a bowl of ice cream whose description cycles through three flavors, and an every-turn rule that nags you to eat it. The output has a stray blank line between the description and the nag. The post then walks through the fixes: append a substitution to the end of the string, no change; move it into the say phrase, no change; attach it to each individual sentence, that works. Then the improvement: define a substitution that prints Unicode character 46 so that the period at the end of a sentence is not a period as far as the compiler is concerned. Then a rulebook that prints a stanza of Berryman using a substitution meant for command clarification, because that substitution happens to suppress the engine's paragraph logic and nothing else does.

The author's own line is the tell. "None of this quite feels like sitting down to write, though, does it?" No. It does not.

Why Inform is like this

Inform 7 is built on top of Inform 6, and it kept Inform 6's output model. Text goes to the Z-machine or Glulx screen stream the moment a say phrase runs. That stream is one way. The Glk specification says it in a sentence: "A window stream cannot be read from, only written to." The Z-machine offers no way to ask where the cursor is either. So the runtime has no way to look at the screen and ask whether it is at the start of a line or whether a line was just skipped.

Graham Nelson says as much in the comment at the top of the paragraphing code in the Inform kits, and it is worth quoting because it is the whole story:

Most users probably imagine that it's implemented by having I7 look at where the cursor currently is (at the start of a line or not) and whether a line has just been skipped. In fact, the virtual machines simply do not offer facilities like that, and so we have to use our own book-keeping. Given the huge number of ways in which text can be printed, this is a delicate business. For some years now, "spacing bugs" (those where a spurious extra skipped line appears in a paragraph break, or where, conversely, no line is skipped at all) have been the least welcome in the Inform bugs database.

The bookkeeping is two global flags. The compiler sets the first one before every say phrase, and the runtime checks it at "divide paragraph points" between rules and prints a skipped line if it is set. The sentence-ending punctuation rule is not even a runtime check. The compiler looks at the last character of the literal text in a say phrase and, if it is a full stop, an exclamation mark or a question mark, compiles in a newline. That is why the post's fix only works when the substitution sits right next to the period, and why printing the period as a character code works at all: the compiler is looking at the source string, and a character code is not a full stop.

Layout, in short, is a side effect of printing, computed from the text itself, at the moment each fragment goes out. Inform 7 put a natural-language surface on that stream without replacing the stream. Every substitution in the post is a way of poking one of those flags from inside a string, because the string is the only place an author can stand.

That design has a consequence that no amount of substitution vocabulary can fix. The prose and the layout instructions live in the same string. When the layout is wrong, you edit the prose. When you cannot edit the prose without changing what the reader sees, you disguise the prose so the engine misreads it. Printing a period as a character code is exactly that: lying to the layout engine about what you wrote.

A thirty thousand word story written this way carries hundreds of these disguises. Every one of them is a place where the author stopped writing and started negotiating.

What Sharpee does instead

In Sharpee the story never prints anything. Actions and phrases produce text blocks during the turn, and when the turn is over the report service assembles them. Paragraphs are structure, not punctuation. A phrase is a block. A blank line inside a phrase body is a paragraph break. A single line break is a {br} marker. The renderer owns the margins between blocks, and the theme decides what those margins look like.

Nothing in that pipeline reads your sentences to decide where a paragraph goes. A period is a period. Here is the ice cream in Chord.

create the Lab
  a room

  A bowl of ice cream rests on the counter. {ice-cream-look}

  on every turn while the ice cream is on the counter
    phrase eat-it
  end on

create the counter
  a scenery supporter in the Lab

create the ice cream
  aka bowl
  on the counter

define phrase ice-cream-look, cycling
  It looks like delicious vanilla.
or
  Chocolate! My favorite.
or
  Strawberry with real chunks of fruit in it.
end phrase

define phrase eat-it
  You had better eat that ice cream before it melts!
end phrase
Who draws the line break?

The description is one block. The every-turn nag is another block. The space between them is the paragraph margin, the same margin every paragraph in the story gets, and it is the same on the first turn, the fortieth, and after every flavor. There is nothing to tune because there is nothing computing it from the text.

The poem is the same idea with the other marker.

define phrase dream-song-14
  Life, friends, is boring. We must not say so.{br}
  After all, the sky flashes, the great sea yearns,{br}
  we ourselves flash and yearn,{br}
  and moreover my mother told me as a boy{br}
  (repeatingly) 'Ever to confess you're bored{br}
  means you have no
end phrase

Each {br} produces a line that stacks flush against the previous one. If the stanza needs a gap, you leave a blank line, and it is a paragraph. No rulebook, no borrowed substitution, no trailing break rule to cancel a break that appeared from somewhere else.

A different split

The post ends with "do not accept defeat," which is a strange thing to have to say about typesetting a paragraph. An engine should not be an opponent. The reason Inform's is comes down to one decision made a long time ago: that the printing routine is where layout gets decided. That was a choice with real benefits. Building on Inform 6 gave Inform 7 the Z-machine and Glulx, every interpreter ever written for them, and twenty years of library behavior that already worked. The paragraphing flags are the price of that choice, and it is a price paid by every author, on every project, in every string.

Sharpee and Chord make a different bet. The virtual machine pattern bought portability by fixing a byte code and asking every platform to write an interpreter for it, and the price of that portability was an output model from the era of the teletype: a stream of characters with no structure the interpreter could see. The web is now the runtime that every platform already has. A story delivered to a browser inherits its portability from the browser, and it gets to deliver structure instead of characters. Sharpee's engine hands the client a list of text blocks with keys and classes, and the client lays them out with the same tools every web page uses. A paragraph is an element. The space between two paragraphs is a style. Neither of those facts has to be reconstructed from a flag after the text has already gone by.

I should be honest about where that bet still has gaps. Vorple has been putting Inform stories in a browser with real HTML and JavaScript for years, and Hugo shipped graphics and sound in its own runtime a long time before that. Both offer visual capabilities Sharpee has not tested against yet. Sharpee has sound, and it has minimal image placement, and neither is at the level those two systems reached. What Sharpee has settled first is the thing this post is about: the shape of the text. The rest is work I know is ahead.

The one place I expect an argument is this. What happens when two rules both report on the same turn, and the author meant them to be one paragraph? In Inform the answer is to reach for the run-on substitution and hope the flags cooperate. In Sharpee the default is that two reports are two paragraphs. If two things happen independently, they are two facts, and the reader gets two paragraphs. When the author knows they belong together there are two ways to say so, both in the source. A phrase can splice another phrase into its own prose with a marker, which is what the ice cream description does with its cycling flavor. And a phrase can be tagged as running on, so that wherever it fires, its text joins the paragraph before it.

on every turn while the ice cream is on the counter
  phrase eat-it
end on

define phrase eat-it, run-on
  You had better eat that ice cream before it melts!
end phrase
Who draws the line break?

The tag is a property of the phrase, not of the place it is called from, so the author decides once where the text lives. The joining is done in the source, where the author can read it, not at the output, where nobody can. The engine never guesses. It either has one paragraph because the author said so, or it has two because the author did not.

The marker splice is current capability. The run-on tag is filed and not yet built.

Sharpee's split is that the story says what is true and the presentation layer says how it looks. The same story renders in a terminal, in a browser, and in Chord Writer, with different themes, and the author has not written a single character of layout for any of them. When an author wants a different look, they change the theme, not the prose. When a tester pins a transcript, the text is the text; there is no whitespace to fight over.

The best argument for this is the one the post makes by accident. Authors want to sit down and write. The tool that lets them do that is the one that never asks them to hide a period.


Note: I did use Claude to help write this entry because I wanted a deep comparison of text emission from VM-based IF platforms to Sharpee/Chord. Claude is able to look into code and validate how things work and dig up salient quotes from Graham about this subject. Nonetheless, the original line break post is one of the central catalysts for building Sharpee at all and for how I designed text-emission. It also exposed a small gap where run-on is required. TL;DR - I hated managing text output in Inform 7 and honestly this is probably an outcome from having designed Channel IO back in the FyreVM/Textfyre days.

3 hours ago

Interactive Fiction – The Digital Antiquarian - Sep 04

Porsche Unleashed

I’ve had a running joke with my wife Dorte for almost as long as we’ve been a couple. I reasoned back in the day that, since she was going to be a doctor — a more reliable source of income than writing about computer games — she should be expected to buy me the Porsche […] 13 hours ago

This Porsche is very much leashed. The one I got wasn’t even a turbo model.

I’ve had a running joke with my wife Dorte for almost as long as we’ve been a couple. I reasoned back in the day that, since she was going to be a doctor — a more reliable source of income than writing about computer games — she should be expected to buy me the Porsche of my dreams at some point. Needless to say, I’m still waiting. I had to learn the hard way that a doctor in Denmark doesn’t earn quite as much as one in the United States. (On the other hand, a doctor here doesn’t have to work such ridiculously long hours or have to pay ridiculous insurance premiums either, so it all balances out.)

The closest my dream ever did come to fruition was not that long after we moved to Denmark, when Dorte decided to empty out much of our meager bank account to rent me a Porsche for a weekend as a birthday present. But bless her heart, she didn’t know one model from another. So, what with our finances being so stretched, she just took the cheapest one when she booked the rental online — something called a Cayenne.

This was not the Porsche of my dreams. It was a hulking SUV of the sort that… well, I won’t say that I left the United States just to escape them, but I did enjoy not being surrounded by so many of them on European roads, especially given that my standard mode of conveyance in my new life was a bicycle. Having had no idea where we were going when we climbed into a bus that morning to get to the rental place, I was more confused than disappointed as I handed over my freshly minted Danish driver’s license to the man behind the desk in order to drive away in the least interesting vehicle on the premises.

Of course, it didn’t take me that long to work out what had happened. When I did, I didn’t know whether to laugh at the best wife in the world or hug her as I observed her dismay. So, I did a little bit of both. It was like landing in an O. Henry story — but with Porsches.

In that same “Gift of the Magi” spirit, the Cayenne turned into the gift that kept on giving. We drove down to Germany that weekend to visit my in-laws, whom Dorte had informed of my big surprise beforehand. Their faces showed as much shock as hers had when they saw what we rolled up in. I then had to inform everyone, in my insufferable car-nerd way, that this Porsche was no real Porsche at all, that it was just a rebadged and gussied-up Volkswagen, with an automatic transmission, for Pete’s sake. My father-in-law thought this speech was the best part of all. He still talks regularly about the “Volksporsche” Dorte found for me.

In the end, then, we all got more pleasure out of that frumpy Cayenne than any Boxster or 911 could have given. Even Dorte has come around to admitting that the whole episode was pretty darn funny.

She hasn’t tried again; in fact, I haven’t driven another Porsche since. (In real life, that is; more on the virtual breed momentarily.) The next time Dorte led me to an undisclosed location on my birthday, it was to meet the kitten she’d picked out for me. Thankfully, unlike my Porsche, the kitten was just exactly perfect.

As the car enthusiasts among you are doubtless already raising hands to point out, the irony of my Volksporsche story is that the two brands — the one so utilitarian, the other so prestigious — have always been intimately linked. The Volkswagen Beetle was, after all, designed by a fellow named Ferdinand Porsche. And for most of the second half of the twentieth century, Porsche sports cars and that humble Volkswagen were the only mass-produced cars to sport rear-mounted, air-cooled engines. This is just one of the things that you will learn if you spend some time with Need for Speed: Porsche Unleashed, a rather unusual entry in Electronic Arts’s signature series of aspirational driving games.


Porsche Unleashed is a digital love letter to the marque. No other driving game has ever been so laser-focused on a single brand; even the police cars in this game are Porsches. You could say that it all amounts to an extended corporate infomercial, and you’d be completely correct. But what an infomercial!

Like all aspirational driving games, Porsche Unleashed is a snapshot of the moment it was created. Released in March of 2000, it captured the storied sports-car maker as it charged into the new millennium with renewed purpose and optimism. Porsche had recently survived a near-death experience, and, like many a survivor of same, it had emerged determined to seize life by the throat and make up for lost time.

In 1986, Porsche had a record year, turning out 50,000 cars. In 1993, it made 14,000. Between these two data points lay a brutal sales collapse, exacerbated by a global economic downturn but primarily caused, said many, by arrogance and complacency. Hemorrhaging money, facing the very real prospect of bankruptcy, the company turned to a 38-year-old wunderkind engineer named Wendelin Wiedeking to turn things around. He remains a polarizing figure among Porsche enthusiasts to this day.

For Wiedeking utterly remade the company, turning it from an old-school maker of semi-handcrafted vehicles to an efficient, ultra-modern mass manufacturer. He went to Japan to tour the factories of Toyota, Honda, and Nissan, then returned to Porsche’s hometown of Stuttgart to implement the same processes there. In five years, he reduced the amount of time it took to make a Porsche 911 from 128 hours to 70 hours, increasing throughput in terms of cars per employee per year from 4.9 to 9.1.

The Boxster, the car which did much to pull Porsche back from the brink. Unsurprisingly, it features prominently in Porsche Unleashed.

More controversially, he revamped the model lineup, saying it was no longer possible to survive by making vehicles that appealed exclusively to the kind of uncompromising sports-car connoisseurs who had bought Porsches in the past — the sort of people who regarded heel-and-toe braking as an essential life skill and weren’t bothered in the least by fiddly maintenance procedures or a complete lack of luggage space. He introduced the Boxster, a mid-engine roadster that was cheaper than the flagship 911 model, more livable, and less demanding to drive and maintain. Porsche sold 16,000 of them in their debut year of 1996. For his next trick, Wiedeking gave the world a more robust and practical variant of the 911 itself, the first ever to be powered by a water-cooled engine; the anguished cries of the purists can still be heard echoing down through the years. By the turn of the millennium, Porsche’s total vehicle production had returned to its 1984 levels, with profit margins that were much higher. The financial pages were calling Porsche the automotive turnaround story of the decade, calling Wendelin Wiedeking a genius. Not content to rest on his laurels, he had moved on to his next trick: a luxury SUV called the Cayenne, based on a Volkswagen design, that was set to reach dealers in 2003. The purists (hey, that’s me!) would soon have more cause than ever to howl.

As of the year 2000, though, Porsche was still a maker of sports cars only, with a proud past, a winning present, and a bright future. It felt it had something to celebrate. And indeed, Porsche Unleashed was nothing if not a celebration.

This, then, was Porsche’s motivation. That of Electronic Arts is slightly harder to discern. Like so many other driving and sports games, the Need for Speed series has always been a bit of a black box, lacking the big public-facing personalities who place their stamp on the more design-centric genres. The decision to go in a more historical, simulation-focused direction with Porsche Unleashed is counter-intuitive on the face of it, in that this was the opposite of the direction the series had been trending over its last couple of installments — and, for that matter, the direction it would continue down as soon as this installment was done. It may be relevant to note here that Hanno Lemke, the series’s guiding light from its inception until 2007, seems to have had the least to do with this entry; he is credited here as only the executive producer rather than a line producer.

For whatever reason, Porsche Unleashed is in some ways of a piece with what came before — it’s still every inch an aspirational driving game — while being quite dramatically different in tone and feel. It is, dare I say it… classier? The only tacky part of this game is the name; Porsche Unleashed sounds more like branding for a man’s razor or a sexual supplement than a vital creative work.

I originally played it not long after its release, attracted by its Porsche-centric focus and by a stellar review from the long-defunct Games Domain, my favorite gaming website lo those many years ago. I vaguely remember loving it, but my most indelible recollection is of breaking at least three driving wheels — pulling the shift paddles right off, I believe — in my over-enthusiasm to finish first. When I picked the game up again last year, I was curious whether my jaded middle-aged self would respond to it in the same way. I didn’t buy a driving wheel, for two reasons: because it seemed incompatible with my present-day preference for playing games from the couch, and because I knew that Dorte would laugh at me as soon as I emerged from my office with such a contraption just as much as I’ve laughed at her for the Cayenne fiasco over the years. But even with a plain old Xbox controller, the magic was still there for me.

In the interest of full disclosure, I should tell you at this point something that you may have already gathered for yourself: that Porches have always been the exception to my general disinterest in high-priced, high-powered sports cars. This may be down to their shared heritage with Volkswagen, a brand with which I was quite enamored and could actually afford in my younger days. The very first Porsche-branded car was the 356, built in the immediate aftermath of the Second World War, by some reports with money looted from a factory for military vehicles which Ferdinand Porsche and Anton Piëch, the company’s patriarchs, had set up in Stuttgart. That first 356 was little more than a Volkswagen Beetle with a different body, a stiffened-up chassis, and a souped-up engine capable of churning out all of 40 horsepower. (If that doesn’t sound like much, know that it was almost twice what you could expect from a Beetle in those early days.)

Prior to the tenure of Wendelin Wiedeking, there was a clarity of purpose — almost an austerity — about Porsches that I have always adored. They didn’t chase trends. In fact, they scarcely changed at all over whole stretches of years (which, yes, was doubtless a big reason for the morass the company had sunk into by the beginning of the 1990s.) They remained rear-engined and air-cooled long after even Volkswagen had given up on that design. To drive a car of such a design fast, you really had to know what you were doing. If you didn’t, that heavy rear end would start to come around on you, you’d hit the brakes trying to plant it down again, and in the best case you’d find yourself sitting in a roadside ditch with the hood pointing in the wrong direction entirely. Some people, myself included, found something deeply appealing about such an uncompromising vehicle. You bought a Ferrari or a Lamborghini to show off to others. You bought a Porsche for yourself. Looking back on the late 1980s — my formative years in car culture, as they were those of the modern aspirational driving game — I find that the Porsches from that time have aged a heck of a lot better than their slightly more expensive companions in games like Test Drive, even if the company wasn’t selling as many of them as it might have wished.

So, all of this is surely bound up with my appreciation for Porsche Unleashed. But I think a difference is discernible in this Need for Speed game regardless. Certainly you won’t find a sleeker and more stylish game from the turn of the millennium, a time when tastes in gaming aesthetics in general were often still those of nerdy adolescents. Although it was made in Canada, the feel of the game is more European than North American, which is only appropriate given the subject matter. The chilly house beats that play behind the proceedings are a perfect match for the airbrushed discotheque-ready sheen of the rest of the production.


Another thing you’ll notice before you actually set yourself behind the wheel are the gallery of photographs and press clipping awaiting your perusal, now or later. Although I’ve never been to Porsche’s official museum in Stuttgart, I can imagine that its mood might be a lot like this, at least if they’re doing it right.

But of course, none of this would matter at all if the cars weren’t fun to drive. Happily, then, fun they are. Really, really fun. Porsche Unleashed lands in exactly the right sweet spot between an obviously artificial arcade game like the old Outrun and a fiddly, rigorous simulator like the NASCAR games from Papyrus Design. It is, in other words, an aesthetic simulation par excellence; it feels like you’re actually driving one of these cool cars. The 911s are the highlight of the experience, as they by all rights ought to be. You have to learn that, when that infamously squirrelly rear end comes around on you, you can’t follow your natural instinct to hit the brakes, for that way lies a disastrous spin. No, you have to step on the gas, which will transfer the car’s weight to the rear and let those loosy-goosy tires grip the road again. When you figure out that you can throw your car into the curves, let the back end drift around deliberately, and then down-shift and clomp down on the accelerator to power out of them, it’s an awesome, well-nigh revelatory moment. I’m not sure that I can recall a more satisfying feeling in all my decades of playing videogames. Spend some time with this game, and you will begin to understand why people love those vintage 911s so much.

The streets of Monte Carlo.

All of the courses you can drive are located in Europe. They include the streets of Monte Carlo, the German Autobahn, and a rather generic industrial zone that could be found on any of six continents. But most of them put you on twisting smaller roads, mostly in France. While this is in some ways an odd choice for a game about a legendary German automaker, the end result is so lovely that I’ll let it pass without further comment.

These courses are all a blast to drive and explore, with plenty of the shortcuts and hidden byways that virtual motorists love. They looked spectacular in the year 2000, and still stand up surprisingly well today; this game is almost as effective an advertisement for France as it is for Porsche. It seems weird to use the word “bucolic” in reference to a franchise called Need for Speed, but for this installment it really is applicable. I sometimes like to take an old, slow 356 out just to practice my line through the courses and enjoy the scenery. Call it a reminder of what driving a sports car used to mean: driving well, and having a great time doing it, even if you weren’t going all that fast in absolute terms.

Out for a Sunday drive in a 356. I’ve said it before and I’ll say it again: it’s funner to drive a slow car fast than a fast car slow…

Just one year after Need for Speed: High Stakes introduced a longer-term meta-game to the franchise, Porsche Unleashed gave you two of them, both equally well-done. Its direct equivalent to the High Stakes career mode is called Evolution. Just like in the previous game, you start out with a single modest car and an equally modest sum of cash, with the dictate to go forth and win races to improve the state of your garage and your bank account. But Porsche Unleashed adds a larger historical chronology to the proceedings. As you open up new races to enter, you also advance through time from your starting point in 1950, when the only car you can buy is a Porsche 356 that sways and rolls more than a fat man on a bender and is powered by what sounds and performs like a lawn-mower engine.

In one of the few reflections of the direction the franchise took after this game, Porsche Unleashed lets you tune your cars in career mode. I must admit that this sort of thing exceeds my patience level. I find it easier just to buy new cars instead of mucking about with my existing ones.

In addition to its other attractions, the Evolution mode is another fine history lesson, this time an interactive, hands-on one. When the 911 comes onto the stage in 1964, well after the 356 has overcome its humble origins to get pretty darn good, you might feel like many a 356 aficionado did at the time: skeptical of the newcomer, to put it mildly. But rest assured that the 911, an automotive icon for a reason, will win you over quickly enough.

To its credit, the Evolution mode includes lots of Porsches that aren’t the 356s and 911s around which the brand built its reputation. The 914 is here — this being the semi-infamous Volksporsche which combined a Porsche chassis with the exact same motor that powered the Volkswagen bus I owned all those years ago. (I kid you not.) And we can have a go with the 944, a later lower-end sports car, and the 928, the grand tourer that Porsche made twenty years before the Cayenne was a gleam in Wendelin Wiedeking’s eye. None of these cars is as fun to drive as the fishy-tailed 911, but it’s great to see them nonetheless. Ditto the real oddballs, such as the Porsche 550 Spyder, which looks like an overturned bathtub and is a terrifying handful on the road, such that you can understand all too well how the actor James Dean could have met his death in one in 1955. All told, playing through the entirety of the Evolution mode, from that first 356 to the Y2K incarnations of the Boxster and 911, is quite a trip. A course that used to take you six or seven minutes to traverse will be done in barely two by the time you’ve finished assembling your garage full of Porsches. Evolution indeed!

The 914, the ugly duckling of the Porsche flock.

The other meta-game here is a dramatic new innovation for the series. The Factory Driver mode is a sign of the changing times in gaming circa 2000, when more and more genres were finding ways to include set-piece story lines. The story here isn’t a particularly good one in the abstract, mind you, but it’s notable for existing at all. More importantly, it’s at least as entertaining as the Evolution mode in practice.

On the skid pad in Factory Driver mode.

You’ve come to Porsche to work as a test driver. Over 34 assignments, you have to prove your mettle and fend off various challengers from among your colleagues. Some assignments take place on a slalom course right there in the factory parking lot, but most repurpose the same roadways that you race on in Evolution mode. Realism is not a priority; I certainly hope that the real Porsche doesn’t deliver its cars to the port for shipment by racing them at breakneck speeds over public thoroughfares. Some of the assignments are really hard, at least for a middle-aged man like me; it took me more than an hour of trying to complete an embarrassing number of them. But boy, are they fun, and boy, is it satisfying when you win a race against the clock that had seemed impossible at the outset.

Yes, I am proud. It wasn’t easy, let me tell you.

In fact, I think that I adore this part of the game even more than the rest of it; I don’t even mind that you’re mostly driving 1990s-vintage Porsches in Factory Driver mode, with only the occasional blast from the past. This mode is actually an excellent place to start with the game, as it will teach you skills that will serve you well when you move on to Evolution mode. The only drawback to this ordering is that, if you’re at all like me, you may find that Evolution mode, good as it is, pales just slightly in comparison.

As has surely become all too clear by now, I have very little bad to say about this game. Normally, when I’m writing about a game, I try to temper my criticisms by reminding myself that there is someone out there who likes it a lot more than I do, who cares about it more than I do. Well, that may not be the case with Porsche Unleashed. Even grizzled, jaded critics like me have those special games that stick in our craw for reasons that we may not be entirely able to articulate. Porsche Unleashed is one of those games for me. It seems that all I can bring myself to do is gush over it.

Yes, it’s easy enough to call it too slick by half, to call it corporate propaganda. But it’s just so well-done, so aesthetically masterful and so carefully calibrated for the maximum enjoyment of yours truly, that I don’t care. Part of me feels bad that I haven’t found any other driving games to fall in love with in the same way as this one. Another part of me — the bigger part, I think — feels that, when a driving game is as good as this one, what’s the point of having any others?

Despite reviews that tended to be almost as gushing as the one I’ve just written, Porsche Unleashed was less commercially successful than its predecessors in the Need for Speed series. That disappointment prompted a franchise course correction — or rather re-correction, back to the direction the series had been trending before this detour into a single marque’s history. I feel like I ought to write that this was a shame, but, honestly, what would more games in this spirit have looked like? Ferrari UnleashedLamborghini Unleashed? I suppose you could try, but somehow it wouldn’t be the same. Or maybe that’s just the Porsche lover in me talking once again.

As it was, the Need for Speed series soared to new commercial heights early in the aughts by capitalizing on the craze among the youth for “tuning” and (illegally) racing more ordinary and accessible cars, as celebrated by the 2001 cinematic blockbuster The Fast and the Furious and its sequels. For many post-millennial driving-game fans, Porsche Unleashed remained relevant primarily for the sixteen-year (!) exclusive license Porsche had granted to Electronic Arts; this meant that their cars could not appear in anyone else’s games, even as EA’s own were now favoring Hondas and Nissans and even Volkswagens over Porsches and Ferraris and Lamborghinis. When the long moratorium finally ended in 2016, it was front-page news on many a gaming website. (Would we have gotten more exclusively Porsche Need for Speed games if the first one had been more successful? It’s tempting to wonder — but, again, what else could those games have done that the first one didn’t?)

Today, the expired status of the same license agreement means that Porsche Unleashed is not available for purchase anywhere. But you can still find it in the musty back hallways of the Internet, including at a certain archiving organization. It can be tricky to get running well on modern hardware, but it’s not impossible. A good place to start is with the “Combined Patch” by Tsalikon. Just make sure to play the Windows rather than the Playstation version; the latter is so dramatically stripped down as to be for all practical purposes a different, inferior game altogether.

Naturally, you will have to decide for yourself whether it’s worth the effort to track down the game and get it running. I can only say that it was most emphatically worth it for me to renew my relationship with this old flame. I am, it seems, a driving-game monogamist. What I lack in my breadth of appreciation for them is made up for by the depth of my attachment to this one.



Did you enjoy this article? If so, please think about pitching in to help me make many more like it. You can pledge any amount you like.


Sources: I drew my brief summation of Porsche’s recent history and situation circa 2000 from a Harvard Business School case study by Jeffrey Fear and Carin-Isabel Knoop. And let me recommend the book The Nazi Billionaires by David de Jong to anyone who wants to explore the darker side of Volkswagen and Porsche’s origins, the stuff you will never see in a slick propaganda piece like this one.

13 hours ago

Zarf Updates - Sep 04

Hugo Award stats, 2026

Back in April I took a look at the Hugo Award finalists, with an eye to seeing how the votes might divide up. I did this because the 2025 Best Game voting showed an interesting split between "indie" and "big company" voters (in some sense of ... a day ago

Back in April I took a look at the Hugo Award finalists, with an eye to seeing how the votes might divide up. I did this because the 2025 Best Game voting showed an interesting split between "indie" and "big company" voters (in some sense of those very subjective terms).

Well, the 2026 Hugo Awards were announced this weekend, and the results are... boring. No! I don't mean boring; we got a great lineup of new works across SF media, and I was excited to see them. But as statistics, there's not much to say.

(The 2026 Hugo Full Statistics report can be found on the LACon Hugo Award site.)

Best Game

The winner for Best Game was Clair Obscur: Expedition 33, a game which has already won so many award slates that the developers have run out of champagne and are now toasting with Grape Nehi. If we look at the (still very cool) Sankey diagram:

A flow-chart of colored ribbons. It begins on the left with the six nominees. Then the colors divide and converge as four of the nominees are eliminated, leaving "Clair Obscur: Expedition 33" as the survivor on the right. Best Game 2026 runoff. Click for larger version.

...we learn that the voters were heavily in favor of Clair Obscur from the kick. After each other candidate was eliminated, its partisans leaned towards Clair Obscur. So Clair Obscur won. Indie vs AAA? Narrative vs combat? Sorry, people just liked the game. That is all there is to say.

Okay, Hollow Knight voters had a thing for Hades 2, which is mildly interesting.

I was of course rooting for Blue Prince, which made a respectable second-place showing. (BP has also won a metric ton of awards, so don't take my snarking above too seriously.)

It's worth noting that when Blue Prince was eliminated in the last round, almost half its votes dropped out. That is: a large fraction of the people who listed Blue Prince did not rank Clair Obscur on their ballot at all. This indicates a strong voter split between fans of cryptic puzzlefests and hair-trigger combat mechanics... But you didn't need me to tell you that.

As for me, I still can't parry for crap so Clair Obscur is not going on my wishlist.

Since the report provides it, let me add the list of nominees that didn't make the finalist cut:

  • Split Fiction
  • Tiny Bookshop
  • The Lord of the Rings: Fate of the Fellowship
  • Strange Antiquities
  • Type Help
  • The Alters
  • Blue Planet
  • The Séance of Blake Manor
  • Death Stranding 2: On the Beach
  • Daggerheart

Yay for Type Help and Strange Antiquities! Blake Manor was also worth playing but didn't really work for me. I am sort of interested in The Alters but thinking about survival games makes me tired.

This shall not be the last you hear of Type Help. I expect to be a Hugo voter next year, and I absolutely intend to nominate The Incident at Galley House.

Best Related Work

I also paid attention to Best Related Work, because I am a fan of both Ada Palmer and Elizabeth Sandifer. (I support Sandifer's Patreon.) Here again the fans had a favorite and stuck with it, although the challengers were closer.

A flow-chart of colored ribbons. It begins on the left with the six nominees. Then the colors divide and converge as four of the nominees are eliminated, leaving "Inventing the Renaissance" as the survivor on the right. Best Related Work 2026 runoff. Click for larger version.

"Last War in Albion" (the Gaiman essay) was a hell of a piece, but it just didn't have a strong constituency.

Back in April I said "I want to read Inventing the Renaissance but I have not yet dug in and done it." Guess what, I still haven't. This time for sure. As soon as I finish the books I picked up at NecronomiCon, and the fourth Heaven's Vault book which has been making sad eyes at me for months...

Nominees that did not make the finalist cut:

  • We Will Rise Again: Speculative Stories About Political Protest, Resistance, and Hope (Karen Lord, Annalee Newitz, and Malka Older)
  • Enshittification (Cory Doctorow)
  • When People Giggle at Your Name, or the 2025 Hugo Awards Incident (Grigory Lukin)
  • Dreaming of Autonomous Vehicles (Jaroslav Olša, Jr.)
  • Nigerian Speculative Fiction: The Evolution (Chukwunonso Ezeiyoke)
  • r/fantasy 2025 Book Bingo (r/fantasy Bingo Team)
  • The Outspoken and the Incendiary (Terry Bisson)
  • Mark as Read Column (Molly Templeton)
  • The Martian Trilogy (John P. Moore, et al)
  • Spring, Summer, Asteroid, Bird: The Art of Eastern Storytelling (Henry Lien)

(I have not read any of these. Wait, I must have read some of the original "Enshittification" essay, but the nomination went to the book. Anyhow the word "enshittification" immediately outgrew Doctorow and that's the part I now remember.)

In conclusion

Blogging about Hugo statistics is boring. I should read/play/watch more works and blog about them instead. Onward to Montreal in 2027!

a day ago

The People's Republic of Interactive Fiction - Sep 03

September meeting (online)

The Boston IF meetup for September will be Monday, September 28, 6:30 pm Eastern time. We will post the Google Meet link to the mailing list on the day of the meeting. We are still aiming at an in-person meetup in early October. The date is not yet settled. We’ll post here when we know […] 2 days ago

The Boston IF meetup for September will be Monday, September 28, 6:30 pm Eastern time. We will post the Google Meet link to the mailing list on the day of the meeting.

We are still aiming at an in-person meetup in early October. The date is not yet settled. We’ll post here when we know more.

2 days ago

Eamon Adventurer's Guild Online - Sep 01

Solution Found: Wm. Trent’s “Search for the Key” Mystery

In the March 1991 issue of the Eamon Adventurer’s Guild Newsletter, Wm. Trent described a mystery involving Donald Brown’s The Search for the Key:

Dear Tom,

One of my favorite games is a short game (only 20 rooms) called “Search for the Key” (#80) by Donald Brown. For the casual player this game probably doesn’t do much for them. You cannot en 3 days ago

In the March 1991 issue of the Eamon Adventurer’s Guild Newsletter, Wm. Trent described a mystery involving Donald Brown’s The Search for the Key:

Dear Tom,

One of my favorite games is a short game (only 20 rooms) called “Search for the Key” (#80) by Donald Brown. For the casual player this game probably doesn’t do much for them. You cannot enter this game with a powerful character but as a beginner. I note that it is rated as a 2. My rating for it since it is such a challenge would be about 7. I have played it at least 200 times and have lost only about 5 times in the last 150 times. I would say that I know more about this little game than the author. Usually I lost because of broken weapons so that I had no way to eliminate the black panther. I usually finish up with $80,000 to $100,000 and four of the best weapons that money can buy. I don’t know anyone who ever was able to get more than two weapons. At one time I was running it as the Eamon Challenge on our BBS offering anyone who could come out of the game with $40,000 a $25 prize. No one solved the mystery so I have not revealed it. I doubt if the author even realized the quirk in the game which allowed me to win this way. I wonder if you or any of the other adventurers can figure out how I do it. - Wm. Trent

Nobody solved his challenge.

Years later, when I corresponded with Trent, he could no longer remember how he had done it.

In 2026, with considerable help from ChatGPT, I believe the mystery was finally solved.

Reverse-engineering the actual Eamon disks

The breakthrough began almost by accident.

I recently realized that ChatGPT could now Apple II .dsk disk images. Rather than relying only on walkthroughs, reviews, or surviving documentation, ChatGPT could examine the disk catalog, Applesoft BASIC programs, room and artifact data, monster statistics, and special game logic.

I first uploaded John Nelson’s standard Eamon conversion of The Search for the Key, Eamon #80.

ChatGPT reconstructed the dungeon and found several quirks that were not obvious from the published reviews. Among them was an unintended way to avoid fighting the Black Panther: the player can FLEE into the Key room, GET KEY, and then use the Key as described in the introduction by entering:

    SAY <your character's name>

The player is then teleported home.

But that still did not explain Trent’s extraordinary amount of money or his four excellent weapons.

More importantly, something Trent wrote did not agree with Nelson’s converted version:

“You cannot enter this game with a powerful character but as a beginner.”

Nelson’s standard #80 contains no such restriction.

That suggested we were looking at the wrong disk.

The original tournament version

Fortunately, a copy of Donald Brown’s original tournament version of The Search for the Key survives. I had never actually seen this version before. After locating it on Huw Williams Eamon Wiki, I uploaded the tournament edition of the game and we were able to compare both:

  • Donald Brown’s original self-contained tournament disk.
  • John Nelson’s later conversion into standard Eamon #80.

The tournament disk was the missing piece.

Unlike the later conversion, it contains its own character generator, Main Hall, weapon shop, spell shop, character records, and tournament-specific game launcher.

And buried in that code were the answers to virtually every clue Trent had given us.

Trent really did have to use a beginner

The tournament version explicitly checks the adventurer before allowing entry.

It totals the character’s armor expertise and five weapon abilities. A brand-new character begins with a total of exactly 25.

If the total has risen above 25, the game rejects the player with:

    FOO! YOU HAVE ALREADY GOTTEN THE KEY!

So Trent’s statement was correct.

He really could not simply bring an experienced Eamon character into the adventure.

John Nelson removed this tournament restriction when he converted the game to standard Eamon, which helps explain why people studying #80 years later could not reproduce what Trent described.

The perfect “beginner”

The tournament character generator gives the player 48 points to distribute among Hardiness, Agility, and Charisma.

No attribute may be below 3 or above 24.

That means the player can deliberately create:

Hardiness: 24
Agility:   21
Charisma:   3

This is an exceptionally powerful fighter who nevertheless qualifies as a brand-new character.

The extremely low Charisma turns out to be the key to the entire mystery.

The Main Hall pricing bug

Every time the player visits Marcos or Hokas, the program creates a temporary Charisma value.

The relevant code is essentially:

    C2 = CH + INT(11 * RND(1) - 5)
    C2 = C2 + (C2 = 0)
    RTIO = 10 / C2

The program accounts for the possibility that temporary Charisma might become zero, avoiding a division-by-zero error.

But Donald Brown apparently never considered what would happen if it became negative.

With a permanent Charisma of 3, the random adjustment can produce:

    C2 = -1

The resulting price multiplier is:

    10 / -1 = -10

Prices become negative, and the purchasing routine then subtracts the price from the adventurer’s gold.

So if the price is -30,000:

    GOLD = GOLD - (-30000)

The player's gold increases by 30,000.

In other words, Hokas and Marcos start paying the adventurer to buy things from them.

The $91,000 clue

Hokas sells four spells.

At the -10 price multiplier, their prices become:

BLAST    -30,000
HEAL     -10,000
SPEED    -50,000
POWER     -1,000
----------------
TOTAL    -91,000

Buying all four spells can therefore increase the adventurer’s wealth by approximately:

$91,000.

That was the moment the solution became difficult to dismiss as coincidence.

Trent had written:

“I usually finish up with $80,000 to $100,000…”

The bug naturally produces almost exactly the amount of money Trent reported.

The player can repeatedly return to Hokas until the favorable temporary-Charisma roll occurs, making the process reproducible.

Four of the best weapons money can buy

With approximately $91,000 in hand, Trent’s other mysterious claim becomes straightforward.

Marcos will sell a “very good” sword with:

    Complexity: +10
    Damage:     1D8

The tournament Main Hall permits the adventurer to own four weapons.

So the player can buy four top-quality swords:

    SWORD
    SWORD#
    SWORD##
    SWORD###

This also explains Trent’s comment that his rare losses usually happened when his weapons broke and he could no longer defeat the Black Panther.

The four swords were not merely trophies.

They were spare weapons.

We reproduced Trent’s result

We then tested the theory on the actual tournament disk.

I created a character called TEST2 with:

    HD = 24
    AG = 21
    CH = 3

Using the negative-price exploit, I learned all four spells, acquired plate armor and shield, and bought four +10, 1D8 swords, then went on the adventure.

The resulting character screen showed:


That is almost exactly the result Trent described in 1991:

  • A beginning character.
  • Four of the best weapons money could buy.
  • Between $80,000 and $100,000.

One exploit beyond Trent

Our analysis of Nelson’s later conversion also uncovered another quirk.

The Black Panther, normally the final serious opponent, does not actually have to be killed.

The player can FLEE south into the Key room, then:

    GET KEY
    SAY <character name>

and teleport home.

Interestingly, Trent apparently did not use this method. His letter says that his occasional losses occurred when all of his weapons broke and he could no longer kill the Panther.

If he had known the FLEE trick, broken weapons would not necessarily have prevented him from completing the adventure.

So in one respect, our investigation may have found a shortcut that even Trent did not know.

Why the secret remained hidden

The mystery survived for decades partly because The Search for the Key existed in two significantly different forms.

Donald Brown’s tournament version included its own Main Hall and New Characters routine. 

John Nelson’s 1984 conversion retained the adventure itself but transformed it into a conventional Eamon adventure.

The economic exploit that made Trent’s feat possible was therefore largely outside the dungeon that later players knew as Eamon #80.

Someone searching the converted adventure for a hidden treasure room or a gold-duplication trick would never find the real answer.

The secret was in the tournament Main Hall.

Solution found

ChatGPT’s ability to inspect the original Apple II .dsk images made it possible to reconstruct both versions of the game, compare their BASIC code, identify the tournament-only beginner restriction, discover the negative-Charisma pricing bug, and test the resulting strategy.

We then reproduced Trent’s published claim on the original tournament disk:

    $95,301 in gold and four +10, 1D8 swords.

After approximately 35 years, Wm. Trent’s Search for the Key challenge appears to be solved.

---------

Disclosure note: This summary was made with the assistance of ChatGPT.

3 days ago

Key & Compass Blog - Aug 31

New walkthroughs for August 2026

On Monday, August 31, 2026, I published new walkthroughs for the games and stories listed below! Some of these were paid for by my wonderful patrons at Patreon. Please consider supporting me to make even more new walkthroughs for works of interactive fiction at Patreon and Ko-fi. Kinophobia (2025) by Bruno Dias In this spooky […] 4 days ago

On Monday, August 31, 2026, I published new walkthroughs for the games and stories listed below! Some of these were paid for by my wonderful patrons at Patreon. Please consider supporting me to make even more new walkthroughs for works of interactive fiction at Patreon and Ko-fi.


Kinophobia (2025) by Bruno Dias

In this spooky game, you play as an exorcist hired to spiritually cleanse the abandoned and haunted Armature Studios of its twenty-four ghosts who each died in a different year. To banish them, learn their names, causes of death, and years of death. Ari, your research assistant, is just a text away.

This game was an entry in Ectocomp 2025’s Le Grand Guignol (English) division, placement to be determined.

IFDB | My walkthrough and maps


Grand Island Bank Robbery (2026) by Mathbrush

It’s Valentine’s Day, 1925, in Grand Island, Washington. In this triptych story of crime, justice, and love, you play as Cooper “Coop” Johnson, a would-be ne’er-do-well. To become the newest member in Boss Hogg’s gang, find and collect all the treasures hiding in the Grand Island Bank. Can you do it? Should you? What would the boss say?

This game was an entry in ParserComp 2026, placement to be determined.

IFDB | My walkthrough and maps


Dead Man’s Chest (2026) by Garry Francis

In this game, you play as a nerd who, while doomscrolling old newspapers in the library, read that the treasure chest of the notorious pirate, Captain Cutter, is hidden somewhere in or near his now-abandoned Scottish mansion. This is your chance to be the treasure hunter you always wanted to be! You plan to break in and find that dead man’s chest for yourself.

This game was an entry in ParserComp 2026, placement to be determined.

IFDB | My walkthrough and maps


Acid Whiplash, or, Rybread Celsius Can’t Find a Dictionary (1998) by Ryan Stevens (as “Rybread Celsius”) and Cody Sandifer

In this surreal extravaganza, you seek fulfilment by learning more about Rybread Celsius, that fabled interactive fiction author who is both regaled as a master wordsmith and reviled as a gibbering gargoyle. Find a dictionary and enjoy mad textdumps! Hic! Haec! Hoc! Who loves ya, baby?

This game was an entry in IF Comp 1998 where it took 23rd place.

IFDB | My walkthrough and maps


The City (1998) by Sam Barlow

In this odd small game, you play as a man in a featureless room with a video recorder, a tape, and a control. The sole exit leads to a dead end where a suited man is standing. Play the tape, ask the man your questions, and learn what you can about the city.

This game was an entry in IF Comp 1998 where it took 13th place.

IFDB | My walkthrough and map


The End Means Escape (2000) by Steve Kodat (as “D.O.”)

In this short but exceedingly surreal game, you start in a room where everything moves and talks on their own. Later on in this adventure, you’ll escape from a dictionary, meet people who don’t move or talk at all, and orbit a sun.

This game was an entry in IF Comp 2000 where it took 21st place. At the 2000 XYZZY Awards, it was a finalist in the Best Puzzles category.

IFDB | My walkthrough and maps


Nerves of Silicon (2026) by Dissolved (aka DissoluteSolute)

In this short sci-fi game, you play as Sam Nave-Trench. You drew the short straw, so you’re the first to wake from suspension. Your coldsuit is here to protect you from Antarctica’s chill. You find a memory of you, Acacia, and Janet at your wedding. And there’s the mindstrate in which your essence recently resided within its spooky silicon nerves. But you have a job to do. You may well have forever, but let’s not waste it.

This game was a participant in Shufflecomp 2025, where it placed 12th overall, and 13th place in the Use of Songs.

IFDB | My walkthrough and map


A Very Strong Gland (2024) by Arthur DiBianca

In this sci-fi puzzlefest that uses limited commands, you are abducted by aliens to their vessel so they can test your intelligence gland. During the testing, the vessel crashes. Gain their trust and help them fix their own vessel, proving you have a very strong gland indeed!

This work was an entry in IF Comp 2024 where it took 19th place.

IFDB | My walkthrough and map

4 days ago

Renga in Blue - Aug 27

The Temple: Dangerous to Move In the Dark

(Continued from my previous post about what is likely the first adventure game written in Sweden on a home computer.) I may not have squeezed out every single piece of working game from The Temple, but I’ve squeezed out most of it. Once past the initial issue, the game’s crashes don’t come back until later, […] 9 days ago

(Continued from my previous post about what is likely the first adventure game written in Sweden on a home computer.)

I may not have squeezed out every single piece of working game from The Temple, but I’ve squeezed out most of it. Once past the initial issue, the game’s crashes don’t come back until later, but they come back spectacularly.

The only Janic bag I’ve found multiple pictures of, from Tradera. They were the company that later picked up Commodore products and ended up sending their PET computers to Datatronic when they went bankrupt.

Exterior of Janken Minidata, where the PET computers eventually ended up. Source.

I switched to just using v1 (although anyone adventurous enough to edit the game might want to look at the early version of the game as well). After fixing the “burn” issue (where I changed “go” into “goto”) and I made sure to use directions with abbreviations (“n” instead of “go north”) I was off and running again. It took a while before another hard crash. I still am not clear if this was “left unfinished” or just undone by the bugs (caused by bad transfer issues, perhaps?).

To recap the action, we start in a cell with a bed that has a pillow and matches, and nothing else useful. If you hang out long enough in the toilet room someone arrives to deposit an item.

Me messing around with random directions in case leaving room directions out is one of the game’s issues.

Regarding the “kn” typo above, I assume the intent is the word “in”. In PETSCII the binary for “k” is 01001011 and the binary for “i” is 01001001, exactly one bit difference; of course it could be a perfectly ordinary human-made typo, but this sort of thing does make me suspicious. (See “Scgtt Adams” from The Golden Voyage, clearly a one-bit error.) The game also uses KNVENTORY rather than INVENTORY.

Going back to the main cell, there’s a bowl with food, and inside the food is a saw-blade. It looks like we have a friend on the inside, on our mission, which is to (????). (Really, I still don’t know. There’s dragons later and a diamond but the game just being a treasure raid doesn’t mesh with something else you’ll see later. Maybe it’s a mixed quest where we have multiple goals.)

You can then cut the door with the saw (“That was a hard work”) and get farther inside.

The first of three maps.

There’s a “gray corridor” with a locked door we can take care of in a moment; going upstairs to the kitchen, you can find a knife in a cupboard (which will get used much later).

There’s also a warning about “watchers” in the room to the east which you fortunately don’t need to heed too closely.

They’ll only wake up if you PRESS BUTTON which sets off an alarm.

The keys can be used to both the window and the downstairs door. It’s better to unlock the window first because once you unlock the downstairs door (another cell) you’ll lose the keys going in.

You’ll lose the keys even if you drop them off elsewhere first and aren’t holding them, so this counts as a bug, but maybe it’s a bug in a “plot continuity” sense; you need the wire to get out of prison, and there’s more keys outside the prison, so this is a clean way to avoid referring to two sets of keys. Just: it’s a softlock if you lose them too early.

So far, the items: matches, pillows, wire, knife, explosives. Heading outside the window, there’s a fire-escape going up, another locked door, and an exit to the west. There’s another locked door (which you need those keys for!) although the door is jammed from the other side so you can’t go through anyway.

To the west in the prison yard there’s a parked car, but you can’t do anything with it yet, so it’s time to go up the fire-escape and use the wire as a rope.

Can you climb a wire in real life? It happened in Ferret as well.

This is not an intensely guarded prison, but I’m guessing our Man on the Inside might have helped with that.

The landing spot has some driftwood and a boat at a sea. If you try to swim in the sea, you die; if you try to go via boat, you die.

It is faintly possible this is not just intended as a death-trap; while this is a “biome journey” of sorts like Wizard and the Princess nothing is one-way. In fact, it seems to be useful to maybe go back into the prison.

The reason you can’t unlock and go through the front door of the prison is the stone as seen above. I would think the explosives would take care of that problem but I never got them to work. If you do this, when you get the car-keys later (which you’ll see shortly) I think you can possibly drive the entire car out and do things with it.

Moving on from the unexploded rock, heading north there’s a ferry. Get on and you can find a radio, the car-keys (told you) a book, and a button. Pressing the button causes the ferry to move to a new destination. You can re-press the button to go back.

Voilà, the third map:

Straight off the bat you can find a pistol (if you try to KILL anything before finding the pistol the game says you need one). Then there’s a bit of branching, including:

▸ a desert with an note, a torch, and a cactus; the note says the nose can be very useful.

▸ relatedly, on a “narrow ledge” you can find a pamphlet mentioning you can TURN the nose in all directions

▸ a “high wall” with some scratchings; reading them reveals the word DIRAM, although I tried to use it and crashed the game

▸ a “liane” in a swamp which baffled me for a while; I realized after a bug I’ll show off later that it was referring to liana vines but for a while I thought it was a person and tried to talk to them

▸ with the liane you can tie it to a pillar at a collapsed bridge and retrieve some ratsbane

The use of the word reminds me of Citadel Adventure using the word “embrassures”. Sure, it’s technically a word in English (spelled wrong) but it’s extremely rare compared to all the other English words; this is the sort of move someone who learned English as a second or third language would make. I would guess the Swedish equivalent (lian) is more common? Mooware on Bluesky pointed out that liane is vine in German (spelled that way) so maybe Stefan Modin was just mixing languages generally.

Now, for that bug that led me to realize it was a vine in the first place: if you go north from where you find the pamphlet, you’ll end up in a dark place.

I was able to goto 7 and keep the game going, but without light. I tried “go hole” and usually died…

…but one time I successfully made it, coming across a treasure with dragons and a chest.

The buggy room has a letter you can read and find the word LOUZI; trying SAY LOUZI teleports you to a new area.

The new area includes a pit with rattlesnakes and a shovel. I have tried digging many places with the shovel although I admit I have not tried digging all the places with the shovel (that is, taking it all the way back to the prison yard etc.) I feel like I’ve hit the “broken threshold” enough that I can’t distinguish between a puzzle and a bug, so this seems like a good spot to close things up for now. If I ever get confirmation the game is fixed to the point of being completable (maybe not all the bugs) I’ll take another swing.

For now, we’re headed back to England, as coming up: Twin Kingdom Valley.

9 days ago

Choice of Games LLC - Aug 24

Author Interview: Brennan Gilpatrick, “God of Chaos”

Defy nature’s laws and avenge your slain pantheon! Humanity once feared and hated you, but now, awakened from a thousand-year slumber, you are their only hope. Will you liberate them from the tyrants who now rule over them, or let the world burn? God of Chaos is a 325,000-word interactive dark fantasy novel by Brennan Gilpatrick. It releases next Thursday, September 3rd, and you can wishlist it on 11 days ago
God of Chaos

Defy nature’s laws and avenge your slain pantheon! Humanity once feared and hated you, but now, awakened from a thousand-year slumber, you are their only hope. Will you liberate them from the tyrants who now rule over them, or let the world burn? God of Chaos is a 325,000-word interactive dark fantasy novel by Brennan Gilpatrick. It releases next Thursday, September 3rd, and you can wishlist it on Steam today! We sat down with Brennan to discuss the game.

You’re coming to Choice of Games with a lot of videogame-writing experience, most notably for the first-person shooter Payday 2. What was it like writing for an established franchise? How did you approach writing within the boundaries of an already-created property?

Payday 2 will always have a special place in my heart. My friends and I played that game to stay connected during the pandemic, so joining that narrative team not long after was incredibly exciting. It was also a big responsibility. The Payday franchise has a devoted and vocal fanbase; they’ll let you know if you get something wrong.

When writing for an established franchise, my first priority is to understand the characters. I study their personalities, histories, relationships, et cetera. Through this, I receive crucial insights about the storyworld. Personalities show me the story’s tone. Histories reveal the rules and mechanics of the setting. Relationships teach me what behaviors are “believable”. Characters are the first aspect of a story that audiences connect with, and Payday 2’s ensemble cast is particularly beloved. Once I felt I could write those characters, everything else came together.

In God of Chaos, you’ve created the potential for a massively powerful PC, which had to be a lot of fun! How—if at all!—did you constrain the PC’s power? And conversely, what’s your favorite wacky thing that the PC does with their power?

Writing the PC in God of Chaos was a blast! Whenever I read about different mythologies, the trickster deities always seem to have the most fun. I really wanted to capture that free-spirited mayhem here.

However, I knew the PC’s power couldn’t go totally unchecked. The stakes would feel nonexistent. My solution was not to nerf the PC, but to raise the danger of the world around them. Early in the story, an Alchemist faction develops an arcane crystal that can, among other things, kill a deity. When they conquer the land, the Alchemists integrate this crystal into their weapons, their machines, everything. The one thing that can harm the PC becomes woven into the very fabric of civilization. Boom! Stakes galore.

My favorite flex of the PC’s power happens near the middle of the story. During a ballroom fight scene, the player receives the opportunity to: A) present themself as a massive cosmic entity, B) take command of the gruesome undead soldiers present, or C) hypnotize the Alchemists into a group dance Beetlejuice-style. Each of these scenarios was so much fun to write, and I think this moment really captures the PC’s versatility. You can be epic, horrifying, and downright absurd; all are equally valid to the character.

There’s some fascinating worldbuilding in God of Chaos: you’ve got Fey creatures and divine magic on the one hand, and railroads and flying ships on the other. What’s the dynamic between magic and technology in this world?

The dynamic is combative to say the least. In the beginning of the story, Vildmara is a land of gods, monsters, and everything in between. The human race grows desperate for some sense of control, and they use technology to achieve it. In classic human fashion, they overstep. Vildmara becomes the Iron Shelter, an empire of machines and industry.

Technology in this world seeks to eradicate magic, and vice versa. As the last living god, the PC has a chance to decide how things play out. They can favor chaotic magic above all else, or embrace technology and the control it represents. Or, they can strive for balance. Or ignore the struggle entirely and just wing it. It’s up to them!

In addition to your extensive game-writing career, you’re also a novelist! Your debut novel Battery Life is set in a sci-fi dystopia–a very different world from the one in God of Chaos. Where did the seed of that story come from?

It’s so funny you bring this up! I was recently comparing Battery Life to God of Chaos, and while the settings are very different, I noticed some thematic overlap. Both stories concern the painful transformation of a world. In Battery Life, it’s our Earth plunging into a neon-soaked dystopia. In God of Chaos, it’s a fantasy world forced into an industrial revolution. I must have dramatic, world-shifting cataclysms on the mind. Wonder what that’s about!

I wrote Battery Life from a story that I outlined with my best friend since high school. It’s an amalgamation of all our favorite sci-fi concepts from books, movies and video games. It’s also a meditation on the unreliability of mentor figures; something I was working through while writing. The story involves a young woman whose remote space station crashes back to war-torn Earth, landing her in the path of a charismatic and untrustworthy scavenger. It’s a love letter to post-apocalyptic roadtrips. If people like God of Chaos, they should check it out!

What are you working on next?

Great question! I’m currently doing narrative design for an RPG project in its early stages. I can’t say too much about that yet, but the team is very talented, and I think we’ll have something cool to share soon!

Regarding personal projects: I have a few ideas for a new interactive fiction game, and I’m about to DM again for the first time in ages. I also have an outline for a dark romance horror novel, inspired by my strange late-night drives while living in LA. I’m very excited about all of these concepts; I just need to decide what to tackle next. Stay tuned!

11 days ago

Zarf Updates - Aug 22

Rusty Lake and Hidden Town

I am always happy to see another Rusty Lake game. It's not a high-velocity studio, but they're reliably high-quality and enjoy experimenting with their chosen form. (Co-op gameplay! Short film!) I am also always happy to see another Rusty Lake ... 14 days ago

I am always happy to see another Rusty Lake game. It's not a high-velocity studio, but they're reliably high-quality and enjoy experimenting with their chosen form. (Co-op gameplay! Short film!)

I am also always happy to see another Rusty Lake knockoff. These are pretty common; creepy-haunted is not a complicated vibe. I've got a whole folder on these on my iPad. The Strange Case series; Hotel Orpheus; Forgotten Hill...

...My folder is labelled "Submechanical", because when I first played a Rusty Lake game -- or "Cube Escape", as it was titled back then -- I decided it was a Submachine knockoff. It turned out to be a speciation event instead; but of course that's hindsight. My point is that there's nothing wrong with being a knockoff, especially at three bucks on the mobile store.

Now I have played both the new Rusty Lake and a new batch of "if you enjoyed that, why not try...?"

  • Servant of the Lake
  • Hidden Town (series)

Servant of the Lake

This year's Rusty Lake experiment is... realism? Okay, not really. But Servant of the Lake is distinctively not set in a hallucinatory dream-box. It's populated by living (if Gorey-esque) Vanderbooms, not corrupted souls. And you are almost certainly not dead.

Not to say that the Rusty Lake crew has never taken this tack. But Servant of the Lake has a more grounded storyline than most of the series. You arrive at the manor house as an extra hand, helping Aldous Vanderboom and his housemaid with a weekend family gathering. You will clean, cook, and serve dinner for three days. Then you will depart.

The game is framed around that schedule and your task list. Also the manor, which opens up as you progress through the weekend. It's a steadier basis than we usually get. And while there are plenty of puzzles mixed in, you're generally after some straightforward goal like "porridge". ...Until you're not, of course.

It's a pretty substantial game overall. The individual tasks are bite-sized, but there's a lot of them. Then there's a big list of side tasks which you can go back to if optional-bonus-stars are your thing. They're generally not my thing, but there's also a hint of extra storyline which I have not yet investigated. Hm.

I know it sounds weird to say that linear time and a mappable world are delightful innovations. For once, they are. Expectations, ya know? I'm sure that the next venture to Rusty Lake will be off-beat in a different direction.

By the by, I name-dropped "Vanderbooms" as if we all knew the Rusty Lake continuity by heart. In fact I cheerfully disregard it. There's a family tree in one of the games, isn't there? No clue how Servant fits in. It has a 19th-century vibe (you arrive in a horse-drawn carriage) but nothing is definitive. If there's some kind of over-arching plotline, the developers have never tried to sell me on remembering it.

EDIT-ADD: Whoops, forgot a document at the start that specifies the year 1839.

Hidden Town (series)

As I said, I occasionally browse the App Store for this kind of game. A couple of weeks ago one popped up with the title Hidden Memories. This was, in fact, a series of nine games that launched on iOS all at once. No, it's not somebody turning a vibe-coding crank. It's a studio called Dark Dome which has been releasing games on Android for years; then they got ported to iOS en masse. Also coming to Steam at the end of this month! I don't know if they'll break out, but the devs are giving it their best shot.

So what are the Hidden Town games like? You've already gotten the idea. You're locked in a room, or a few rooms. Something Creepy Happened. There's locked doors and drawers and cabinets. Each one requires either a key or a four-symbol combination. Combinations are hidden in modestly clever clues or environmental puzzles. Repeat until shocking conclusion.

I'm making it sound rather formulaic, but really that's just because I binged several years' worth of games in a week. I did that because they're pleasant and diverting and when you finish one you're happy to jump into another one.

The games are on the narrative side, like Servant. But Hidden Town doesn't have the hard edge of Rusty Lake. It doesn't go for body-fluid humor, and the characters are all cuties. (As opposed to the haunt-raddled wrecks who populate Rusty Lake.) Then again, the cute art only adds to the sting when somebody turns out to be evil or possessed or whatever's on this week. Hidden Town isn't a happy place.

One minor confusion: each game ends with an epilogue chapter labelled "Premium Content". On iOS, this is not a separate add-on; it's part of the base game, which you pay for up front. (I guess the iOS versions are all "premium content".) I assume it worked differently in Android-land. My guess is that Steam will work like iOS, but we'll see.

As with Rusty Lake, the games are lightly tied together. The epilogue chapters generally feature characters from other stories dropping in or getting caught up. As with Rusty Lake, this is flavor, not crucial. You can play the games in any order, and you definitely don't have to make a crazy-string wall to keep track of the connections.

The Dark Dome developers are based in Peru. The English localization (or writing, I don't know their process) is sometimes shaky. On the up side, they can mix a bit of authentic Inca mythology into the general cult-creepy setting. They don't go overboard it with; only a couple of of the games really delve into that aspect. But it's a nice change of pace from "witches".

An enjoyable binge, anyhow.

14 days ago

Interactive Fiction – The Digital Antiquarian - Aug 21

A Need for Speed

Looking back from the vantage point of today, it’s hard for even me to believe, but it’s true all the same: I used to be a full-blown car guy. I bought my first car, a 1966 Volkswagen Beetle, for $800 in 1989, when I was sixteen years old. The bad thing about a Beetle was […] 15 days ago

Your humble author in 2009, with his last even vaguely cool car, a 2000 Volkswagen GTI. I sold the GTI and left the United States that same summer. I wouldn’t own another car for ten years.

Looking back from the vantage point of today, it’s hard for even me to believe, but it’s true all the same: I used to be a full-blown car guy. I bought my first car, a 1966 Volkswagen Beetle, for $800 in 1989, when I was sixteen years old. The bad thing about a Beetle was that you could generally expect no more than 60,000 miles or so out of the motor; the good thing was that you could rebuild the motor in your garage over a long weekend and make it good as new again. My inner Luddite, who seems to become stronger almost by the day in our current era of feverish tech-sector nonsense, still feels that something was lost when we stopped making cars that were so amenable to shade-tree mechanics.

I had a couple of other Beetles over the decade and a half that followed that first one, along with a number of other vehicles that made them look like the height of sober-minded practicality.

I had a 1965 Ford Mustang that was rusted out so badly it was literally on the verge of breaking in two. (I maybe should have taken a look underneath before I bought it.) I sold it to a fellow who ran an import/export business; the plan was to send it to Finland for restoration and resale, which means my old Mustang may have beat me to northern Europe by about fifteen years.

I had a 1969 MGB that was determined to prove every cliché about the quirky unreliability of British sports cars to be the gospel truth. I learned that there’s a reason that Lucas Industries, which was responsible for the electrical systems in those cars, is known in enthusiast circles as “the Prince of Darkness.” That MGB is the only car I’ve ever driven where you had a choice between headlights and windshield wipers; there wasn’t enough juice to run them both at the same time. Then again, you probably didn’t want to be driving in the rain anyway, because never was an MGB made without a top that leaked like a sieve. All that aside, the car was a hell of a lot of fun whenever the weather was good and it decided it was in the mood to start.

I had a 1975 Nissan — or Datsun, as they were known in the United States back then — 280Z. It was more fun to drive than any car I’ve ever owned, even the MGB, with an in-line six-cylinder engine that was the stuff of which car-nerd wet dreams are made. For some reason, I decided to swap that 280Z for a 1981 280ZX. I knew I had made a terrible mistake within a week, even if the new car did have the exact same engine. It was like trading the svelte Elvis of 1956 for the fat one of 1976.

But the all-around funnest vehicle I’ve ever owned — not just fun to drive, but fun in general — was a 1972 Volkswagen camper van. It would do about 50 miles per hour flat-out on level ground. Driving it felt weirdly like guiding a boat, and not only because the engine was chirping away about fifteen feet behind you when you sat at the wheel. You could expect a delay of several seconds to any control input as it bobbed and swayed gently on its well-worn springs. So, you just kind of pointed it in the general direction you wanted to go and hoped for the best. Looking back on it, it was a good thing that it wouldn’t go any faster.

That little Volkswagen bus could sleep four people — or rather two couples, assuming you didn’t want to cuddle too much with mere friends. There could be two in the back and two under the pop-up roof, with just a thin net between them and the great outdoors. It had a little refrigerator, a little stove, and even a little heater that ran on — I kid you not — pure gasoline. It’s a wonder that we didn’t blow ourselves up at some point during the weekends that we drove the magic bus up from Dallas to southern Oklahoma’s Arbuckle Mountains.

The joys of all of these oddball vehicles started to pale a bit for me as I entered my thirties. (Come to think of it, it was at about this same point that I started to feel too old for backpacker hostels; this must have been the borderline that marked the onset of a belated adulthood.) In 2004, I bought a Volkswagen GTI that was just a few years old instead of a few decades. It was a nice enough car, but it was kind of soft and heavy in the same way that the Datsun 280ZX had been. Still, it did have the advantage of being (more or less) reliable.

Then I moved to Denmark in 2009 with my new wife, and that was that for the car life. We didn’t even own a car for ten years thereafter. I re-familiarized myself with the lost (to me) art of biking, which is certainly a healthier way to get around as one closes in on middle age. These days we have a Hyundai Plug-In Hybrid, which is… fine, but it doesn’t exactly get the blood pumping, you know? Discounting the odd roadside emergency, I haven’t looked under a hood with deadly intent in seventeen years. I can’t even tell one (modern) car from another anymore.

And yet nothing that we have done and been in our lives ever truly and completely leaves us, does it? Our current house, which we moved into four and a half years ago, has quite a big yard, such that I have to cut the grass with a garden tractor. I still feel a certain quickening in my soul when I smell gasoline and oil and hear the motor fire up, still enjoy doing the maintenance myself. In fact, I just bought a new (to me) tractor this year; I’ll go so far as to say that it’s the best one in our village. I do like to ride around on it, the child being the father to the man and all. As one of my wife’s uncles likes to say, every man should have a tractor of his own, whether real or metaphorical.

But that’s far as I go these days. Sometimes I muse about getting a project car, but I know that I don’t really have the time, and probably not the long-term desire either. I content myself with the occasional veteran bil exhibition (as they’re called here in Denmark) and with seeing what’s on Jay Leno’s Garage each week on YouTube. (If it’s something old, I’m in; if it’s something new, I move on; if it’s something borrowed or something blue, I’m as confused as you are.)

Here’s the weird thing, though: I never had all that much interest in driving cars on the computer, even when my passion for the real McCoys was at its peak. Of course, there are various sub-genres of driving games, as there are of all other types. I’m not so surprised that I never got into the hardcore racing simulations, where it becomes all about grip and downforce and gear ratios and wind-tunnel coefficients and many other numbers I don’t really understand. God bless those who like that sort of thing, but I never had the patience for it, whether the vehicle being modeled is an airplane, a ship, a submarine, or a racing car. Yet I never cared much more about what we might call the aspirational driving games: you know, the ones that assemble a bunch of exotic street cars and set you loose with them, on the premise that, if you can’t afford them in the real world, you can satisfy at least some of your lust for them vicariously on the computer.

I think the problem for me here was that I didn’t aspire to what these aspirational games were offering. At some point many years ago now — definitely before I learned to drive in the real world — high-end sports car reached a level of performance that made them, in my opinion, less rather than more fun. They started to not just include but require traction control and all manner of other driver-assistance measures just to make them controllable, which detracted from the purity of the experience. At the same time, they became so ridiculously fast in comparison to the traffic laws of the realm that I’m left wondering what you’re actually supposed to do with them, assuming you don’t want to be a jerk who endangers everyone else on the road and likely gets himself thrown in jail and his car confiscated before all is said and done. (Denmark isn’t known for being tough on crime, but they do love to confiscate cars here…)

There’s an old saying that has long been my mantra on this subject: “It’s more fun to drive a slow car fast than a fast car slow.” Just last year, my wife and I took a holiday to Zagori, a mountainous region in the northwest of Greece, close to the border with Albania. We were there to hike, but I had just as much fun driving our rental car, a Ford something-or-other with a gerbil wheel attached to a couple of rubber bands for an engine, up and down switchback mountain roads that sometimes had me shifting all the way down to first gear. I know that electric cars are the socially responsible future and all, but I’m a little sad that I most presumably won’t be able to rent a simple, basic traditional car like this one for much longer, then proceed to wring every last bit of potential out of it in the old-fashioned, manual way. In my book, that’s a lot more fun than driving a Ferrari responsibly on the same roads would be.

Waiting for goats to cross the road in the Pindus Mountains. A little later, the goat herder emerged, and we had a “conversation” that relied principally on smiling and gesturing. It may be a romanticized whimsy, but I kept thinking that his life wasn’t all that different from that of his ancestors of 1000 years ago. There’s a part of me that hopes his descendants are still living the same way 1000 years hence.

In short, then, the aspirational driving sims were sold on the premise that you really, really wanted to own the exotic cars they featured, and I never particularly did; if we’re being completely honest, I find most post-1970s supercars to be painfully tacky-looking in addition to everything else. This goes a long way toward explaining why I’ve scarcely seen fit to mention driving games in these histories before today. On top of my personal proclivities, I would add one last factor. Some gaming genres, I’ve come to learn, age better than other ones, and thus do more to encourage re-visitation. If you ask me, adventure, puzzle, and action games age the best, followed by CRPG and strategy games. (The latter tending to be more complicated genres in general, they do often fall completely or partially victim to shifting interface conventions; we’ve learned how to present information and let the player twiddle the knobs so much better over the decades that going too far back can be a pain.)

At the bottom of the heap in this respect are undoubtedly sports games and vehicular simulations. As purported simulations of the real world, such games foreground technology more than they do design, meaning that there’s less reason to revisit them when the technology moves on and can present simulations of a better fidelity. If you were to create a list of the most prominent and respected designers of gaming’s various ages, you would find that virtually none of them worked in these genres. (The only name I can think of off-hand is Sid Meier, who did so very early in his career, a fact that I hear trotted out from time to time as a curious anecdote: “Did you know he used to make flight simulators before Pirates! and Railroad Tycoon and Civilization?”)

Sports games and sims tend to be as ephemeral as they are anonymous. The former are generally cranked out on an explicitly annual basis, with the year appended right there to the name, with all of the teams and athletes of right now. If you’re still stuck with an earlier year’s edition, and if you don’t happen to be a very special sort of cultural time traveler indeed, you’re left out, bereft and bereaved. You can still find plenty of die-hard partisans of Civilization II or IV or VI. I presume that you can also find footie fans who insist that FC 24 is where it’s really at and the later versions are pants — you can find anything on the Internet if you look hard enough — but they seem to be a lot less common. Driving games are for all practical purposes the same. Each new annual or biennial edition of the big franchises comes chock-a-block with all of the hot cars of that moment. Who wants to be stuck with a bunch of old cars? (I do! I do! But much older…)

All of which helps to clarify why a quick glance around the retro-gaming blogosphere reveals a CRPG Addict, a Wargaming Scribe, an Adventurers’ Guild, an All the (Text) Adventures project, even a Space Game Junkie, but no one seems to be documenting every iteration of Tiger Woods PGA Tour or Microsoft Flight Simulator in similarly granular detail. Call it the rest of the explanation of why I too have given those genres short shrift in these histories.

Nevertheless, said histories do try to capture the landscape of gaming as it was viewed at the time, not just the nostalgic, fannish perspective of today. Sports games and vehicular simulations were a huge part of that landscape, representing as much as 40 percent of the market at times during the 1980s and 1990s. So, today I’ll try to remedy my neglect at least a little bit, by tracing aspirational driving games back to their point of origin. (Sports game will have to wait for another day.) This will lead us nicely into a big exception to the general rule I’ve just belabored at such length: the one vintage driving game that I actually do dig, even today.


The exception to another rule, that of me ignoring driving sims in the past, is a game called Test Drive, to which I devoted a handful of paragraphs many years ago. Developed by a Vancouver-based outfit called Distinctive Software and published by Accolade in 1987, Test Drive was a fine place to break my silence on the subject of driving sims, however briefly, in that it was arguably the most important such game ever to appear on personal computers. I say this not because it generated enormous sales — it was a big success by the standards of its time, but later driving sims would sell many, many times more copies — but because it was the template for countless games to come. For it introduced the driving sim as an aspirational lifestyle product, almost as much an exercise in branding and promotion for the car makers whose vehicles were included as it was a self-contained game.

Test Drive offered up five of the cars whose posters could be found stuck to the wall in teenage-male bedrooms from sea to shining sea: a Porsche 911 Turbo, a Ferrari Testarossa, a Lotus Esprit Turbo, a Lamborghini Countach, and (for those with slightly less exotic tastes) a Chevrolet Corvette. You got to pick one of these cars, then drive it up a twisting mountain road as quickly as possible, dodging slower traffic and trying to stay ahead of the police cars who were in somewhat inept pursuit. The meta-game that took place when you weren’t behind the steering wheel extended no further than trying to get your time on a high-scores list. It wasn’t much in comparison to what these games would become — but it was enough. You got the chance to drive a car you weren’t likely to ever even ride in, and you got to do it in all the reckless ways that only a maniac would in real life. For the car manufacturers, being featured in sleek and stylish games like this one would soon become an important promotional strategy, creating the customers of tomorrow from the teenagers of today. It was an early step in gaming’s integration into the larger consumer economy, one which happened at almost the same time that sports games began to move toward a season-by-season model that kept them in tune with the latest headlines on ESPN.

Just to further blur the lines between game and advertisement, between game and aspirational lifestyle product, Test Drive helpfully included the sticker prices of each of its cars on the information screen alongside all of the other statistics.

The bona fides of games like these as simulations was a case of a delicate balancing act. On the one hand, you didn’t want to make the cars too dauntingly difficult to drive, in the way of so many hardcore flight simulations — or for that matter some hardcore motorsports simulations, such as Papyrus Design’s IndyCar and NASCAR series. On the other hand, you wanted to ensure that the player could tell the difference between a Countach and a Corvette. You wanted to convey the impression of what it would be like to drive a supercar, in a way that remained accessible even to kids who might not have a driver’s license for the family minivan yet. Michael Bate, a designer for Artech, another Canada-based studio whose works were published by Accolade during the 1980s, called games hewing to this impressionistic philosophy “aesthetic simulations,” a neologism I’ve returned to again and again ever since I first heard it. Hanno Lemke, the producer of Test Drive, describes that game’s goals in classic aesthetic-simulation terms: to “create the most immersive, visceral, and relevant kind of car experiences [emphasis mine] you could imagine.”

When I grew up, it was the white Lamborghini poster in your bedroom or the red Ferrari, and it was very much about [how] the exotics mattered back then. And so, immersion was really important — getting into the driver’s seat, that virtual fantasy, you know. No real-life consequences — I can drive as fast as I want, the cops can chase me, but largely it was all about what it would feel like to drive these exotics.

Each dashboard in Test Drive was a painstaking re-creation of the real thing. This is, believe it or not, that of a Porsche 911. I would have expected a bit more for my money…

Accolade published sequels to Test Drive in 1989 and 1990, alongside separate boxed add-ons with new cars to try out and scenery to traverse, thereby pioneering the model of the driving game as an entire ecosystem you bought into. (Today, that model is driven by the ubiquitous DLC packs.) By Test Drive III: The Passion, other staples of modernity were creeping in as well, such as the ability to rewatch and share your exploits after a particularly good (or bad) run and even a radio where you could select your own station, although we were still a long way from the times when bands and singers would lobby almost as aggressively as car companies to have their music included in such products.

Despite its innovations, the third game was not as well-reviewed or well-received as the ones before. Accolade had developed this installment in-house instead of letting Distinctive do it; this may be the reason that many gamers found it to be lacking a certain ineffable feel for the road. Then, too, some of the design choices were just weird: Test Drive III made keeping your windshield clear of bugs into a central aspect of its gameplay. The franchise effectively ended here, not to be revived until years later, as an also-ran rather than a pioneer.

The third game’s shortcomings notwithstanding, if you’ve played or even seen any of the modern driving sims, and try out any one of these Test Drive games today, you’ll immediately sense the same vibe, even if you are less impressed by the implementation. That’s a remarkable thing to contemplate all these decades later. For all that gaming has changed, it’s amazing how much it’s stayed the same in some of its core genres.


Distinctive was acquired by Electronic Arts in 1991. The new EA Canada focused more than ever on, for lack of a better term, “lifestyle games.” Being Canadian, it was given responsibility for creating the annual installments of the EA Sports National Hockey League franchise in the exploding console-game space. It has continued to this day to crank out a new edition every single year: 34 installments and counting as of this writing. This must surely be a record of some sort.

Driving games soon returned to the agenda as well. EA negotiated a deal with Road & Track, a slick magazine that sold an only modestly more grounded version of the fantasy of fast cars with expensive price tags than had Test Drive. Hanno Lemke was put in charge of Road & Track Presents: The Need for Speed, with many of the same people who had helped him build Test Drive working under him. It was to be a launch title for the 3DO, a new games console cum “multimedia appliance” whose finances were thoroughly muddled up with those of EA: Trip Hawkins, the founder of EA, had left that company with his board’s blessing and plenty of their investment dollars to embark on this new venture. The 3DO was envisioned as a sort of lifestyle console, appealing to an older demographic than the likes of Nintendo and Sega. It requires no great imaginative leap to understand why a game like The Need for Speed could be a good fit with that vision. If all went according to plan, the same people who perused Road & Track might soon be picking up 3DOs.

The 3DO’s not-so-secret weapon was to be the CDs on which all of its games would ship. These CDs would in turn enable lots and lots of digitized video and sound sourced from the real world, a possibility which would have seemed like science fiction just a few years earlier. The Need for Speed embraced said possibility with all the enthusiasm that was expected of a 3DO game; you didn’t see a computer-drawn car on your screen until you settled down into the driver’s seat of one.

The video clips were typical of the era — which is to say, amazing simply for existing at the time of the game’s release in 1994, but ho-hum at best today. The worst decision was to add a shakily acted fellow named Mr. X to serve as the player’s antagonist, popping up from time to time with some trash talk. This was exactly as grating as it sounds like it would be, especially after you had seen him deliver every one of his limited repertoire of one-liners multiple (dozen?) times.

Mr. X has something to say about your performance. He is aptly described by a contributor to MobyGames as “a face you love to punch.”

The means of production of all this video reflected the fact that the games industry, for all its rapid evolution, still had a ways to go before it would be competing on a level field with Hollywood. EA didn’t even have the clout to borrow cars from the manufacturers whose vehicles were included. So, Hanno Lemke and his friends had to go begging. Luckily, Road & Track had whole filing cabinets full of still photographs of the cars in question that were ripe for digitizing. In the category of the moving image, the Ferrari Testarossa seen in the video clips belonged to Chris Roberts of Wing Commander fame, the Lamborghini Diablo to Richard Garriott of Ultima fame, and the Porsche 911 to an EA Canada executive. Other cars were scavenged by still more humble methods, being vehicles that the team simply spotted driving by and chased down to ask the owners if they were interested in making a cameo appearance in a videogame.

Speaking of people with punchable faces: Chris Roberts’s Ferrari. (I kid! I kid!)

Once you got past all of the multimedia-age gilding, however, you found a very credible aesthetic simulation waiting for you. The Need for Speed reinvented no wheels; it was a recapitulation of Test Drive on a larger canvas, right down to the vaguely hapless cops who lay in wait to chase you down public highways. Once again, you had a selection of mouth-watering sports cars to hand, updated to reflect the latest developments in the field. (This time, the Japanese got a chance: no fewer than three of the eight cars — the Mazda RX-7, the Toyota Supra, and the Acura NSX — came from the Land of the Rising Sun.) But it was all done better, reflecting the seven years of steady technological advancement that separated The Need for Speed from the original Test Drive.

The game nailed the look and feel it was going for. No one would accuse this of being a hardcore simulation of driving — not when you could bump and bash and grind against the other vehicles with impunity, when even crashing head-on at speed into the side of a building resulted in little visible damage to the car. (This was a requirement of the contracts with the manufacturers, who had no desire to see their halo vehicles getting smashed up and exploding on screens; such requirements are still the rule in the contracts of today.) Even the non-police computerized drivers you could race against — another advancement over Test Drive — were more interested in showing you a good time and keeping the adrenaline level up than they were in earnestly trying to win. As one reviewer put it, “the AI drivers don’t race; they shadow.”

Driving a Dodge Viper, one of the new supercars that had appeared on the scene since Test Drive.

The point was that it was fun, being just close enough — but not too close — to what racing cars such as these might really be like. The game presented an alternative universe where you could not only afford a supercar, but one where insurance premiums didn’t exist and the police would give you no more than a ticket and a stern talking-to if they caught you driving 170 miles per hour down a heavily trafficked road. This was a universe that teenage boys everywhere — even the ones who happened to be in their twenties, thirties, forties or fifties — could well and truly get behind.

But sadly for everyone involved, the 3DO console was a marketplace flop. On the supply side, a scheme for renting out the console’s specifications and firmware to multiple consumer-electronics makers proved a recipe for confusion, while the slightly older folks who wanted to play multimedia videogames in their living rooms of an evening in lieu of watching television proved rather less plentiful than anticipated. Still believing they had a good thing on their hands, one which was just on the wrong platform at the moment, EA Canada reworked The Need for Speed for ordinary personal computers. This allowed them to turn it into the biggest game ever to be born on Trip Hawkins’s misbegotten console.

Released in 1995, this incarnation of The Need for Speed dialed back on the most annoying aspects of the 3DO version — Mr. X got the well-deserved axe — while keeping everything that had made it appealing. In its review, Computer Gaming World magazine made note of the tightrope it walked with such aplomb: “Realistic elements are usually compromised for the sake of a quick learning curve and blazing arcade action. But Need for Speed is kind of an anomaly: it borrows some from both styles and thrills the senses along the way.” It became a huge hit on personal computers. It was then ported to the Sony PlayStation, a new CD-based console which had set out to do much of what the 3DO had, and would pull it off much better. The Need for Speed took off there as well. Indeed, in some ways games like these were always more natural fits for consoles.

“Balloons ahoy!” in the computer version of The Need for Speed.

So, out of the smoking rubble of the 3DO, a long-running driving-game franchise arose. Need for Speed II came out in 1997. Along with the definite article in the name, it dropped the Road & Track partnership; EA now had more than enough clout to get all of the glamor shots and test models it could want from the manufacturers. Some complained that the advancement was all in the department of graphics and sound, but that was fine for most fans of this most deeply experiential of all gaming genres. “Little details like hearing the shift click mattered back then,” says Hanno Lemke, who would continue to act as the franchise’s primary producer until 2007. “Watching the dials move mattered.” (There is a reason that I like to call these games aesthetic simulations.)

The series was moving now toward an annual release schedule, just like the sports games. In that spirit of ongoing perpetuity, Need for Speed III: Hot Pursuit, which came out in 1998, was the last installment with a Roman numeral and the first with a subtitle. To further press home the notion of Need for Speed as a subculture you bought into rather than a single game you bought, EA began to regularly put up new, downloadable content — most importantly, new supercars to add to the ever-growing list of same — on its website.

The police have upgraded their stodgy cruisers to Camaros in Need for Speed III.

In a decision which was polarizing in some circles but doubtless exhaustively market-researched, this installment leaned further toward the arcade game at the expense of the simulation. As its subtitle would imply, it heavily emphasized the police-chase aspect. The cops, who had verged on being little more than props at times in the past, could now go so far as to set up roadblocks ahead of you, complete with tire spikes. But, as Computer Gaming World’s reviewer captured, the core attributes of the aspirational lifestyle game, as deft at promoting the cars it featured as it was at being good fun in its own right, remained as pronounced as ever.

During the time I was writing this review, I went driving in the mountains. As I cruised along narrow, twisting roads, I kept thinking about how much the experience reminded me of playing Need for Speed III — at least as far as handling the car went. I wasn’t being chased by the police, and I wasn’t pushing my Lamborghini much past 60 miles per hour. Okay, so I don’t own a Lamborghini. But after playing this game, I sure wish that I did.

Need for Speed: High Stakes appeared right on time in 1999. In order to give the Buford T. Justices of the world some redemption, it let you become the police instead of forever being chased by them. But the less gimmicky, vastly more significant addition was that of a career mode, which finally provided a proper meta-game to bridge and give context to your exploits on the highways and raceways. You started with only enough money to buy what passed for a budget car in this august assemblage: a Mercedes SLK or a BMW Z3. You had to earn your way into the more exclusive rides by winning ever more challenging tournaments, whilst keeping your repair bills to a minimum in the process. High Stakes wasn’t quite the first aspirational driving game to introduce a career mode — that distinction belongs to Gran Turismo, a PlayStation-exclusive competitor — but it was a huge step forward nonetheless. Suddenly the individual races had… well, high stakes, that extended beyond the moment-to-moment maneuvering on the road, that might even cause you to exercise a modicum of caution out there from time to time. And as you progressed, you slowly amassed a garage full of tricked-out, exotic sports cars. I trust that I’ve flogged my hobby horse sufficiently by now to not have to tell you what this meant for these games as aspirational lifestyle products.

Your garage in High Stakes looks like a car dealer’s showroom. This is not a coincidence…

All of this was great, if you were interested in buying what these games were so explicitly selling. I must confess that I really wasn’t, even back in the day. The cars that were featured weren’t generally the ones I lusted after, and I found the whole presentation a bit too boy-racer for my tastes. But then Need for Speed took a surprising detour — one that would prove a bit of a blind alley for the franchise, but one that I enjoyed immensely. I’ll tell you all about that next time.



Did you enjoy this article? If so, please think about pitching in to help me make many more like it. You can pledge any amount you like.


Sources: Edge of October 1994; Retro Gamer 59 and 178; Computer Gaming World of February 1988, April 1991, November 1995, August 1997, March 1998, and January 1999; the Harvard Business School case studies “Electronic Arts in 1995,” “Electronic Arts in 2002,” and “Electronic Arts: The Blockbuster Strategy.”

Online sources include “A Distinctive Lineage” by Chris LaVigne for The Escapist, “How Need for Speed Became the World’s Biggest Racing Game” by Mack Hogan for Road & Track, and an interview with Hanno Lemke conducted by John Davison for 1UP.com.

Where to Get Them: Unfortunately, none of the games discussed here are available for legal purchase, presumably due to the expiration of the various licensing agreements with automobile manufacturers. It’s another reason that these sorts of games are so easily forgotten by history…

15 days ago

Zarf Updates - Aug 20

GDC status updates

Back in March I made a lot of hay about the decline of GDC. I didn't confidently predict that GDC'27 would be cancelled, but cancellation wouldn't have surprised me. Well, GDC'27 isn't cancelled. Which we knew. They would have had to announce ... 16 days ago

Back in March I made a lot of hay about the decline of GDC. I didn't confidently predict that GDC'27 would be cancelled, but cancellation wouldn't have surprised me.

Well, GDC'27 isn't cancelled. Which we knew. They would have had to announce a cancellation at or immediately after GDC '26. Turning a ship of that size takes a year of lead time, minimum.

Instead, as Cmdr. Takashima almost once said, GDC '27 is open for business. There's a shiny "What's New" page. To quote a couple of lines:

  • Introducing a new Business Hall at Moscone West, built specifically for meetings, networking, partnerships, pitches, and getting business done.
  • Opening the Festival Hall Tuesday through Thursday (previously Wednesday through Friday).
  • Making several pass and pricing changes designed to provide more accessible ways into GDC.

Oh, and I was right about Ball-Park Monday being a flop. That's off the list.

The important part is the new price list. $500 standard; $300 for student/indie; $150 for the expo hall alone; $100 for the "business hall" alone.

In some sense, this completely contradicts GDC's new mission statement:

The GDC Festival of Gaming is where the entire B2B games industry comes together.

That's from an og:description metadata tag on their front page, which is surely the most official possible source. It used to say "the game industry's premier professional event", but this "B2B" language came in last year. Similarly, their 2025 rebrand announcement talked about "the world's premier B2B gaming industry event".

But look, $150 for the expo hall is not a B2B pitch. It's a "get some foot traffic" pitch. It's aimed at curious passers-by and the Yerba Buena Park crowd, who might be willing to pay a small sum to go inside and check out the fun stuff. (Meaning the IGF and alt.ctrl.gdc.) (And hopefully Twine....)

In some sense this is an admission that GDC is not a premier event for the entire game industry. It's a bunch of unrelated ungulates in a trenchcoat.

What about the business hall? ("Designed around how business gets done at GDC.") I read that as an attempt to bring back all the offsite meetings. Last year, companies were renting GDC-adjacent spaces (and, indeed, entire GDC-adjacent hotels) to avoid the GDC booth tax. GDC will surely still charge three arms and a leg for a big fancy booth. But if you're just there to schmooze, they're willing to pare that revenue stream back to zero (almost zero; zero by corporate standards) in order to fill Moscone up again.

This fits well with the idea that GDC has a multi-year Moscone contract; they have to keep running the show. (Not a confirmed fact, but widely understood.) If so, the next couple of GDCs are effectively loss leaders for a more dominant future event.

So total attendance is the metric to keep an eye on. 30k in 2025; 20k in 2026. If it rebounds in 2027, GDC will keep going more or less as it has been. If it keeps dropping...

Don't look at me; I don't know.


As for me, I feel less connected to GDC than ever. Yes, I had a lovely time last year. But I no longer have any ambitions -- or even wild hopes -- connected to the game industry. Showing off the Visible Zorker to a large audience was the last of that, and it's done.

As far as I know, IFTF will be back on the show floor in 2027. (Not a confirmed fact but I'm pretty sure.) GDC is still willing to bring in the indie and nonprofit groups for free. That's all good. I haven't decided whether I will be there working the booth. I'd really like to hit all of Worldcon, Mysterium, and NarraScope in 2027. That may consume my travel budget for the year.

16 days ago

Choice of Games LLC - Aug 17

Free expansion for “House of the Golden Mask”

Today, we are thrilled to release a major, free expansion to House of the Golden Mask, the interactive fantasy novel by Ran Eastwood. Today’s update to House of the Golden Mask is available at no additional charge. To celebrate, we’re putting the entire game on sale for 30% off. Awaken your magic and break an ancient curse at this secret school of sorcery! What mysteries will you uncover at t 19 days ago
House of the Golden Mask

Today, we are thrilled to release a major, free expansion to House of the Golden Mask, the interactive fantasy novel by Ran Eastwood.

Today’s update to House of the Golden Mask is available at no additional charge. To celebrate, we’re putting the entire game on sale for 30% off.

Awaken your magic and break an ancient curse at this secret school of sorcery! What mysteries will you uncover at the crossroads between realms?

  • Romances and friendships are more developed
  • There’s more to uncover about the House’s various mysteries
  • The game’s difficulty has been adjusted to encourage exploration and discovery

There’s never been a better time to explore the House!

19 days ago

The Sharpee Blog - Sep 04

Sharpee 5.3, Chord 3.6, Chord Writer 1.4

Three things shipped together this week: Sharpee 5.3.0 on npm, Chord 3.6.0 (the story language), and Chord Writer 1.4.0 (the Mac app you write in). The last public release was 5.1.1 and Chord 3.3.0 in mid-August. Everything below happened

7 hours ago
Sharpee 5.3, Chord 3.6, Chord Writer 1.4

Three things shipped together this week: Sharpee 5.3.0 on npm, Chord 3.6.0 (the story language), and Chord Writer 1.4.0 (the Mac app you write in). The last public release was 5.1.1 and Chord 3.3.0 in mid-August. Everything below happened in the two and a half weeks between.

Most of it started with porting Secret Letter to Chord, and about every third scene ran into syntax issues. So I updated the syntax to help out.

Chord

Timers came first. A timer belongs to a character or to the player, runs through named turns, and can carry prose and chance rolls on the way.

define timer search for the wandering mercenaries
  arriving
  lingering
    Those mercenaries are getting uncomfortably close.
  meanwhile, one chance in 5
    phrase merc-idle
end timer

You control it, read it, and react to it in plain words.

start search
stop search
restart search
reset search
interrupt search

while search is lingering
while search has expired

when search expires
  phrase merc-spotted
end when

There are more places to move things to. Here means where the player is standing. Offstage means nowhere, and the thing keeps its state and can come back later. A random adjacent room is picked one open exit away at the moment the line runs. A region can declare a landing, so you can move someone to the Grounds and the story knows which room that means.

move the guards here
move the monkey offstage
move the player to a random adjacent room

create the Grounds
  a region
  containing the Market Square, Commerce Street
  landing the Market Square

The player is a role now, not a block. You no longer create the player. A character is marked playable, and the story says who holds the role. The same line swaps the player mid-game.

create Alex
  a person
  playable
  starts in the Market Square

before the game starts
  change the player to Alex
end before

Every clause names its actor, and the word it is gone from clause heads. A line reads on its own now, without holding the whole block in your head.

on the player taking
after the guard entering

Characters can act in a single sentence. That character performs the real action through the same path the player's commands take, and a goal plan can use the same sentences as its steps.

the guard opens the door
Teisha talks to the player

goal secure-the-key, high
  seek the player
  take the brass key
  go east
end goal

Chapters are an extension that declares chapters as events, and once declared they can be used anywhere a condition goes.

story
  title: The Secret Letter
  use chapters

define chapters
  market - Chapter I: Grubber's Market
    begins when the game starts
  commerce - Chapter II: Commerce Street
    begins when the player visits Commerce Street for the first time
end chapters

on the player talking during commerce
  refuse no-time-to-chat
end on

A pile of smaller things landed too. Imports can import. Proper names work on any create block, not only people. An exit can be one-way. A marker can ask for a noun with no article. Possessive names resolve everywhere.

import "regions/market"

create Grubber's Market
  scenery, proper

create the Market Square
  a room
  north to the Alley, one-way

define phrase another-one
  No one notices you picking up another {bare item}.
end phrase

while the Weaponsmith's Stall is blocked

And a couple dozen loader and parser defects found by playing the port, all fixed.

Sharpee

Under the language, NPCs now act through the platform's own action pipeline. When a character does something, it is the real action, validated and interruptible, and the narration knows who was present to see it. The story's own reactions run before the platform moves the characters. There is a new static analysis, the World Index, that reads a compiled story and reports its map, what can be reached, and what looks unfinished. And a long list of text fixes: articles on plurals, third-person names, room descriptions on arrival, answering and saying goodbye in conversations.

Chord Writer

The app speaks Chord 3.6 and bundles the 5.3 toolchain, so there is nothing to install. New since 1.3: imported fragment files are first-class source in the sidebar and editor, with New Import and Extract Selection to Import in the File menu; a World tab showing the World Index; a menu-less Play pane with a Publish option; and the usual editor fixes. This is the first version that arrives as an auto-update to existing installs.

Documentation

sharpee.net has new guide pages for timers, chapters, the player role, sound and images, and testing with the tree document. Every guide was swept against the current syntax.

Where to get it

Chord Writer is at sharpee.net/chord-writer/download, one build for Apple silicon and one for Intel. The platform is on npm as the sharpee packages at 5.3.0, with the devkit package as the command line. The Secret Letter port is not done, so do not expect a game yet. Expect the language to keep moving as it gets there.

7 hours ago

top expert - Sep 04

where will it end? who will draw the line (break)?

Please help, I can’t hold all these line breaks. If you’ve been messing with Inform for a little while, this has probably happened to you. >llabA bowl of ice cream rests on the counter. It looks like delicious vanilla.You had better eat that ice cream before it melts!> See that extra line space up there? […] a day ago

Please help, I can’t hold all these line breaks.

If you’ve been messing with Inform for a little while, this has probably happened to you.

>l
lab
A bowl of ice cream rests on the counter. It looks like delicious vanilla.


You had better eat that ice cream before it melts!

>

See that extra line space up there? Between “vanilla” and “You had better?” Sooner or later, we all will produce a passage with either too few or too many line spaces. In some cases, it may seem impossible for us to hit the right number.

WI §5.8 Line breaks and paragraph breaks from Writing with Inform takes an optimistic view: there are perhaps only few adjustments needed, so only a few adjustments are possible. This is true nearly all of the time! We can fix this case, for instance. Let’s look at the offending code.

lab is a room.

the interderminate ice cream is on the counter. "[IC_desc]".
the counter is a scenery supporter in lab.

IC counter is initially one;

to say IC_desc:
say "A bowl of ice cream rests on the counter. ";
if IC counter is one, say "It looks like delicious vanilla.";
if IC counter is two, say "Chocolate! My favorite.";
if IC counter is three, say "Strawberry with real chunks of fruit in it.";
increment IC counter;
if IC counter is four, now IC counter is one;

every turn when the interderminate ice cream is on the counter:
say "You had better eat that ice cream before it melts!";

Where is the line space coming from? There are hopefully only two places to look. The first is in the third sentence, "[IC_desc]". The second is in the actual description for [IC_desc].

We know that the [run paragraph on] substitution can suppress line breaks. According to the documentation:

This text substitution produces no text. It’s used only for a side-effect: it prevents a paragraph break occurring after the present text is printed, in case Inform might be tempted to place one there. Example:”

Well, let’s give it a try!

If we revise our third line of code to match the following:

the interderminate ice cream is on the counter. "[IC_desc][run paragraph on]".

Nothing changes. Let’s try adding something to the end of our substitution, instead.

to say IC_desc:
say "A bowl of ice cream rests on the counter. ";
if IC counter is one, say "It looks like delicious vanilla.";
if IC counter is two, say "Chocolate! My favorite.";
if IC counter is three, say "Strawberry with real chunks of fruit in it.";
increment IC counter;
if IC counter is four, now IC counter is one;
say run paragraph on;

That doesn’t change anything either! In this particular case, we’ll want to stay close to the punctuation. Inform makes these spacing decisions at the end of sentences, even if the influencing factors aren’t always clear. In this case, for instance, we could decorate our individual sentences so:

	if IC counter is one, say "It looks like delicious vanilla.[run paragraph on]";

That should do it! All we have to do is type those words in those brackets every time we write a text substitution. That shouldn’t add up to much in a 30k word project.

lets not run so far or so long, [run paragraph on]

Or mightn’t it? Most of us like to avoid typing when we can. We can shorten that up in a few ways. Since the inflection point is the period symbol (.) in our text, we could always approach that a different way. Credit where credit is due: Zed Lopez suggested this to me while I was fighting my way through Repeat the Ending, which has an outlandish amount of printed text.

What are we to do? Inform checks for punctuation at the end of our quoted passages, but it doesn’t check to see if we are displaying punctuation characters. How do we print a period without putting it into our sentence? We print its Unicode character. In inform, we can use a special text substitution that invokes a Unicode character code. The Unicode character code for period, for instance, 46. Where do we get this information?

Unicode references are ubiquitous. The main thing we Inform authors need is one that contains decimal codes (hex codes are apparently more popular). Wikpedia has a full list. Note that we can’t use all Unicode characters, and many of our favorites will lie tantalizingly beyond reach, as the highest possible code in Inform 10 is 65535. Humble Unicode 46 is certainly doable. We can try these:

To say dot:
say unicode 46;

To say fs:
say unicode 46;

To say p:
say unicode 46;

All will print a period. I’m partial to dot, though p is more economical. Some of our English friends might prefer fs for full stop. Any will do, as our extra space is now happily gone:

to say IC_desc:
say "A bowl of ice cream rests on the counter. ";
if IC counter is one, say "It looks like delicious vanilla[dot]";
if IC counter is two, say "Chocolate! My favorite[fs]";
if IC counter is three, say "Strawberry with real chunks of fruit in it.[p]";
increment IC counter;
if IC counter is four, now IC counter is one;

alternatives

We don’t have to do it that way, though. We could strip the periods out of our substitutions altogether, and place one in initial our description code, and then append [run paragraph on] to the end of it.

the interderminate ice cream is on the counter. "[IC_desc].[run paragraph on]".

We’re already halfway to a Frankenstein text, with our first “A bowl of ice cream…” floating above the other options. We could put a single period on a line at the bottom.

to say IC_desc:
say "A bowl of ice cream rests on the counter. ";
if IC counter is one, say "It looks like delicious vanilla";
if IC counter is two, say "Chocolate! My favorite";
if IC counter is three, say "Strawberry with real chunks of fruit in it";
say ".[run paragraph on]";
increment IC counter;
if IC counter is four, now IC counter is one;

None of this quite feels like sitting down to write, though, does it? We don’t carry loose periods in our pockets around with us or else paint period-shaped specks on our screens when we write, after all.

Nevertheless, with some judicious added touches, we can usually get things to look the way we want them to.

further adventures.

Let’s say, for some reason, we wanted to make a rulebook that printed, line by line, the first stanza of John Berryman’s “Dream Song 14.” As anyone peeking under the hood of my own Portrait with Wolf might tell you, it can be hard to lay out poetry in Inform, but we can manage this one easiliy enough:

before jumping:
follow the typesetting rules;

typesetting is a rulebook.

a typesetting rule:
say "Life, friends, is boring. We must not say so.";

a typesetting rule:
say "After all, the sky flashes, the great sea yearns,";

a typesetting rule:
unless one is one, say paragraph break;

a typesetting rule:
say "we ourselves flash and yearn,";

a typesetting rule:
say "and moreover my mother told me as a boy";

a typesetting rule:
say "(repeatingly) ‘Ever to confess you’re bored";

a typesetting rule:
say "means you have no";

If we park our text at the top of a jumping action, we’ll get this:

>jump
Life, friends, is boring. We must not say so.After all, the sky flashes, the great sea yearns,
we ourselves flash and yearn,
and moreover my mother told me as a boy
(repeatingly) "Ever to confess you're bored
means you have no
You jump on the spot.

It isn’t quite right, but we can get there! We’ll need to enforce a page break between “say so.” and “After all,” because that’s how the poem goes.

If we just assert one, as in "Life, friends, is boring. We must not say so.[line break]";, we’ll come away with an extra line space.

>jump
Life, friends, is boring. We must not say so.

After all, the sky flashes, the great sea yearns,

We can use the familiar Unicode trick, or else we can append [command clarification break]. We aren’t clarifying any commands, obviously, but we are asking the [command clarification break] to do what the documentation says that it will. Specifically:

This text substitution produces a line break, and then also a paragraph break if the text immediately following is a room description brought about by having gone to to a different room and looking around, in which case a line break should be added.

[command clarification break] is, whatever its intended purpose, an excellent means for suppressing Inform’s default tendencies to make complex determinations regarding line breaks. Since we don’t usually use the specific code that the Standard Rules uses to print room descriptions while going, we aren’t likely to ever prompt unwanted extra line breaks via [command clarification break] (see here for more information).

In other words:

a typesetting rule:
say "Life, friends, is boring. We must not say so.[command clarification break]";

Is this a superior option to typing [dot]? It requires more characters, which is certainly a strike against it! Let’s look once more at the entire output. There’s a paragraph break missing there. That’s because there’s no period ending the final rule:

a typesetting rule:
say "means you have no";

Adding a period would solve everything, but what if we don’t want one? If we simply add a [run paragraph on] substitution, we’ll end up with two breaks. The answer is another [command clarification break] at the end:

a last typesetting rule:
say command clarification break;

do not accept defeat!

I’ve struggled with stubborn line breaks in past projects, but I’ve been able to figure them all out (so far). I hope I haven’t jinxed anything by saying so! For further reading, consult this forum thread for other suggestions, tactics, and commiserations.

a day ago

Choice of Games LLC - Sep 03

God of Chaos—Shatter civilization as the world’s last surviving god!

We’re proud to announce that God of Chaos, the latest in our popular “Choice of Games” line of multiple-choice interactive-fiction games, is now available for Steam, Android, and on iOS in the “Choice of Games” app. It’s 30% off until September 10th! Shatter civilization and avenge your pantheon as the world‘s last surviving god! Will you liberate humanity from t a day ago
God of Chaos

We’re proud to announce that God of Chaos, the latest in our popular “Choice of Games” line of multiple-choice interactive-fiction games, is now available for Steam, Android, and on iOS in the “Choice of Games” app.

It’s 30% off until September 10th!

Shatter civilization and avenge your pantheon as the world‘s last surviving god! Will you liberate humanity from tyranny, or let the world burn?

God of Chaos is an interactive dark fantasy novel by Brennan Gilpatrick. It is entirely text-based, 325,000 words and hundreds of choices, without graphics or sound effects, and fueled by the vast, unstoppable power of your imagination.

Once you were known as the Sovereign of Lies. The Master of the Fey. The God of Chaos. Humanity feared you and hated you. An outcast even among your fellow gods, no one minded when an Alchemist order sealed you in a prison of pure darkness, away from the land of Vildmara.

After a millennium, you have finally broken free—but Vildmara is nothing like the home you left.

In your absence, the Alchemists went on to murder all of the other gods, conquer all mortal kingdoms, and force humanity into submission. Undead soldiers patrol the streets. The Fey have been hunted to near extinction. A sentient machine rules supreme. They even outlawed the name ‘Vildmara’; everyone lives in the Iron Shelter now.

Desperate to overthrow the Alchemists, a tribe of druids has freed you from the void. You are a shapeshifting, curse-slinging, charming-as-hell deity back on the scene, and in a land ruled by tyrannical order, chaos has the power to move mountains. You are the only god they couldn’t kill.

Will you aid the druids in their quest to heal the natural world, seeking out a mystical artifact that can revive the land itself? Or will you regain the trust of your ancient allies the Fey, and rally them to your cause? Maybe you’ll join the Rustmongers, and help them tear the Iron Shelter down and watch everything burn. Will you show mercy to the descendants of your captors, or subject them to sweet, twisted revenge?

Will you become a savior, conqueror, or destroyer?

  • Play as male, female, or nonbinary; gay, straight, bisexual, monogamous, polyamorous, asexual, and/or aromantic.
  • Choose your form: an infernal imp, a strikingly beautiful human, a shadowy elf, or a devious primate.
  • Romance or befriend a renegade druid, an anarchist mercenary, or the descendant of your most hated enemy.
  • Take command of the machine that rules the Iron Shelter, dismantle it safely, or sabotage it to plunge civilization into madness.
  • Show mercy to the descendants of your captors, or subject them to sweet, twisted revenge.
  • Hypnotize a masquerade ball. Command an undead legion. Ride a freakin’ Jabberwock.

The heavens sit vacant: the world is yours to shape.

We hope you enjoy playing God of Chaos. We encourage you to tell your friends about it, and recommend the game on Facebook, Twitter, Tumblr, and other sites. Don’t forget: our initial download rate determines our ranking on the App Store. The more times you download in the first week, the better our games will rank.

a day ago

IFComp News - Sep 01

Welcome to the 32nd Annual IFComp!

The 2026 Interactive Fiction Competition has officially begun!

For the next seven weeks, players and judges around the world will be diving into this year’s crop of brand-new interactive fiction. We’re delighted to share that 71 entries have been submitted this year. We’re excited to see what this year’s authors have created, and we hope you’ll find plenty to discover and enjoy.

As a 3 days ago

The 2026 Interactive Fiction Competition has officially begun!

For the next seven weeks, players and judges around the world will be diving into this year’s crop of brand-new interactive fiction. We’re delighted to share that 71 entries have been submitted this year. We’re excited to see what this year’s authors have created, and we hope you’ll find plenty to discover and enjoy.

As always, you don’t need to play every entry to be a judge. You only need to play and rate at least five entries to submit a ballot. Whether you’re a seasoned IFComp veteran or joining us for the very first time, welcome!

Judging is open now and runs through October 19.

A Note About Content Warnings

Authors may provide content warnings for their entries, and those warnings are shown by default. If you would prefer not to see them, whether to avoid spoilers or for any other reason, you can turn them off using the setting at the top of the ballot.

The Colossal Fund

Our annual Colossal Fund helps provide cash prizes to the authors of the top two-thirds of IFComp entries, while also supporting the Interactive Fiction Technology Foundation and its work.

This year, we’re using Zeffy to process donations. Zeffy does not charge IFTF any processing fees, which means more of your donation can go toward authors and IFTF’s work. Zeffy will ask whether you’d like to make an additional, optional contribution to support their service. You can change that amount to whatever you’d like, including $0.

Our goal this year is $8,000, with a stretch goal of $10,000. If you’d like to contribute cash or donate another prize, you can learn more at https://ifcomp.org/about/prizes.

What’s New in 2026

Last year, we said that we planned to revisit IFComp’s rules around generative artificial intelligence after hearing from the community. We did, and IFComp incorporated a new rule for 2026.

All player-facing content in an IFComp entry must now be created by humans, including prose, cover art, and in-game assets. Entries also may not require judges or players to interact with external AI or generative services during play. You can read the complete rule, along with all of our author rules, here. Thank you to everyone who shared feedback with us as we worked through this change.

For Our Judges in the United Kingdom

The United Kingdom’s Online Safety Act continues to affect the availability of some IFComp entries to users in the UK.

As we did last year, we have taken a case-by-case approach rather than restricting the entire competition. Authors were asked during registration to identify whether their entries contain content that could be subject to the OSA, and our Curation Team reviewed entries for potential concerns as part of our pre-competition review.

As a result, UK judges may find that some entries are not available to them. As of launch, 15 of this year’s 71 entries are geoblocked in the UK. We continue to dislike restricting access to creative work, but we are required to comply with UK law. Our goal remains to limit those restrictions as much as reasonably possible.

Our Awards Ceremony

We’ll celebrate the conclusion of this year’s competition with our annual virtual awards ceremony, where we’ll announce the results and recognize this year’s authors.

The awards ceremony will be held on Twitch at 4:00 PM Eastern on October 24.

Until then, there’s a lot of IF to play!

Anything we haven’t covered? Still got questions? Email us at [email protected].

Thank you in advance for judging, and welcome to IFComp 2026!

Jacqueline Ashwell
September 2026

3 days ago

Zarf Updates - Sep 01

The Visible Witness is now available to all

September is upon us, and with it that least regarded of the early Infocom games: The Witness. As usual, the source code repository is also live, licensed with the open-source MIT license. In addition, I've posted high-resolution scans of ... 4 days ago

September is upon us, and with it that least regarded of the early Infocom games: The Witness.

A screenshot titled "The Visible Zorker: The Witness". The left side of the window shows the opening of The Witness, with the opening room description. The right side shows a list of ZIL function calls and the message "What should you, the detective, do now?"

As usual, the source code repository is also live, licensed with the open-source MIT license. In addition, I've posted high-resolution scans of the original folio manual and feelies.

I wouldn't say The Witness is unfairly disregarded. It's Infocom's second mystery game, a followup to Deadline. Deadline was groundbreaking interactive narrative; it presented a huge New England mansion and a cast of dynamic characters with their own plans and schedules. (Until you, the detective, barge in to upend them.) The Witness was... more of the same, except with fewer characters, a smaller house, and a shallower mystery to solve.


The Witness is mostly remembered in the IF community for three things:

First, it's the Infocom game which can be solved in the fewest commands. People got competitive about finding minimal paths to the winning outcome. (See this comment by eriktorbjorn, for example.)

Second, the 1938 period atmosphere. It's really the game's best quality. You start out schlumfing up those mean streets (or a mean driveway) on a chilly Los Angeles night with a storm moving in. Thunder crashes, Monica's grey eyes flash, and the language never lets up. The packaging and the text glitter with love for the noir era.

A red matchbook from a fictional restaurant called "The Brass Lantern". The phone number "ADeline 1308" is printed on the cover; another number, "CHANDLER 1729", is hand-written inside. The back says "Good luck, long life" with a circular Chinese symbol. I wrote a whole other post about this matchbook from the game package.

(Okay, not noir exactly. You're still a police detective rather than a down-at-heels private eye. Still, it's a scene you can get your teeth into.)

Third, the flip side: the weirdly toothless portrayal of Freeman Linder's weirdly Orientalist household. As Drew Cook points out, The Witness is a double period piece: 1930s California as depicted by 1980s Boston tech guys. The result is Phong the butler, described as "obviously Asian, but no definite nationality". Nor does he have a definite first name, or any definite motivation or personality other than sniffy resentment of his boss. The player is apparently expected to accept this and never inquire more deeply than Linder does.

At least Phong's dialogue is pointedly free of comedy Asian dialect. This is a step up from Deadline's panto Scots gardener and Black-unless-she-isn't housekeeper.

Actually, there's a bit more to note about Phong. The game never gives him another name, but we have an archived design document which refers to him as "Hui Phong". (Design doc is SPOILERS if you haven't yet solved the mystery!) Indeed the game accepts HUI as a synonym for PHONG.

But this raises a question. By the time I graduated college, "Phong" didn't come off as an ambiguously Asian name at all. It was immediately recognizable as the given name of Bùi Tường Phong, a Vietnamese scientist in the brand-new field of computer graphics. (I hope I copied the right diacriticals.) Anybody who studied CGI around 1990 would know what "Phong shading" was.

But would game developers in 1983 have known? Bùi Tường's paper was published in 1975, shortly before the man died of cancer. (Shockingly young, and very possibly as a consequence of US defoliants in the Vietnam war.) Had "Phong shading" made the rounds at MIT by 1983? Did the Infocom crew select "Phong" as a generically Eastern name, or was it intended to read as Vietnamese -- or a reference to a specific person -- to the knowledgeable eye?

I honestly have no idea. But I wanted to add that context to the discussion.


One more quirk of the month. The Witness is the first Visible Zorker game I've tackled with no source code for a released version.

We have source code, yes. But it's not the source code for The Witness release 22, the version on the Masterpieces CD and the last official release of the game. The source code is for release 23 -- a dev version which was in progress (and apparently abandoned) in late 1984.

In fact, the source code doesn't even match release 23 perfectly. In a few places, the source code was clearly updated, but never recompiled. (There is no "r24".) The most obvious example is the game banner:

The WITNESS: An INTERLOGIC Mystery
Copyright (c) 1983 Infocom, Inc. All rights reserved.
WITNESS and INTERLOGIC are trademarks of Infocom, Inc.

The r23 and r22 game files have the same banner, as does every known earlier version. But if you look at the source file, it's quite different:

    <TELL
"The WITNESS
Infocom interactive fiction - a mystery story|
Copyright (c) 1983 by Infocom, Inc.  All rights reserved.|
">

Someone went through and rubbed out the "INTERLOGIC" trademark, which Infocom was discarding around 1984. They also commented out the TANDY bit check. Neither of these changes are visible in the playable r23 game file, nor in the intermediate compile stages verbs.zap or verbs.xzap.

This left me with a problem. I always prefer to use the Masterpieces release of each Infocom game for the Visible Zorker. That's the version which almost everybody sees these days, whether on an archive site, GOG, or a dusty CD off Ebay. But I had no r22 source to work from.

(I tried comparing r23 to r22 but the differences were too great to paper over. Mostly having to do with rearranged code, rather than changes to game behavior. Still: too much to account for.)

My only option was the r23 game file. Again, this is an in-development version and may have bugs. Okay, sure, every Infocom release has bugs. But this version may have bugs that would have been caught during QA! Keep an eye out.

Then there's the differences between the archived r23 source and the r23 game file. Fortunately, these were minor. The banner trademark and a couple of tweaked messages seem to be most of it. I have done my best to revert the source code to the exact state it was in when the r23 game file was generated. I may have missed a spot; I apologize if so.

More reading:


On the scanning side, I have now completed my set of high-res scans of the folio era. Enchanter and Seastalker are new to my collection this month.

I don't have any of the grey-box releases, and I don't feel the urge to start collecting them. See the MoCAGH collection (Archive.org mirror) if you want those. I'm probably done scanning Infocom stuff... unless interesting ephemera turn up.


Upcoming work:

Visible Planetfall will be the next public release on October 1st. Enjoy your visit to Resida, land of foonetik speleeng.

Patreon supporters got access to Visible Planetfall a month ago, and Visible Enchanter today. Please remember that the Visible Zorker is a Patreon-supported project! Your donation is immensely appreciated. (And credited in each game's "About" page, of course.)

And finally, no September 1st IF post would be complete without a link to the Interactive Fiction Competition! It's not quite open, but it will pop sometime on Tuesday. Scores of newly-hatched IF games for you to play and (I hope) rate. Enjoy.

EDIT-ADD: In fact, 71 new games, available now.

4 days ago

Renga in Blue - Aug 30

Twin Kingdom Valley (1983)

It’s not your world. You arrive there and you’re a person, a creature, just like all the others. You see something shiny and think maybe you could go get it, so off you wander. You’re not controlling the game – you’re part of it. — Trevor Hall, interviewed in 2006 With this, we reach one […] 5 days ago

It’s not your world. You arrive there and you’re a person, a creature, just like all the others. You see something shiny and think maybe you could go get it, so off you wander. You’re not controlling the game – you’re part of it.

Trevor Hall, interviewed in 2006

With this, we reach one of the most well-remembered games of 1983.

It is often mentioned in the same context as The Hobbit, and this includes advertising from the time (“EAT YOUR HEART OUT BILBO!”) The setting is a “mythical place where two kings reside” who “hate each other”; you are an “adventurous, bounty hunting, greedy human” and your goal is to “finish the game with as much wealth as possible”. This is a standard treasure hunt, in other words, but it has illustrations for all the rooms, and it has dynamic NPCs (the latter point being why it gets compared to The Hobbit).

The author, Trevor Hall, has an unfortunate namespace clash with a more famous musician, but fortunately he’s done multiple interviews (1, 2, 3, 4) so I’m able to give some history.

P. M. Skinner is Pete Skinner, a friend of Trevor’s.

Trevor Hall studied Computer Science in Manchester, getting a taste of arcade games at the student union and obtaining his first computer, the text-only Acorn Atom. By 1982 he started publishing with Bug-Byte.

I think I did what many others wanting to publish did (and presumably still do):
1: Find a game publisher who already exists, and has some titles available, and adverts in mags etc.
2: Send the game for evaluation.
I think Bug-Byte was the first I tried, and they offered a good royalty rate. I don’t know where the company got its start up cash, but there were 3 main players who handled (or mishandled) all that. They had some advantages, like a good artist, a very good deal on rent in a new unoccupied building, their own tape duplication machines. They built a good name from the Spectrum Manic miner series, BBC micro stuff from me and others, and some C64, but lost the Manic Miner programmer to another company. That was probably a bad turning point for them.

In this case he did not simply send games to be independently evaluated (like Simon Wadsworth where his second game Time Warden fell down a black hole and he switched to making games for Artic): he had demo games impressive enough to be a regular contract worker for Bug-Byte. The company has featured here enough times (including the Manic Miner kerfuffle) I won’t recap their history other than to say they were one of the most prominent software houses soliciting games from anyone.

Bug-Byte was getting 20 or 30 games submitted some days and most of them were useless and went straight in the bin but some were excellent.

— Chris Cannon, who selected games for publishing at Bug-Byte, via Acorn: A World in Pixels

Hall has four games credited for 1982, and two more for 1983 prior to Twin Kingdom Valley, all for BBC Micro: City Defence, Galaxy Wars, Space Invaders, Dogfight, Sea Lord, and Oblivion. Space Invaders is worth a screen as Trevor credits working on the game as how he learned assembly language.

The single-pixel bullets mean the barriers last a bit longer than regular Space Invaders.

Hall’s first experiences with adventure were with his friends playing Crowther/Woods which appeared on “big computers” at the university:

I never got very far in Adventure. There was some version on some system at the university, which we found fun to play, but, time on those systems was limited, and we had to study sometimes.

He remembers one of his friends commenting on the characters “standing still” with the same puzzle to solve whenever a character is encountered. He saw some home computer games with the same issue:

The troll was always standing by the bridge. It made no sense! So I thought, why not make every creature in the game, including oneself, pretty much the same. Make everyone able to walk around, pick things up and fight. Let them interact.

In other words, he wanted a game where you are not the protagonist of a story, but rather part of a world.

He and some friends drew maps (using “little green pieces of paper he’d swiped from the computer science lab”) and worked out how connections to other places could be described in a “few bytes”. He describes the parser as “easy” (“tokenize the text, and recognize a verb and an object”) but had more trouble with the graphics. He wanted 3D but found it to be too slow, so he used scaled pictures instead with flood fill. The general idea was to have scenes not thought of as being single pictures (like Sierra) but compositions of objects; he modified the code so “program wouldn’t attempt to draw underneath something that was already there.”

Road outside wooden cabin at the start of the game. The game states outright “the picture is your view north”.

The trees from the scene above are both the same object image, drawn at different scaling levels. Sierra’s Time Zone and Melbourne House’s The Hobbit would have both trees drawn as individual graphics. Rather than a “picture book” model, Hall aimed to make an “environment” akin to modern 3D worlds. Note that Hall’s “priority drawing” system glitches a little bit with one of the flowers; it gets drawn in whole but then some of the tree lands on top, while most of the tree is drawn “behind” the flower even though it appears on the screen after the flower. When Hall talks about Pete Skinner drawing “many of the objects” he really means objects, not entire scenes.

His world-representation paradigm (thinking of the world as “3D space” even though it isn’t) applies not just to graphics but to text. Graphics are reused where you see things from farther away or closer, but the rooms are designed such that things seen from afar can be included in the textual description. Despite the BBC Micro being relatively plentiful on space this sort of maneuver was needed in order to include all 175 rooms he was aiming for.

Hall talks more about his NPC design in his interviews but let’s come back to that when we have some more context, and get into the game itself. From the start there is again the eternal question: which version? The original is BBC Micro; there’s also the Electron, Spectrum, and C64, and I know at least the C64 has more rooms than the BBC Micro version does (so revisions happened, like The Hobbit). Still, comparing all the graphics, the BBC Micro version looks the most “intended”; the graphics appear designed for a screen with a particular color scheme and resolution.

C64 version. Notice how the flowers look a little mangled. There’s an animated hopping bunny, though!

The game helpfully gives six options for how text and graphics work:

1 Draw picture if room unvisited, give long description
2 Draw picture if room unvisited, give short description
3 Draw picture always, give long description
4 Draw picture always, give short description
5 Don’t draw picture, give long description
6 Don’t draw picture, give short description

For the moment I’ve set things to always show pictures and long descriptions, but let me show long vs. short in the starting rooms.

You are on a road.
North you can see a wooden cabin.
North east is a forest path.
East you can see a road.
West you can see a road.
South is a wooden fence through which you can see forest.

?N

You are inside a wooden cabin
South you can see a road.
There is an empty stone jug here.
There is a brass key here.
There is an unlit oil lamp here.

The “short” version cuts out all the direction descriptions: just “You are on a road” and “You are inside a wooden cabin” without mentioning what is east/north/etc.

The cabin is where the treasures go.

The map is not only large but immediately open, so I’ll save giving the lay of the land next time, but one quick visit to another place:

The gorilla is an enemy you can fight that can also follow and randomly thwap you with the club it is holding. The enemies can pick up weapons that happen to by lying around; again, this feels strongly like MUD behavior. An elf was nearby and later the gorilla had nothing and the elf had the club; it appears the elf simply stole the club.

A gorilla is here with nothing.
An elf is here with the following
  A wooden club

Allegedly the puzzles aren’t elaborate (at least compared to The Hobbit) so this really does give a different feel than a standard adventure game. I’ll report back in next time if that holds up.

5 days ago

The Sharpee Blog - Aug 25

Actors are Actors

Admittedly, both Sharpee and Chord are still very young and cranky. I continually find seams in both through working with Chord. In my latest set of activities, I started to port my old Textfyre game, Jack Toresal and The Secret Letter, to Chord. I'd talked to Mike Gentry

11 days ago
Actors are Actors

Admittedly, both Sharpee and Chord are still very young and cranky. I continually find seams in both through working with Chord. In my latest set of activities, I started to port my old Textfyre game, Jack Toresal and The Secret Letter, to Chord. I'd talked to Mike Gentry earlier in the year about making a new version with specific changes and he loved all of it. Sadly, he's moved on from IF and was not interested in helping. I'll eventually have a separate post about these changes, but I'll summarize by saying I'm opening the world up and removing the rails (those were intentional for the target audience) and changing the main character in a very important and present-day meaningful way. I am using Claude to port the code, but all content changes are mine, including puzzles/logic/text.

A problem surfaced from complaints I had about event capturing in actor/npc blocks in Chord. There was a lot of what I call inelegant phrasing to the syntax. That led to digging into the differences between the player character and NPCs in Sharpee and Chord and this seam was telling me that NPCs needed to be dissolved into the platform and Actor was a singular architecture concept.

This is the offending language that started everything...

after entering it, while the stall is blocked
  phrase keeper-yells
  move the player to an adjacent room, randomly
end after

I was bothered that a) the target actor is not identified here, and b) 'it' is ceremonial and not really necessary. Pushing on those two seams followed this progression:

create the sword
  on taking it
    refuse sword-not-for-you
  end on
create the sword
  on the player taking
    refuse sword-not-for-you
  end on

In the below example, we explicitly say who the event capture is targeting...in this case the Actor currently designated as the player.

create the Grocery Stall
  a room
  states: open, blocked

  after the player entering, while the Grocery Stall is blocked
    phrase keeper-yells
    move the player to a random adjacent room
  end after

The only exception is an actors own block:

create Jack
  a person
  playable
  starts in the Northwest Junction

  on going while the wandering mercenaries is aggressive
    refuse merc-held
  end on

In this case, there is only one target actor so explicitly naming the actor would be redundant.

And for 'it' and 'its', they survive in one place: Trait definitions...

define trait kick-escape
  on the player kicking
    refuse when it is oblivious: merc-dont-provoke
    phrase merc-break-free-kick when it is aggressive
    change it to approaching
    reset its lunge
    start its recovery
  end on
end trait

This also led to the player being a role that can be changed.

Before...

create the player
  starts in the Northwest Junction
  kick-yourself
  wears the old gray cloak
  wears the woolen cap
  wears the boots
  carries the cloth satchel

  Jack Toresal, who has been a boy in this market for as long as anyone here has
  bothered to look.

  on going while the wandering mercenaries is aggressive
    refuse merc-held
  end on

  after going while hunted
    restart waiting
  end after

And now that will be...

create Jack
  a person
  playable
  starts in the Northwest Junction

  Jack Toresal, who has been a boy in this market for as long as anyone here has
  bothered to look.

  on going while the wandering mercenaries is aggressive
    refuse merc-held
  end on

With the new block...

before the game starts
  change the player to Jack
end before

Which allows us to change the player character when we choose...

create Viola
  a person
  playable
  starts in the Chapel

  Viola.

create the Chapel
  a room

  A chapel.

  after Jack examining the seal
    phrase cut-to-viola
    change the player to Viola
  end after

And now all actors in chord are the same and one is the player character at any designed time. All of their actions thread through the platform exactly as the player character does today. (and no, this was not the case for the current npc-plugin architecture).

This is a very big change to Sharpee and Chord, so needs full regressions with both and the platform and chord sample stories.

11 days ago

Renga in Blue - Aug 23

The Temple (1982)

The last time this blog visited Sweden was with Stuga a full 15 years ago; one day, I will go back to that game and toss in the history of Swedish mainframes and academic computing alongside. However, we’ve got a complicated story with enough threads as-is. The threads will eventually unite in the late 70s. […] 12 days ago

The last time this blog visited Sweden was with Stuga a full 15 years ago; one day, I will go back to that game and toss in the history of Swedish mainframes and academic computing alongside.

A 1963 photo of the BESK, via Stelios Kessanidis on Facebook. The BEST (1950) and follow-up BASK (1953) were the earliest Swedish computers.

However, we’ve got a complicated story with enough threads as-is. The threads will eventually unite in the late 70s. Let’s start in Italy–

I graduated in 1953, precisely the year the first transistor was presented by my old professor under a showcase in a display case. Those were truly different times, there was everything to do, everything to invent, everything to build.

— Massimo Rinaldi, via a 1992 interview with M&P Computer

One way to arrive at the mini-computer, the computer small enough for a regular business, was to start with the design of giant mainframes and work down; that’s how Data General worked, as told in my story on Thissala. Another way was to start with simpler machines and work up. This was the method adopted by Massimo Rinaldi.

After his graduation in 1953 he spent a brief time with the company Hasler (design, they were a competitor to IBM) followed by some work at Raytheon (radar and telemetry). He broke out on his own in 1969 and founded Transimatic Italiana, intending to make his own calculating devices. He had great success in ’62-’63 selling what he dubbed the ED 114 straight out of his garage. It went for 3,135,000 Lira in 1962 (about $53,000 in modern USD) and had “addition, subtraction, multiplication and statistical functions, but not division”. Despite his success, when he made his next product (first dubbed the elma 3000 with his garage version, later named the IME 84) he had trouble getting it off the ground as he needed partnership with a real company with a real factory. (It was more of a mass-production product, rather than one expensive enough where he could custom-make one for each customer.) It took him a year (and multiple brush-offs with Olivetti) but he finally found one with Edison S.p.A., selling his company and becoming head of research and development.

The IME 84 came out in 1964, and while it was not the first desktop digital calculator (see my story on the British company Sumlock), it was one of first fully transistorized ones, or you could say “modern” ones. (The “one of the” phrase is because the Friden Model 130 and Sharp CS-10A both came out in 1964. Rinaldi did have patents and successfully defended his US patent against Sharp.)

It still had a foot in the past; for example, the multiplication and division signs had different equal buttons, and addition was still counter-based rather than binary-based; this was improved on two years later with the 86S model.

By the end of the 60s he had founded a new company with the Mael line, and while he called it a “calculator” in an interview, the Mael 4000 is sometimes cited as being a computer. It’s not really a “desktop computer” as much as a “desk that is a computer”, but it does do the majority of operations one might expect to buy a Data General Nova for, and it is technically programmable (although designed to stay only with accounting operations). It came with 2K of memory (expandable).

Via technikum29. Source. The electronics are in the cabinet to the right.

Mael’s products eventually diverged into regular computers, although nothing that was a serious “hit” for the general public; their products after tended to lean more to calculation devices for business, rather than trying to surf the hyperwave of personal computing.

Mael is the first company involved in this complex web; next up comes Diehl, from Germany.

Diehl was founded in 1902 and did precision metal forging (like door handles); they started making mechanical calculators in the 1950s (see example video above) and by the 1960s made their own electronic transition. They landed a little later than the IME 84 (by two years) with the Combitronic. The electronics were designed by an American, Stanley Frankel, formerly a physicist with the Manhattan Project.

A portion of the Combitron’s layout, via Facebook.

Similar to Mael, they entered the computer market from the bottom-up, making their computation devices elaborate enough to do the same accounting you could do on a computer (not play Spacewar, alas). Also similar to Mael, they finally had what people would recognize as “proper” computers by the late 70s, with almost no effect on the market.

Source. These sold from 1977 to 1981.

Since we’re not juggling enough balls yet, let’s go back to the 50s yet again, this time in Sweden. Handic Bolagen was founded in 1952 (president: Gunner Wenner­ström, vice-president: Stig Wenner­ström). They focused on audio equipment like radios and broadcast receivers, mostly produced with a distinctive orange color, although they also had a line of sports equipment (golf, skiing, boating, the “high end” sports).

Ad from the Jan. 1975 issue of the Swedish magazine Radio & Television.

In 1977 they were sold to the investment company Svenska AB Navigator. I’ve seen a source say this means they were now state-owned but it’s a little messier than that. Svenska AB Navigator was formed in 1969 as a sort of “collector of companies” with the main purchasers being affiliated with state enterprises and a pension fund. As of January 1976 28% was with state enterprise, a third was with the pension fund, a small portion was cooperatives, and the rest (28%) was holdings by private owners of the original companies; they had non-voting shares after selling out to Navigator. Essentially this was a back-door method of state company ownership without a vote from Parliament.

Two more threads to follow! The first is Datatronic. They were founded in 1968 by Torsten Frey and Hans Sundén and started selling mini-computers (of the “calculator” bent) to businesses in 1970, specifically the Mael line. They picked up the Diehl line in 1975; based on the timespan, this means they were selling the Mael 4000 (the combination desk-calculator) before switching to Diehl and then being bought by them outright. By 1977 Diehl wanted to drop them, although I’ll return to that point in a moment.

Our final thread is still in Sweden and the company Janic, founded by Jan Bergekrans. In the earlier years of the company they did handbag sales. The founder one day had read about Commodore and their calculators, and decided he wanted to diversify. (It’d be an absurd leap if he decided to sell the desk-computers straight off the bat, but these were devices where “you can fit it in your purse” was part of the sales pitch.) He had great success along with Commodore, and he started to add the Commodore PET to his sales in 1977.

Radio & Television, December 1977. The same issue has ads (from other companies) for the IMSAI 8000 and the Sol-20.

So just to recap, before reaching the apocalypse of 1977/1978 that’s about to happen:

Mael: Italian calculator manufacturer, eventually getting into business computers
Diehl: German calculator manufacturer, eventually getting into business computers
Handic: Swedish consumer electronics, bought by a “state corporation” in 1977
Datatronic: started to sell (not manufacture) calculators, initially Mael before switching to Diehl and becoming wholly owned
Janic: Swedish handbag manufacturer which got into calculators through Commodore and eventually the Commodore PET

All of these companies (except Handic) had major exposure to the calculator market, and while it was already dropping, in 1977 the market utterly fell off the map. Calculators that were going for $300 back in 1971 could now sell for $20 or less; price drops from warring companies like Sharp and Texas Instruments were so frequent that retailers were skittish about owning too much stock.

A retailers’ greatest problem occurs when Texas Instruments or some other manufacturer cuts prices without warning, leaving the retailer stuck with expensive inventories. Most manufacturers offer 30‐day price protection. This is little consolation however, for a store carrying a two‐month or three‐month inventory.

There was an entire ecosystem built around having slow, personal service around desk-sized calculators/computers; this was getting undermined by not only cheap calculators but by the ability of businesses to now buy personal computers. It was possible to transition and survive (Mael, for instance, still kept going strong with products like point-of-service machines) but certainly something in these companies needed to change.

Diehl in particular needed to get out of Sweden. Outside investor/consultant Mats Gabrielsson (and two employees of the company) bought the struggling company for a single Swedish krona, switching it over from Diehl back to Datatronic in name early in 1978.

Despite Janic hooking up with Commodore who went on to later success, the 1977/1978 period gave them too much exposure to the calculator crash, and Jans made a plan to declare bankruptcy. He contacted Mats Gabrielsson (from being a consultant through the 70s, he knew everyone in the industry) and asked about buying the Commodore agency, selling the 50 PET computers he had in stock as part of the deal. The contract was signed October 30 and the PETs were meant to be collected October 1. That was a Sunday, so the driver needed to be bribed with four Pong games.

Mats with a Commodore PET. Source.

One other company worth mentioning with the Janic bankruptcy story: Janken Minidata. They were the second computer store in Sweden, and the first to sell Commodore machines. The store was owned by Kenneth Palmestål and Jan Eliasson. Kenneth Palmestål had visited the Stockholm Technical Fair in 1977 and saw a Commodore PET 2001 (exhibited by Janic); he ordered one which arrived in December, and when he tried to start it up the computer broke because it had been too cold.

He still had a determination to sell computers, and with his friend Jan Eliasson (who had been working selling calculators, of course) he formed his computer store. He had heard about the approaching Janken bankruptcy and had made a deal with Jan Bergenkrans to buy the remaining machines, but when he rented a truck to pick them up he found out the machines had already been sold. He eventually got his supply from Datatronic instead.

Inside Janken Minidata. Source. They also sold the KIM-1, NASCOM, and TELMAC 1800 kit computers in ’79, and in later years sold the Apple II and the Luxor ABC (a Swedish computer I’ll discuss in some future post, as it does have adventure games, including the first in Swedish on a home computer).

Returning to Datatronic and their ambitions to sell Commodore, two important points: first, Commodore used Datatronic as an agent, and never entered the market directly until later in the 80s (this is in contrast to Denmark, where they did battle with the ZX Spectrum directly). Second, because of Datatronic’s past, their network contacts and sales expertise were hooked up with the business desk-calculator companies (Mael and then Diehl) so they didn’t have the reach needed for a mass-consumer product. While they (re-)launched with initial success (with computer stores like Janken Minidata), they needed to get the network of a consumer firm, which is why a few years later they purchased Handic.

This divested Handic from the “state” control into the hands of Datatronic. (One reason why it’s false to say Handic was nationalized is that this didn’t require an act of Parliament.) They created Handic Computers and Handic Software both as spinoffs although they weren’t strict about their naming conventions. The motivation for the purchase was straightforward access to the company’s distribution network, meaning nearly all foreign subsidiaries (Denmark, Germany, US) were sold; they only kept the one in Holland, as they were too tightly integrated, so they split operations of that subsidiary 50/50 with Commodore. They weren’t done building a network, also buying Ekman Import (a distributor of electronic equipment) in 1982. By this time the VIC-20 had come out in Sweden and was wildly successful.

This manual is marked as being from “handic electronic ab”.

Datatronic/Handic heavily encouraged the growth of computer clubs. For example, the Westerås VIC club came from the company Rastionell Programutveckling (RPU); they became close with Handic, with members of the club sometimes going on to work there (quoting my source, “in some cases with the delay of a few years, as the young people first wanted to finish high school”).

Westerås club members via Vic News 2-1 published by Handic.

Our author today, Stefan Modin, hails from Skultuna, fairly close to Västerås (spelled Westerås in older documents). He is presumably somewhere in the photograph above.

Skultuna in red, Västerås and the club to the southeast in blue. Eskilstuna is also near and will be important in a future post.

According to the research of regular commenter (and expert on Nordic computing history) Rob, Stefan Modin formed his own company name “SkultSoft” to riff off his hometown name, and wrote three adventures: The Temple, Spider Mountain, and The Mutant Spiders. The Mutant Spiders was picked up by Granda Software (we’ll get to them in a future post). For now, let’s just focus on The Temple, which you can download off a forum thread (look for “rpu-adventures.zip”).

Unfortunately the files we have are broken (according to Anders Carlsson who did the preservation, it’s “really tough to get somewhere”) but we’ve had this kind of situation here before. Poking through the source code, the game “feels” complete, just it’s getting some erratic bugs. Some may be linked with this being on a Swedish VIC-20. There were differences; the PET was (for instance) modified to include the letters Ä, Ö and Å. Since it’s relevant here, some VIC-20 specific details:

An expansion kit modified the [, £, and ] keys to print, respectively, the diacriticised characters Ä, Ö, and Å, but this required alterations to the Kernal decoding tables, the keycaps and the Char ROM; these changes obviously messed with programs using the brackets and £ symbols, and also, because the new keyboard mapping obliterated the graphic characters on the @ key, made it just about impossible to type in certain programs. Peter Karlsson says that the Swedish characters were added after the Z (in both lower and upper case modes) in the order defined by ISO 646-10, rather unhelpful because the ISO order is not alphabetical and so simple ASCII sorting didn’t work correctly. Some graphics symbols also got altered when shifting to upper/lowercase mode.

Based on the nature of the errors, I don’t think these modifications are what’s causing the problem, but given what happened with Citadel Adventure, I can’t discount anything at the moment.

Just as a reminder, on VIC-20 screens I have been squaring them up for readability. This would be twice as wide on a real VIC-20.

You start in a cell. There’s a toilet to the east, and you can also go on the bed. Note that it does not give a room description anywhere unless you “LOOK” first; it’s a little like playing an Infocom game on SUPERBRIEF in that way. It makes some sense on a VIC-20. The only previous games the author likely had access to (based on a VIC News article) are the ones from Scott Adams, and they don’t have that behavior (no “split screen”, but the screen clears and a room description displays when entering a place).

Trying to “go bed” in the “pre” version immediately results in a crash.

?type mismatch error in 45200
ready.
list 45200

45200 if b$<>”row”andb$<>”boa”andb$<>”fer”andb$<>car”andb$<>”bed”andb$<>”sta”then45300

Notice there’s a quote mark (“) missing from car. Retyping the line exactly as is with the quote mark fixes the problem. (It’s already fixed in v1.)

Getting the pillow and matches and then using “go up” to leave results in another type mismatch (in the “pre” version).

Trying to do the same thing in the “v1” game results in an entirely new bug.

Just typing “u” works though.

There’s one other accessible room to the east of the cell.

This is on v1, pre crashes when you examine the toilet.

Trying to “go toilet” gets the response “AH! That was better!”

I proceeded to then try to do something with the pillow and matches with no luck.

The source code in question has:

if x<>19orx<>20thenprint”It wont ignite.”:go7

The issue is “go7” which should be “goto7”. Line 7 is the main parser. That wouldn’t be caused by character issues, would it?

With the number of bugs I’m not going to put myself on the hook for going any farther (I don’t even know what the goal is!) but it quite likely is the first adventure game from Sweden on a home computer so it’s worth some effort. It doesn’t feel like a systemic kind of issue (one POKE in memory and everything works) but more like Marooned with an abandoned work in progress. Still, we were eventually able to get through Marooned (thanks to exploradorrpg) so I’m not going to call this one impossible.

12 days ago

Renga in Blue - Aug 21

Citadel Adventure: Everybody Might Be a Member of the KGB

(Continued from my previous post.) First, a resolution of the technical mystery with the caps-swap, courtesy of Andrea Pachetti in the comments (who has a blog dedicated to the history of Italian videogames, I liked this post on patents). As I theorized, this was ported from a Commodore PET; Andrea found it was specifically a […] 14 days ago

(Continued from my previous post.)

First, a resolution of the technical mystery with the caps-swap, courtesy of Andrea Pachetti in the comments (who has a blog dedicated to the history of Italian videogames, I liked this post on patents).

By Louis Mittelman, Jr. Via the Smithsonian, Usage Conditions Apply.

As I theorized, this was ported from a Commodore PET; Andrea found it was specifically a PET 2001 (the first model) with a 32K memory extension added. (The main smoking gun was a “POKE 59468,14” command in the source code which causes the PET to switch to a mode which “looks better for typing, but has fewer graphics characters”.) In the VICE emulator you need to choose that particular machine, then pick “32k” for memory which will make the model list as “unknown”, then load this file Andrea prepared; this allows for the original BASIC source to run with normal capitalization. For the remaining screenshots I’ll be giving them on PET. (For the most part. The save states were having issues due to the strange character set handling so I played on C64 first before making a run on PET.)

Using the PET clue, Andrea went on to find a classified ad with an address, then cross-checked that to find the likely author: Hans-Dieter Ihlenfeldt. He was a German botanist born in 1932 (died in 2023); Wikispecies lists him as authoring 15 taxon names and he has an incomplete set of papers up at ResearchGate. This ends up explaining something in the game you’ll see later.

Past that: a resolution to the 4711 mystery, which I got from multiple people both on and off my comments (thanks to everyone)! There’s a particular German perfume with that name. It’s famous enough that searching “4711” alone gets a bunch of perfume hits; I admit I was in the mental space of assuming a self-contained puzzle (without outside references). Normally I’d still consider the puzzle unreasonable since we’re solving from the word PERFUME and getting a number too short to be a phone number (also, there’s lots of different numbers perfumes could be) but I am reliably informed that in Germany 4711 being associated with perfume is strong enough for meme-status.

The same is true for the number 0815 in the text…

Commander Columbus speaking.
We’ve got a special mission for you. We just received informations about a theft of global dimensions. For the sake of all of us we won’t tell you exactly what it is, we know you’ll find it out yourself. Phone us again when mission completed. We want both objects.10.6.9.5
Hard luck, agent 0815.
Click.

…which is named after a machine gun which was “run of the mill”, “ordinary”, or “uninspired”, like our main character apparently is. All this, plus some translation-dictionary-accidents you’ll see later, lead me to think that this was originally written in German and translated to English, as opposed to being written in English by someone struggling; we just happen to have the English version only (this happened with Caves of Olympus, although I was eventually able to find the German version).

The 10.6.9.5 part I guessed had to refer to the codebook, giving the message poison-bomb-lead-microfilm. I have finished the game and I have no idea what this means.

Back to the action! After the 4711 info I was simply unable to move a car. Before I get to how that works, I should mention that while the car appears empty, it has stuff in it if you OPEN TRUNK and OPEN BONNET, neither which are mentioned anywhere. (I had to look up the word “bonnet”. I use “hood”.) Also, the items you get from both you then find by going inside the car.

The fuel, torchlight, rope, and battery are all useful. I guess the idea is that it’s an open-top sportscar, but this still doesn’t make sense to me why you’d be outside the car to drive it.

So to be clear, you drive the car by standing outside the car, and then you get things from the trunk and hood bonnet by going inside the car. Also you need the battery in because it will be dark when you drive otherwise (so when you take it out, and you’ll need to take it out, make sure you put it back in!)

To drive the car without crashing, rather than typing DRIVE CAR, type DRIVE (DIRECTION), like DRIVE WEST to start. Then you can DRIVE NORTH safely to an intersection, then DRIVE EAST to a field with an unfortunate name, or rather a normal name with an unfortunate namespace clash.

It’s rapeseed. Language translation issues aside, I could easily see a botany professor not even thinking about this reading awkwardly.

The tool shed contains a turn of phrase which suggests translation dictionary trouble (“The wind is blowing through the rifts”) as well as a shovel which is a complete red herring.

At least the initial result of using it suggests it might be a joke item. This is making fun of the Scott Adams style *treasure* hunt games.

The saw and bucket are absolutely required. Hopping back in the SPORTSCAR and driving east incidentally kills the player in a swampy bog; the only thing to do is drive west and north and arrive at a gate, the Citadel of the title.

The deadliness continues if you try to GO GATE, as it is electrified and will zap you dead. I found I could DRIVE GATE and get through just fine. I later found out from the walkthrough you can PUT RUG which will interpret the act as covering the gate (as opposed to just dropping, like PUT does everywhere else) and the rug serves as protection against electrocution. You can then climb over.

This represents what I think is a true alternate solution on the author’s part. Maybe the car entering was a bug? The car gets trapped on the other side of the yard.

I’m in a yard of an citadel. Main building ahead.

Obvious exits: door

Visible items: SPORTSCAR. TREE. BLOWPIPE. CHAPEL. WELL. SWIMMING POOL. GATE.

Yet: when the way to escape is made, it applies to both if you entered via climbing or car, and the car can’t escape until you’ve done it. As long as you are holding the fuelcan from the car you are able to operate the powersaw from the shed and CUT TREE:

This was the variant reality where I tested the rug-climbing entrance. The sportscar is parked to the south.

This crushes the gate and lets you escape south either by foot or car. Note though this is premature if you do it right away, as you need to climb the tree first before cutting it. Let’s get the map out and start explaining the layout:

There are five exits from the yard: chapel, well, tree, pool, door. The door is locked; you can nab a key easily from the chapel…

…but when trying UNLOCK DOOR from the yard the game informs you the key only works from the inside. Hence you need to climb the tree:

This gives you a route through the window and downstairs, where you can unlock the door from the inside and pass safely in and out of the building normally. After you’re done with this it is now safe to cut down the tree.

You might notice another passage linking out of the chapel, but I didn’t discover it until much later in my gameplay, so let’s visit the two other places connected to the yard, and then explore the building. You can find yourself a quick death by typing GO WELL.

I’m in a deep well.

Obvious exits: UP

Visible items: IRON GRATING

Yaahhh… Falling.

SCORE: 0%

You can PUT ROPE (from the car) in order to get in safely, but you’re then just stuck by the iron grating. There will be an item to take care of this later.

Then there’s the pool, which I had trouble even parsing with the dictionary-accident troubles:

I’m in a astonishingly deep pool. Down there something is glooming blue. Warm!

Obvious exits: UP

Visible items: WATER. CORK.

Just to recap, from the car we have a saw (used with a fuel can on a tree), a torchlamp (used with a battery), a rope (used on the well), and a bucket. The bucket, the only unused one, can scoop up some water here. Going inside the door and to the west, you can find a fireplace and put it out (PUT WATER)…

…then go downstairs to find a cellar with a MASSIVE WALL which is really the main obstacle of the game. (I don’t know what “concrete drops” are referring to.)

I’m in a musty cellar. Concrete drops on the floor.

Obvious exits: UP

Visible items: HACKSAW. MASSIVE WALL. BLUE GAS BOMB.

Other than the saw and the blue gas bomb added to our stash, and the TAPE RECORDER, WHISKEY BOTTLE, and POCKET LIGHTER next to the fireplace, you can find around the house you can find PLASTICINE in a refrigerator in the kitchen (tasty!)…

…a DIVING SUIT and RED GAS BOMB next to the upstairs window (entered via tree), and some RUSTY ARMOUR in the entrance hall (which we’ll get to last). Here I was incredibly stuck until I realized that while I entered the house’s attic through a window, if you go back through the window you land in an entirely different location.

I’m in a dusty attic. There’s a window with lots of webs in front of the pane.

Obvious exits: DOWN

Visible items: DIVING SUIT. RED GAS BOMB. WINDOW

Command? GO WINDOW

I’m in a shingle roof. There’s a window to the left.

Obvious exits: UP

Visible items: WINDOW

Going up higher there’s a roof with a RING.

GET RING responds with “it’s fixed” but I was able to PULL RING and yank out a whole trap-door leading to a study room.

I’m in a study room.

Obvious exits: UP

Visible items: CBM COMPUTER. MAGNET.

I had a lot of trouble working the computer, You can START COMPUTER and then PLAY RECORDER (that separate tape recorder, playing it somehow translates into playing it for the Commodore).

Keep in mind the “voice recognition”, that will come back later (in a baffling way). You can leave by heading back to the tower and going DOWN; if you peek back at the room description you’ll see the pool is below and you’ll land in safely. (The walkthrough puts in the dive suit before doing this; as far as I can tell you can do this entirely safely with no problem.)

Looking back at the obstacles left, there’s the wall still in the cellar, the grating in the well, and the item “glooming blue” in the pool. The hacksaw from the cellar takes care of the well issue.

This leads to a tunnel where you can find a TIME FUSE, followed by a chapel containing a COFFIN and some SKULLS. The coffin is one of the treasures you need, bizarrely enough! (It also is heavy, so you pretty much need to dump everything and work in the dark. Fortunately there’s no tripping around in this game, and once you have your pathing worked out having a light is optional.)

There’s an alternate route here where you PULL LAMP while in the chapel, exposing a hole you can go down, but then you’re trapped at the grating if you haven’t sawed it open yet. This is still good in a seeing-what’s-ahead sense.

The TIME FUSE and the PLASTICINE are sufficient to handle the wall: DROP PLASTICINE, START FUSE (ugh), PUT FUSE, get out of there. I need to test some more but I don’t think the fuse even needs to be with the plasticine.

Slipping in with a C64 screenshot indicating this can go terribly wrong. I think it’s based on real-time and I had the system going too fast?

The explosion happening properly, although there’s a secondary explosion as well later.

With that taken care of there’s a vault with a safe inside further. I admit I had to check the walkthrough for this part, as you’re supposed to put the magnet on it, then play the tape recorder. This will let you nab a microfilm inside. (I tried to match the poison-bomb message to it but I couldn’t see a connection.)

The microfilm is of course one of the items you need, but there’s one more, and this one’s very cryptic to get: the mysterious pool item. Take the blue gas bomb, dive suit, and rusty armour from the house. Hop in for a swim.

Now, follow this series of instructions: OPEN BLUE (the gas bomb), GET CORK, PUT BLUE. (I am copying direct from the walkthrough. No clue what’s going on.) This will somehow manifest a PLUTONIUM-NUGGET.

That’s everything, and it’d be nice to just go home, but there’s one last wrinkle.

This isn’t nearly as bad as the previous shenanigans except for a verb issue. It turns out the telephone is lurking back in the shed (where we found the useless shovel and the useless diamonds). Take it back here and FIX TELEPHONE (!!!) and then you can DIAL 4711 and finish the mission.

I feel no guilt whatsoever at exposing the game’s secrets. I still don’t know what’s going on with the book’s message or the nugget, or why we were supposed to figure the magnet would work on the safe combined with the tape recording, and why the tape recording had data in one circumstance but when used a second time gave a voice command.

(It is fun, though, that once again Valley of Cesis is echoed. At the end of that game it says “don’t tell anyone else how to do it”.)

Some of this might be German-English confusion but some of it definitely isn’t. The strange thing is, looking back, I do see mounds of creativity: there’s some clever attempts at difficulty and trying to make a complicated world be as compact as possible. A careful editor and a saved-game feature might turn this from unfair into … well, maybe not fair, but playable.

Coming up: A game from Sweden the same year as Citadel Adventure, written in English.

14 days ago

Zarf Updates - Aug 20

Visible Zorker search feature

Apparently today is the worst possible day to post about Zork the text adventure? See articles about Duskbloods if you don't follow FromSoftware news, which, to be clear, I don't. Spoiler: everybody's hot for a playable goon named "Zork". But ... 15 days ago

Apparently today is the worst possible day to post about Zork the text adventure? See articles about Duskbloods if you don't follow FromSoftware news, which, to be clear, I don't. Spoiler: everybody's hot for a playable goon named "Zork".

But I shall defy the Trending News gods! I have deployed a new Visible Zorker feature: a search box in the Source pane.

ZIL source code from Zork 1. The definition of the AXE object is highlighted. On the right is a floating column of search results: AXE, AXE-F, and several text strings that mention a "bloody axe". The source pane of Zork 1, showing a search for "axe".

You can search for the name of any object, routine, global variable, or constant. The search will also find printable strings containing your search term.

Clicking on a search result will jump to where that symbol is defined. Note that it doesn't find every location where the symbol is used. It's not really a full-text source search. But it's handy for poking around and seeing how things work -- which is what the Visible Zorker is all about.

Naturally, the search box is available on all current and future Visible Zorker pages.

ZIL source code from Starcross. The definition of the SPIDER object is highlighted. On the right is a floating column of search results: SPIDER, SPIDER-QUESTIONS, I-SPIDER, and several text strings that mention the "spider". The source pane of Starcross, showing a search for "spider".


In other news, Visible Enchanter is now in progress. It will be available to Patreon supporters on September 1st. I've also posted (with no paywall) my scans of the Enchanter folio package.

This is not the copy I played when I was young. I snarfed this package off Ebay. Actually, two packages; the Infotator I found came with a mix of Enchanter and Sorcerer feelies. I wound up with two spell lists. That turns out to be a win, because one of them was stained by the degrading "red wax" (plastic) seal. Adds to the air of authenticity, I say.

A folded parchment with a calligraphic inscription: "If you trule are the one brave enough to face unspeakable peril, let your wizardly powers reveal our words." The parchment was sealed, but the seal is missing (and has left an oily stain).

I'll see you in September with the open-source release of The Visible Witness.

15 days ago

The Sharpee Blog - Aug 18

Characters and Conversations

Based on the requirements of two of my WIPs, I needed robust character and conversation systems. Normally these would be game-specific since the story dictates how dialogue is presented and executed. These two additions are general system implementations, but bring a great deal of potential to storytelling.

I did

17 days ago
Characters and Conversations

Based on the requirements of two of my WIPs, I needed robust character and conversation systems. Normally these would be game-specific since the story dictates how dialogue is presented and executed. These two additions are general system implementations, but bring a great deal of potential to storytelling.

I did not make any attempt to chase Versu's capabilities. I was specifically looking at NPC agency. How can an IF story be written so that its PC and its NPCs have full autonomy and agency within a story.

This means having personalities with moods, goals, friendships, enemies, and more. These come in the form described below:

Character model — the state

create Jonas Reed
  a person, proper, very impulsive, slightly honest
  temperament duty over fear
  never betrays a confidence
  mood anxious
  feels devoted to Marta Kell
  knows the-ledger-burning, witnessed, certain
Piece What it holds
Personality & temperament Stable traits, and which pressure wins when two collide (duty over fear)
Principles Lines they will not cross (never betrays a confidence)
Mood The volatile layer — what they are feeling now
Feelings & knowledge Who they care about; what they know, how they learned it, how sure they are
Goals What they are trying to do, with priority and gating (active when it is breaking)
Influence & face-acts Pressure they exert on others — intimidation, charm — and how it lands (witnessed / resisted)
Conscience What they are burdened by, and what that costs them to keep

Conversation — the selection

Construct What it decides
Manner How a reply is delivered, by mood — a beat of business, or a voice
Greetings First time, on return, again so soon, after days, asked again, on leaving
Topic recency Whether a subject is fresh, recent, or stale — and what that changes
Exchanges A question they asked, awaiting your answer; may be blocking
Initiative When they speak unprompted — open floor, subject change, harm
Threads A subject they will carry across turns, beat by beat, until it concludes
Continuation prompts The player pulling the next beat: tell me more, continue, go on, and?

A taste of each of the three that do the most work:

define exchange the-offer for Will Kemp, blocking
  answer "yes", "aye", "sworn":
    phrase kemp-sworn
    change Will Kemp to sworn
  on leaving:
    phrase kemp-calls-after
    leave
  on silence:
    phrase kemp-offer-silence
end exchange

define initiative for Will Kemp
  on an open floor, when it is cheerful:
    phrase kemp-interjects
  on an open floor, when it is stung:
    hold their tongue
  when the subject changes:
    deflect to "the offer"
end initiative

define conversation the-defection for Will Kemp, blocking
  about "the rose", "the offer", "henslowe"
  opens when the grievance was discussed and the-blow-up is stale
  beat:
    phrase kemp-names-his-price
    then asks the-offer
  on refusing:
    phrase kemp-holds-the-thread
  on resuming:
    phrase kemp-takes-it-up

This is most certainly a first version and changes/additions are likely, but this is built into the latest version of Chord Writer now available on https://sharpee.net/.

17 days ago

Renga in Blue - Aug 15

Citadel Adventure (1982)

In 1980, Commodore got their first factory in Germany (in Braunschweig). The CEO Jack Tramiel came to give a speech and was warned “don’t tell them you’re Jewish”. He handled it in typical Tramiel fashion: So what did I do? I made a speech to them and told them all I was Jewish and that […] 20 days ago

In 1980, Commodore got their first factory in Germany (in Braunschweig). The CEO Jack Tramiel came to give a speech and was warned “don’t tell them you’re Jewish”. He handled it in typical Tramiel fashion:

So what did I do? I made a speech to them and told them all I was Jewish and that I was a survivor of the concentration camps. And then I said that I wanted everyone who was an SS officer in my office in the next two days. Over twenty of them came in and about six walked out, saying they will never work for a Jew. The others apologized, it wasn’t their fault, and all that. I saw it as honesty and that they were looking for forgiveness and I gave it to them. You see, at first, after the war, I had feelings of revenge, but that changed when a priest said to me: “If you are going to treat the Germans the same way they treated you, what’s the difference between you and them?” The way he said it just totally changed my outlook.

— From Against All Odds

Commodore generally owned the German market all the way through the Amiga. Hence it’s not technically surprising we have a C64 game today, although the circumstances still have a wrinkle–

This is one of the rare cases of a game I had in hand during my 1982 run, but skipped anyway due to technical difficulties. The downloads I could find of Citadel Adventure have a “case reverse” that I could not resolve no matter what settings I switched things around to.

i’M IN A lONDON APARTMENT. aCROSS THE ROOM A FLIGHT OF STAIRS.

oBVIOUS EXITS:

vISIBLE ITEMS:
rug. telephone. book.

cOMMAND?

That’s after pressing the “character swap” key combo (shift + the Commodore button); if you don’t use the swap it looks even more nonsense.

I recently approached the Mystery House II Rescue Team (including gschmidl, bsittler, and f_t_b) and after some noodling bsittler managed to create a “case fix” version of the game that has the capitalization swapped. The file here should work directly in a standard emulator without any tweaks.

10 rem*******************************
20 rem ‘citadel adventure’
30 rem*******************************
40 rem (c) ihlenfeldt 1982
50 rem*******************************
60 rem all rights reserved
70 rem*******************************
71 rem nicht listen, selber knacken
72 rem*******************************

The author only gives their name as Ihlenfeldt; there’s enough German text in the comments of the BASIC file that it’s pretty clear we are dealing with a German speaker, although it is unknown if the author was located in Germany in 1982 (or Austria, or Switzerland…); maybe they were in an English-speaking country when they wrote this but German is the author’s first language. Either way, the game text is in English. We’ll soon have a game from Sweden with a similar situation.

(The “nicht listen, selber knacken” is “don’t list, crack it yourself”, which means don’t try to solve the game by listing the BASIC code. This mirrors a directive in Valley of Cesis. Perhaps with public domain the temptation to “solve by source code” was stronger.)

Early issue (August 1984) of 64’er Magazine, a popular C64 magazine from Germany. Source.

Assuming the author was physically in Germany in 1982, it’s early for the C64; they were officially available only starting in 1983. They did have the ill-fated Ultimax in October 1982 — a C64 stripped down to more like VIC-20 specs — but it had a low amount of memory, lower than the size of Citadel.


“A very low price portable color microcomputer for the home market” according to the 1982 Commodore Annual Report. Image by Thomas Conté, CC BY-SA 2.0. Source.

It is of course possible to get an computer imported (see the backstory behind the completely different game called Citadel); it could be the game was written on a different system but ported with the year maintained (maybe it was ported from Commodore PET and the caps-issue happened upon transfer).

The opening screen gives no background on what the goal is. It does give some verbs (“GO, TAKE, LEAVE, OPEN, DRIVE, SIPP, DIG”; note that there’s no DROP, you can LEAVE or PUT items) and it also warns “there are a lot of possibilities to commit suicide” and mentions a “Play Time” of 60 minutes. That 60 minutes is not meant to estimate how long it will take to solve, but rather you have a hard time limit of 60 minutes real time, and if you exceed that the game is over.

This is after leaving the emulator running overnight.

I was able to discover fairly quickly this was a spy story of some sort as the “book” is a codebook and there’s a “picklock” right underneath the rug. I was struggling to get more happening so I tried HELP which suggested OPEN BOOK (given you have to open the book to read the codes inside, I have no idea what that means in-reality) which gave a note that mentioned “Phone PERFUME”.

Regarding the “moskow”, the German exonym for Moscow is Moskva, so the “k” must have snuck in there via that route.

More on that in a moment; I took a brief step outside, tried to go north, and got run over by a car. Going east again, there was a SPORTSCAR in a garage, where trying to DRIVE it led to an immediate crash.

You also have to be standing outside the car to drive the car.

Baffled by both the inability to drive a car and the need to be standing outside the car to drive it, I went back to tackle the PERFUME clue some more; the weirdness with the car made me suspect I was missing something with the parser, so I peeked at the first line of the walkthrough (by Alex Dijkstra). It mentioned to PUT (drop) the cigarettes in inventory as the first action of the game; I guess those are red herrings. It also says to DIAL (not “call”, agh) the number 4711.

Now, I might normally plow ahead right here, but I really don’t want to just lean on the walkthrough the whole game, so a pause to make a post here helps me do a mental reset. But more importantly, I don’t understand the puzzle: why 4711? If you apply the “generic” phone code to the word PERFUME you get 7373863; I would assume the code book is what you really use but I can’t see any combination where diamond-wheat-moskow-moskow or diamond-wheat-tank has any connection with the word PERFUME. Anyone have some thoughts?

I thought this was going to be a quick one to solve but I’m starting to suspect it bears closer resemblance to Intercept (cryptic, difficult-to-handle game conventions) moreso than CIA Adventure (straightforward).

20 days ago