I enjoyed playing text adventure games back in the 80's, and looked at how I could use voice as an interface instead of a keyboard.

What it does

It allows you to play a multiplayer graphical text adventure using your voice.

How I built it

I created the actual adventure using the excellent Evennia codebase (with a few modifications). I used Javascript and Django for the interaction between the adventure and the Alexa Web API for Games.

Challenges I ran into

Creating the multiplayer element was a little tricky. If a player picks up an item needed for their quest, I needed to spawn that item for the next player to pick up. But I didn't want the original player to see another item. Nuances really, or nuisances if you will! Also, dealing with some sort of cache when trying to view certain things I had changed. Testing on my FireTV would not show the updated results straight away. Not being able to interrupt Alexa after sending an async message to be spoken from the game - was a shame. Having to use an on-screen keyboard to complete this submission - because my keyboard (and a replacement) won't work - is a little testing. My TV also broke as I was creating the video, hence the poor resolution of the screen capture!

Accomplishments that I'm proud of

Having an idea and making it work.

What I learned

I learnt a lot more about Python & Django - which was fun. Building the actual game was also a great learning experience. I also learnt that I cannot draw, but taking an open source image, reducing the size, then scaling it back up - can produce (ish) the pixelated look I wanted.

What's next for Adventurer - The Manor

Adding some kind of clan system, where you can only interact with other players in your clan would be good. I would imagine if too many players were 'talking' in the same room, it would be a bit much. I would like to have some sort of lobby, where the player could choose different doors to take them to other adventures - maybe with ISP? Also, as the Evennia codebase allows 'building' within the actual game, this may be an interesting feature to include in any future development.

Built With

Share this project: