February 1, 2016

Passage, Emscriptened

A friend and I were recently reminscing about a poignant 2007 game by Jason Rohrer called Passage.

It’s hard to describe the game without spoiling anything, but since it literally takes five minutes to play, I encourage you to play it online right now.

The thing is, until today, you couldn’t play it online.

After the conversation with my friend, I walked back home, did some research, and realized that Passage was written in C++, and only playable if I downloaded it to my computer first.

As I’d done previously with Z-machine text adventures, I decided that needing to download the game was an unnecessary barrier to entry. The web of 2016 is more than powerful enough to run a game like Passage, and being able to experience it by visiting a web page just makes it that much easier for more people to try.

Fortunately, I also knew of just the tool for the job, and I’d been itching for a reason to play with it.

Emscripten is an amazing piece of technology that, in a nutshell, allows C++ code to be run on the web. And Jason Rohrer had generously donated his game’s source code to the public domain.

Converting the game to be runnable on the web still took a bit of work, though, which I’ve documented on the project’s GitHub repository. Feel free to check it out if you’re interested.

And again: if you haven’t already played the game, try it now. Seriously, it’s just five minutes long.

© Atul Varma 2021