About six months ago I had an idea to build a simple, little, text-based adventure game as a mobile app.
Mostly the idea came about because I had been telling my kids about some of the early computer games I played like Colossal Cave Adventure and Zork…but the more I thought about those old games, and the more I realized there’s a whole generation that has no idea about any of them, the more I began to think it could be a really good fit for a small mobile app.
So I decided I would try to build one in my “spare time”.
At first, I thought I would just build a small game and that it would take me about two weeks from start to finish…but as is often the case when you start to *really* dig into “spare time” projects, it quickly exploded into a much much more ambitious project.
So it’s now about six months, and a few thousand lines of code, later…and I have just *finally* submitted the initial version to the various app stores (and put up web based version at txtgame.net too).
Part of the delay was the fact that this was a *total* side project.
Since then, we were able to get a lot of good data/usage/feedback on the initial Coach Wizard system and determine that our initial idea/plans were just not going to be big enough (it continues to get new accounts at a trickle, but usage isn’t what we need/want it to be - so we are going back to the drawing board there and figuring out a new long term plan).
At the same time, and as luck would have it, Pubgears really started to take off and so instead of tapering down my day-to-day involvement I’ve done the complete opposite (and will probably remain that way for at least the next year or two as we focus on growth and scaling the business).
The other part of the delay was just simply in the idea I ended up committing to.
Since I was going to build a text-based, mobile, adventure game to introduce my kids to the genre, and I wanted to make the game fun, engaging, and as immersive as possible (for a text-based game)…I ended up setting a few ambitious goals for myself:
1. I figured I might as well try to put my kids into the game and focus the story/plot around them (in the hopes that it would at least hold their interest a little longer than what I suspected a “no graphics” game would).
So I started thinking about plots and game ideas that I could include them in, and eventually I came up with the idea that I would base all the characters in the game on real friends/people that they know. This gave me a lot of source material to work with (too much really) and before I knew it, the game had 21 missions, included 57 characters, had 385 locations on the map to design/define, and included numerous spells, items, and puzzles to interact with!
I’m pretty happy with how much depth and detail the game I came up with has, but I def. learned that the hard work of building a good game is *mostly* in what I call the ‘story’.
I grossly underestimated the time, work, and detail it takes…but I did learn a ton throughout the process (a large part of the 'project time’ was spent on researching how to develop/tell a good story – hence my tangents into screenwriting and some other creative/cryptic things you may have seen me mention through this time).
2. On the outside chance that people actually liked the genre/idea of text-based adventures, I wanted to make it as easy as possible to be able to make more.
So I started by building a game engine from scratch (the core of which I actually did get done in the expected two week frame). It started by just supporting some basic navigation things like being able to move a character around a dynamically defined board and look at things…but as I envisioned new and interesting puzzles, I began to expand the game engine to support a fairly large amount of scenarios and commands.
In the end, I was happy enough with it all that I decided to open source the game engine as well.
It’s officially called “bearded wookie” and is available on GitHub at https://github.com/Falicon/bearded-wookie (btw Github suggested the project name when I was setting up the repo - I liked the suggestion so I went with it).
However, if I released the same version that phonegap uses then players would be able to just view the source and get all the solutions to the puzzles and such (that’s no fun)…so I thought this would be the perfect reason to *finally* learn/implement NodeJS.
Though live and playable, technically the web version is not 100% complete yet as I have not taken the time to implement the ability for players to save or load saved games (because it will also require building a whole account management set of features in Node and I just haven’t hunkered down to do it yet)…but the game engine works just like it does in the mobile app (and the game file is the same that you get there too)…so it’s what I would call a *soft* release.
So overall it was ambitious…and I grossly underestimated what it would take…and I fully recognize that very few people are going to actually care about/be interested in/play a text-based adventure game (and this one turns out to be kinda hard on top of that because it is so deep/involved)…but in the end, I’m pretty happy with everything I built and learned throughout the process.
Still I do hope at least a few people, install it, enjoy it, and rate/review it well (oh yeah, and it’s FREE if that matters to you).
Check it out at http://txtgame.net (links to the various app store versions will be live there as they are approved).
This post has received 24 loves.
Kevin also talks in more depth about many of the these things around twice a month via his drip campaign and has a day job as CTO of Veritonic. You can also check out some of his open source code on GitHub or connect with him on Twitter @falicon or via email at kevin at falicon.com.
If you have comments, thoughts, or want to respond to something you see here I would encourage you to respond via a post on your own blog (and then let me know about the link via one of the routes mentioned above).