20th September 2015
Doing a typing game - properly
So I can touch-type. Not particularly well, perhaps - but getting to this level involved many sessions on a boring typing tutor during a long period of waiting around with nothing better to do. I knew there should be a better way.
Some years later, a game was released - effectively a loose conversion of a light-gun arcade game to PC :
The typing of the dead.
That's right, the game substituted a keyboard for a physical gun-shaped controller, and required players to type in words or phrases to progress.
Although I've never played it, I was astounded by the audacity of this ingenious conversion. This would clearly make at least some stages of learning to type more fun.
Since then, this concept has been repeated in many games, yet it seemed to me that often these were not extracting the full value from the opportunity.
After a couple of failed starts, then a lot of development, I made : Ghost Writer.
In this game, typing controls movement. You need to run away from enemies in a maze. Now, you not only need to type fast, but also think about what you're doing.
Similar maze-based typing games already existed. But all that I found presented a single random key for each direction. This is not optimal, because typing is about flow. Ideally, you want to be moving for the next key before you've finished the first.
So my game presents words flowing out from the player's position, and branching at junctions into different words.
I don't think I can tell you quite how involved doing that was, but I'm going to try anyway.
After finding and trimming a suitable word list, and sanitising it by removing every rude word I could think of,
I converted it into a prefix tree. That isn't enough, though, because each position needs to find entries with
suitable branches in every direction which don't overlap. Processing this for a new position was slow enough to stall the game slightly.
Furthermore, I soon realised that my censorship wasn't sufficient - there are many unsavoury words I didn't want to appear in the game.
So I curated every position of every maze for appropriate options manually. Several times, so that each position would have multiple word-sets.
I also had difficulty with ... the difficulty. Typing skill varies over quite a wide range, and I wanted to cater to everybody. At least, everybody who is past the basic stage of learning to type - knowing where the keys are on the keyboard. So I incorporated a typing test you're supposed to do before you start. This conflates typing speed with gaming ability, but since the complexity of this - for both the starting player and for game balancing - was already a concern, I didn't attempt to add more skill options. So I actually can't say how well this works, but I've tested it with good typists and bad ones, and they can all play the game. The levels do get harder, so if you find the first one 'too easy', please do persevere.
I must confess that I'm not 100% content with the game mechanics; it's harder to read the words than I'd like - particularly when they're backwards! Nevertheless, I'm pretty happy with the
game overall, and it has my usual approach to polish. In that regard this game has cusomisable sound effects (I particularly like the typewriter effects), and I made sure there were
keyboard shortcuts for all menus.
One feature I find amusing is that if you want to reverse your direction mid-word, you need to type a number. I, at least, find this harder to do, so there are game-play consequences.
Go play Ghost Writer now! If you have any comments, please put them below.