Handheld text-based adventure gaming with Quest Smith

Play text-based adventure games that print out in real time, with Quest Smith: the Raspberry Pi Zero W–driven handheld gaming device from Bekir Dağ.

Text-based adventure games

Today I learned:

Around 1975, Will Crowther, a programmer and an amateur caver, wrote the first text adventure game, Adventure (originally called ADVENT because a filename could only be six characters long in the operating system he was using, and later named Colossal Cave Adventure).

But I’m sure you already knew that.

According to the internet, text-based games in their most simple form are video games that use text instead of graphics to let players progress. You read the description of your surroundings and choose from a set of options, or you type in your next step and hope the game understands what you’re talking about.

Colossal Cave Adventure

We have a conversation going in our team right now about whether the term ‘text-based games’ is solely used for video games of this nature, or whether choose your own adventure books also fall into the category of text-based games. Leave your thoughts in the comments.


Quest Smith!

After encountering a similar handheld gaming device in a Berlin games museum, Bekir Dağ decided to build his own using a Raspberry Pi Zero W.

Quest Smith text-based game

For Quest Smith’s body, Bekir Dağ designed a 3D print, and he provides the STL files for free on Thingiverse. And for the inner workings?

A Raspberry Pi Zero W fits snugly into the body alongside a thermal printer, a battery, and various tactile buttons. The battery is powered by a solar panel mounted on the outer shell, and all components are connected to a TP4056 board that allows the battery to power the Pi.

Quest Smith text-based game

The Quest Smith software is still somewhat of a work-in-progress. While users can build Quest Smith today and start playing, Bekir has put out the call for the community to submit their own parts of the story.

Each level requires two versions of the story, which makes the possiblities grow exponentially. So it will be very difficult for me to finish a single story by myself. For the player to reach level 9, we will need to have 1023 story parts to be written. If you can help me with that, it would be amazing!

To see more of Quest Smith’s build process, find the files to make your own device, and instructions on how to contribute toward the story, visit the Quest Smith Hackster.io page.

More text-based adventuring with Python

If you’re interested in writing your own text-based adventure game in Python, we’ve got a free online course available in which you can learn about object-oriented programming while creating a text-based game. And for a briefer intro, check out Wireframe magazine issue 6, where game developer Andrew Gillett explains how to make a simple Python text adventure.


Dougie avatar


rob avatar

I love the idea that non-programmers can get involved. Just create a free GitHub account, clone the project, create the extension to the story via simply named text files, create Pull Request.
Files are named ending with 0 or 1 depending which path you took. So 001.text was no to the first page and yes to the second.

Joseph Alway avatar

I see choose your own adventure games as a natural extension of the text-based adventure game. Not exactly the same thing, but in the same ballpark.

Printing out your adventure is quite a waste of paper. It is receipt paper though, and doesn’t seem to be wasting a lot on excess white space. All in all a pretty cool project. The project would look awesome, if it tied in with the game’s theme. As opposed to being a yellow brick.

AndrewS avatar

“Printing out your adventure is quite a waste of paper.”

Or you could look at it from the other point of view, in that it’s like a choose-your-own-adventure book that wastes less paper than a whole real book ;-)

John Whatson avatar

Here’s my attempt at a Python text adventure. ISS Emergency!

Luke avatar

Good project, but big waste of paper. In a time where the Earth is losing its natural forest habitat at a rapid rate, the makers of Raspberry Pi and its project designers should take responsibility in its project ideas and consider the footprint its projects leave on our planet and what impressions they are giving people, especially young people. I have some suggestions: 1) use a digital display instead of a receipt printer, or 2) add a speaker with a voice that reads out the adventure, or 3)show how one could re-use draft paper buy cutting strips and connecting them to make a receipt paper roll.

Comments are closed