This is the public redacted version of the text adventure game found on https://langworth.com. It's mostly the same source but without the initial puzzle secret and most of the story and secrets.
👉 The file you probably want to look at is
the-archive.inform/Source/story.ni
. 👈
It's built with Inform 7, a system for creating interactive fiction (IF) games like Zork. On the web site it runs in a CRT terminal emulator (langterm) with a Z-machine HTTP server (glulxe-httpd).
You almost certainly want to read Inform 7 for Programmers.
We'll install the IDE and use its pre-compiled tools, but I prefer to do development in the terminal using glulxe.
brew cask install inform
- installs the IDE and compilerbrew install glulxe frotz
- installs a command-line Glulx player and dfrotz for testing- Open the extensions folder from Inform.app (probably
~/Library/Inform/Extensions
) and download https://github.com/i7/archive and extract the contents there - Make sure the game compiles from Inform.app by opening
the-archive.inform
and clicking the "Go!" button. npm install -g nodemon
for an easy file watcher- Open three terminals:
vim story.ni
- to edit the story (and install my port of the vim-inform7 syntax file)nodemon -e ni -x ./build
- to build the .ulx file when the story changesnodemon -e ulx -w run -w . -x ./run
- to run a script through the game when the .ulx file changes
- To build a non-ncurses, text-only version of glulxe: Check out glulxe and cheapglk beside each other. Build cheapglk and then glulxe. Copy the
glulxe
binary todglulxe
somewhere in your path. (The "d" is for "dumb.")
./test
will compare the game's output against the saved snapshots.
Run ./test -s
to update the snapshots.
Run RELEASE=1 ./build
and copy the .ulx
file to the server.