Working on an Android App — but why make a simple “Simon” clone when half the fun is designing a new twist?
Simon is a well-known children’s toy — the pieces light up, and players repeat the patterns as they become increasingly complex to follow. As a result, most Simon clones follow a simple, time-honored interface, where four (or more) options are available from the beginning, just like the real-life interface.
S.I.M.O.N. (Signal Increasing Memory Order Novelty) operates a little differently. Options are introduced as more “rounds” are completed, based on factorial numbers – 1! = 1, 2! = 2, 3! = 6, 4! = 24, and 5! = 120, so…
- The First Round has only one option (trivial!)
- The Second Round introduces a new option (two options).
- The Third Round introduces a new option (three options).
- The Seventh Round introduces a new option (four options).
- The Twenty-Fifth Round introduces the last option (five options).
- After completing the 120th round (!), the game is “won”. Otherwise, the game is over whenever the player messes up.
The options are featured in a random order — so a possible “improvement” would be to offer unlockable character options as a reward for reaching certain milestones in the game (e.g. reaching Round 25 / 50 / 75 / 100, playing a certain number of games, “checking in” multiple days in a row) to provide additional variety and incentive to keep playing the game.
Why an Android App?
This isn’t an app with user delight built in mind (because then we’d have to actually have a discussion about whether or not it’s worth coding / porting for iOS, or Windows Phone 8 XD, or whatever the “sexy” mobile OS of the week is, just so users won’t feel left out). This isn’t an app designed to make money (because then I’d have to consider the above in addition to how I’d monetize the app, and whether it involves in-app purchases, or ads, or something else entirely, and how I’d design to deal with piracy so I can gain some degree of benefit from pirates). It’s an app to prove I can code apps.
Since I have an Android phone, at minimum I want the ability to be able to pull out said phone and demo the app right in the interview. That means I need to code an app that runs on Android. (Whether or not I use something like PhoneGap to try and make something that can also be taken to other devices is another issue entirely.)
Even in its purest form, the app saves a certain amount of data, even if it’s just saving a high score or which characters have been unlocked. Since I don’t have accounts of any kind set up on the comic site (or want to tie them into twitter / facebook), the simplest, “cheapest” route is to make a native app of some kind that allows me to store this information on the user’s phone and not worry about the rest. If it didn’t save this data, making a website for the game would be more plausible.