Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

The Undergarden

A text adventure game, with no death or dead ends.

Just for fun, and to learn Rust.


Basically everything. :-)

The order of this list is relevant, but subject to change.

  • Section navigation: move from room to room freely
  • Objects/people the player can interact with (take, examine, ...). Objects and people are technically the same, as there is no reason not to be able to talk to an object; on the other side, people can be examined, pushed, etc. Begin with very basic interaction (objects only provide an info string for every interaction).
  • Objects which move the player to another section/room when used (portal objects)
  • Implement inventory and take interaction
  • Use a proper parser instead of a bunch of regexes. Pest looks nice
  • Provide a way to win the game
  • Implement state in sections and objects: objects may change (i.e. a book is open or closed), and rooms may change their description and/or exits (i.e. a locked door can be unlocked) if the player does something
  • Provide an alternate IO trait which delays the writing of characters, providing a teletype-like visual effect
  • Use bold, italic, etc to show important things in the console. This would need to be done in a somewhat portable way. Also, the IO trait would need to parse the strings in order to apply the poper escape codes.
  • Compile to a wasm target and have the game run in a web browser
  • Non-obvious (i.e. more than one sentence) talk with people/objects
  • Allow player to save and restore games
  • Provide a way to load text data from a configuration fine
  • Attempt to develop an alternative interface use ncurses or so, in order to provide a semi-point&click experience by allowing to use buttons to move around, interact with objects/people and access to inventory
  • I18N support

Months of fun ahead!!! 😏


This work is distributed under the MIT license.


Text adventure experiments




No releases published


No packages published


You can’t perform that action at this time.