Rather than write a big long post-mortem of how developing Replica Island went, I'm thinking about writing smaller articles that focus on a single element of development. Just because the game has shipped does not mean that development is over, and I'm sure that I have much more to learn now than I did before the game shipped. And speaking of the game's release, it's tearing up the charts, thanks to Nicholai and his crack team of PR ninjas (ok, he doesn't really have any PR ninjas). This article, despite being ultra thin on details, seems to have reached a lot of users. I'll post more details soon.
Ok, so for this first Design Post-Mortem, I thought I would talk about the evolution of the Possession Orb. The Possession Orb is a special projectile that the Android robot can fire out of his body. It has the power to possess machines, and running it into, say, an enemy robot will let you control that robot. The Orb is controlled by tilting the phone, and you can extend its life time by collecting red gems.
The Possession Orb did not originally start out as an orb. And actually, it didn't originally have anything to do with possession either.
My original design for the Possession Orb was called the Player Ghost. The idea was that the player could drop the ghost somewhere in the game world, and after a few seconds it would begin to replay the player's recent movement. At any time the player could click a button and instantly teleport back to the ghost's current location--it was like a way for the player to undo a few seconds of movement. The ghost, I figured, could also press buttons, so there could be timing challenges involving hitting buttons with the player's body and then again a few seconds later with the ghost.
I got this idea from a crazy Nintendo Entertainment System game called Lot Lot. Lot Lot is a puzzle game in which two cursors move across a board filled with balls. One cursor is under the player's direct control, and the second cursor is following the path of the first, but about two seconds delayed. When the player's cursor is over a grid square that has balls in it, the player can press a button to swap those balls for the ones in the square pointed to by the second cursor. So game play consists of thinking about where you want the two cursors to be, drawing a path that you know will be correct two seconds into the future, and then hitting the button at the right time to shift balls to the edge of the board before they fill up. It's very difficult to understand at first but once it clicks the game play is crazy. Here's a video of Lot Lot in action:
So, my idea was that the Player Ghost would be like Lot Lot's second cursor: a replay of the player's recent movement that could still affect the game world.
Here's some early design sketches I made about this idea:
Sounds cool, right? I thought it would be cool if you could snap back to the ghost's location too.
I liked this idea, but when I ran it by Genki, my partner in crime, he was skeptical. He thought that puzzles would be hard to design and that users would have a hard time understanding the mechanic. But I wanted to try it out so I went ahead and implemented it anyway.
Functionally, the Player Ghost worked exactly as I had imagined. It wasn't hard to implement and it actually looked pretty cool. But it quickly became clear that Genki was right: the concept made no sense and designing puzzles was really hard. It was clear that puzzles were going to require a bunch of different objects just so that the ghost could work (e.g. doors that close immediately after you pass through them, rather than after a fixed duration), which lowered the quality of the idea significantly. And it was confusing as heck; I wasn't confident that even with supporting game objects the idea would ever really make sense to users.
Genki suggested that instead of the player leaving the ghost behind, the ghost should leave the player behind. This idea made a lot more sense, but I wasn't sure how to make puzzles out of it. Eventually we realized that possession is a cool mechanic that the ghost could be useful for (rather than just depressing buttons), and that tilt controls might be a fun way to add diversity to the input system. Tilt controls implied flying, so the ghost was freed from gravity. And at that point, it didn't make any sense for it to look like the Android robot any more, so we changed it into an orb (collisions with the background were more believable this way too).
Once we hit on the mechanic a lot of potential avenues for game design immediately presented themselves, which was a good indicator that the idea had more legs than its original version. Actually, I think that this mechanic is quite under-used in Replica Island. There's a lot more that we could have done with it, and actually tested with it, that didn't make it into the final game (try running the Possession Orb into a turret, for example). Maybe this is something to experiment with in a future update.