Both lists below have the games hyperlinked to their Interactive Fiction Database page, which generally includes reviews and game files to download (or links/suggestions of where to get the game).
First, my personal list of favourites/best text adventures/interactive fiction that I’ve completed or at least played most (er, at least half?) of, ordered roughly in the order I encountered them:
Game | Year | Author | Publisher |
---|---|---|---|
Zork I | 1980 | Marc Blank & Dave Lebling | Infocom |
Zork II | 1981 | Dave Lebling & Marc Blank | Infocom |
Enchanter | 1983 | Marc Blank & Dave Lebling | Infocom |
Planetfall | 1983 | Steve Meretzky | Infocom |
The Hitchhiker’s Guide to the Galaxy | 1984 | Douglas Adams & Steve Meretzky | Infocom |
Wishbringer | 1985 | Brian Moriarty | Infocom |
The Pawn | 1985 | Rob Steggles et al. | Magnetic Scrolls |
Spellbreaker | 1985 | Dave Lebling | Infocom |
The Guild of Thieves | 1987 | Rob Steggles | Magnetic Scrolls |
Knight Orc | 1987 | Pete Austin | Level 9 |
Dunnet | 1982 | Ron Schnell | |
Curses! | 1993 | Graham Nelson | |
Spider & Web | 1998 | Andrew Plotkin | |
Counterfeit Monkey | 2012 | Emily Short | |
Coloratura | 2013 | Lynnea Glasser | |
Mentula Mancanus: Apocolocyntosis | 2011 | Adam Thornton |
Some of these may be being boosted by nostalgia, but I think they all pretty much hold up and are interesting/innovative in some fashion.
Looking over the author names, I remember when playing Infocom games back in the 80s suspecting that “Marc Blank” was a pseudonym….i.e. Last Name: [blank].
Dunnet is an interesting entry also in that it was originally written
in Maclisp for the DECSYSTEM-20, then ported to Emacs Lisp in 1992,
and it is the Emacs version (M-x dunnet
) that I’m familiar with.
A list of games I still need to play (never played before) or finish (haven’t made significant progress, though I spent a pretty long time with the Silicon Dreams games, Anchorhead, and Varicella, but don’t think I’ve made much progress (or I’ve forgotten what progress I made)), roughly in order of precedence (i.e. how soon I plan to play):
Game | Year | Author | Publisher |
---|---|---|---|
Anchorhead | 1998 | Michael Gentry | |
Cragne Manor | 2018 | [numerous] | |
Galatea | 2000 | Emily Short | |
Savoir-Faire | 2002 | Emily Short | |
Hadean Lands | 2014 | Andrew Plotkin | |
Varicella | 1999 | Adam Cadre | |
Endless, Nameless | 2012 | Adam Cadre | |
Bronze | 2006 | Emily Short | |
Balances | 1994 | Graham Nelson | |
Jigsaw | 1995 | Graham Nelson | |
Blue Lacuna | 2008 | Aaron Reed | |
A Beauty Cold and Austere | 2017 | Mike Spivey | |
Lime Ergot | 2014 | Caleb Wilson (as Rust Blight) | |
Suveh Nux | 2007 | David Fisher | |
Delusions | 1996 | C. E. Forman | |
Slouching Towards Bedlam | 2003 | Star Foster & Daniel Ravipinto | |
A Mind Forever Voyaging | 1985 | Steve Meretzky | Infocom |
Trinity | 1986 | Brian Moriarty | Infocom |
Snowball [Silicon Dreams] | 1983 | Mike Austin et al. | Level 9 |
Return to Eden [Silicon Dreams] | 1984 | Nick Austin et al. | Level 9 |
The Worm in Paradise [Silicon Dreams] | 1985 | Mike Austin et al. | Level 9 |
The Shadow in the Cathedral | 2009 | Ian Finley & John Ingold | |
Make It Good | 2009 | Jon Ingold | |
1893: A World’s Fair Mystery | 2002 | Peter Nepstad | |
Red Moon | 1985 | David Williamson et al. | Level 9 |
Shade | 2000 | Andrew Plotkin | |
Stationfall | 1987 | Steve Meretzky | Infocom |
Rameses | 2000 | Stephen Bond | |
The Moonlit Tower | 2002 | Yoon Ha Lee | |
Bureaucracy | 1987 | Douglas Adams | Infocom |
All of the games listed here, in either list, are playable in either Malyon or Gargoyle (with the exception, I think, of Hadean Lands), an admittedly rather arbitrary criterion.
]]>There may (likely is) some way of programmatically setting the X
Windows PATH variable in Guix System (née GuixSD) via the base
configuration (e.g. config.scm
), but I haven’t been able to uncover
anything that works. This is relevant for being able to use locally
installed static binaries or local shell scripts via the window
manager.
As a window-manager-specific workaround, in StumpWM, one can
programmatically set PATH variables via (setf (getenv "VARIABLE_NAME") "variable-value")
. Thus, if you store local static
binaries and shell scripts in ~/bin
, the following (which you could
include in StumpWM’s init.lisp
) will add that to your PATH variable:
(setf (getenv "PATH") (concat "/home/YOURUSERNAME/bin:" (getenv "PATH")))
I use this with a static Haskell binary greenclip, which adds clipboard functionality to rofi, and with shell scripts that give “pretty names” to Flatpak run commands.
For example, the literate/natural-language-based programming
interactive fiction design language Inform7 (which is due to be
open-sourced sometime this year) is now conveniently available as a
Flatpak. But the run command after installing is flatpak run com.inform7.IDE
, which is non-ideal. So I made a simple shell script
named inform7
placed in ~/bin
:
#!/bin/sh
flatpak run com.inform7.IDE
Nix can be installed as a standalone package manage on top of other distros, including Guix System, which is useful for be able to obtain software currently lacking in Guix System (including, ironically, Hugo, used by this blog, which is present in Nix). Packages available in Nix but not in Guix include Gargoyle, a very nice interactive fiction front-end client that supports a number of different backends, including Frotz and Glulxe. One of the benefits of Gargoyle is that it “cares about typography”. However, Nix applications by default seem to have trouble finding/seeing fonts, including system fonts, local fonts, and even fonts installed via Nix.
This can be fixed by (1) setting the FONTCONFIG_PATH
and
FONTCONFIG_FILE
, e.g. in StumpWM this can be done with:
(setf (getenv "FONTCONFIG_PATH") "/home/YOURUSERNAME/.config/fontconfig/")
(setf (getenv "FONTCONFIG_FILE") "fonts.conf")
And (2) forcing Nix to look in the right places by manual
specification in ~/.config/fontconfig/fonts.conf
, adding right
before the final </fontconfig>
(as appropriate):
<cachedir prefix="xdg">fontconfig</cachedir>
<dir>/home/YOURUSERNAME/.local/share/fonts/</dir>
<dir>/home/YOURUSERNAME/.nix-profile/share/fonts/</dir>
<dir>/home/YOURUSERNAME/.guix-profile/share/fonts/</dir>
<dir>/usr/share/fonts</dir>
And regenerating the font cache (via fc-cache -fv
) [possibly you may
need to install Nix’s fontconfig
package].