Lessons from creating my first text adventure

82 pointsposted 8 days ago
by kqr

14 Comments

chrismorgan

5 days ago

Just tried playing the game, and found my very first actual breakage due to blocking custom fonts in over five years of using the web like this.

It just puts up a “NetworkError: A network error occurred.” error and doesn’t start.

The reason is this:

  await document.fonts.load(`14px ${font_family}`)
Since this isn’t actually necessary for page functionality, it would be better wrapped in a try { … } catch {}, or just with .catch(() => {}) appended.

My bizarre workaround is a user stylesheet to remove the offending font:

  :root {
      --glkote-mono-family: monospace;
  }
Honestly, I’m a little surprised it took five years to find something that actually broke completely from this.

kqr

5 days ago

It might be worth clarifying that the game itself does not deal in typefaces: it's the interpreter running the game that handles font business. The link in the article leads to the web-based Parchment interpreter running on iplayif.com, but there are other alternatives both for web-based play and native applications.

Maybe the Parchment people would appreciate the bug report, though. Or if it's iplayif.com that introduces this bug. I have no idea!

thrtythreeforty

5 days ago

I'm so glad someone finally echo'd how I felt trying and failing to learn Inform 7. It was very much "there is a syntax. We are not going to tell you what it is." It was a shame because it looked so cool to be fluent at. The learning curve was just too high for me.

crooked-v

5 days ago

The ability to (in theory) easily get second-order behavior out of simple definitions in Inform 7 is something I would find really fascinating if only it didn't require knowing all the specific magic invocations to do so.

colkassad

5 days ago

I much prefer TADS 3. With that said, I'm glad Inform 7 exists. It's such a strange one that seems to work for a subset of creatives, made by people that really love the art form.

jhbadger

5 days ago

I like ZIL, in part to be contrarian, but it actually is an interesting language, both because it is based on a subset of the 1970s Lisp-related language MDL, and because it is the language the Infocom implementors used historically, and these days you can even find the actual ZIL source code to Infocom games and even a few unreleased ones in various stages of completion.

mathiaspoint

4 days ago

Yeah inform 7 really feels like a regression from inform 6 at least in this way to me. I've been avoiding it.

ianbicking

5 days ago

Some of the issues with parsers and knowing what to type could be helped quite a bit if the text adventure interfaces had a bit more affordances. Making important objects bold is an easy one (unless you feel that determining the importance of objects is part of the puzzle). But if you break out of the linear-narrative approach there's a lot to do. Label exits with their destinations (if you have traveled there before). Use colors akin to blue/purple links to indicate history. Inventory doesn't need to be a command. If mapmaking isn't part of the challenge, then give people ways to move quickly (e.g., "go to throne room" could just find a path to the throne room based on your knowledge).

AndrewStephens

4 days ago

I used to be a bit of a parser purist but lately I have been coming around to choice-based games. Although choice-based games have traditionally been simpler, there is nothing saying that a choice-based game cannot have a complex model of the world and interesting puzzles.

bdunks

4 days ago

Thank you for sharing! After reading the article, I played your game and really enjoyed it. My first text based game in ~30 years.

I was inspired and went on to play one of the games listed on IFDB tagged “short” and “recommended for beginners”. (Suveh Nux).

Also super fun and satisfying to beat!

sevenseacat

4 days ago

That was fun! I got stuck at one part and had to look at one of the hints though :S