The following blog was, unless otherwise noted, independently written by a member of Gamasutra's game development community. The thoughts and opinions expressed here are not necessarily those of Gamasutra or its parent company.
Want to write your own blog post on Gamasutra? It's easy! Click here to get started. Your post could be featured on Gamasutra's home page, right alongside our award-winning articles and news stories.
Hypership Out of Control for WP7 is a port of the Xbox Live Indie Game version released last summer. Hypership received great reviews including a 9 out of 10 by EuroGamer.net and was named the best Xbox Live Indie Game by Complex.com. Sales though have never been great or even good. I've long felt the market on XBLIG was not right for this game but the game itself was very good.
Given that WP7 uses the XNA framework just like the XBLIG version does, I figured porting Hypership to a new platform would be a quick and painless job. While the WP7 marketplace is still relatively young, the ease of porting the game and the success I have seen from some developers releasing ad-based games, made the idea more attractive than porting to platforms like iOS or Android that would require brand new game engines.
I am writing this postmortem after having done two updates (1.1 and 1.2) to Hypership for WP7. Update 1.1 is currently available and 1.2 is being reviewed now and will be available shortly. Both updates primarily address performance issues but also resolved a few bugs.
What went right
Quick development time The process of converting Hypership, designing new levels for the smaller WP7 screen, and adding other new features / changes to the game took slightly over a month to complete. I was very happy to have the game finished and released within such a short window. The revenue generated from Hypership does not need to be great to justify the time spent on it.
Real Online high scores Hypership for XBLIG featured peer to peer sharing in order to do online high scores (because this is all Microsoft allows for XBLIG). This worked well initially when the game was a New Release and receiving a lot of downloads. As fewer and fewer gamers played the game, the likelihood of finding others to share with decreased and eventually reached a point where it just didn't happen.
For the WP7 version, there are no such limitations and I was able to implement a true database driven online high scoring system. While this took some time to setup, I believe it is a huge selling point for the game. At the time of this writing, there are over 2,000 online users that have submitted over 3,500 scores. I've already had a lot of fun competing for high scores, many of which I do currently hold.
New Playtesting Resources Never overlook playtesting your game. For XBLIG, using the AppHub is a great resource but for some odd reason, they don't allow playtesting for WP7 games there. Thankfully xna-uk.net steps up to fill the void. I got several great responses that helped improve the usability of Hypership and guided me to use some best practices as I created my first mobile game.
Controls translated well Going from using a gamepad in the console version to using your finger on the phone works surprisingly well. The controls are vastly different but they work well and the game is just as fun as the original. Sometimes I feel like I can actually do things in the WP7 version of Hypership that I could not in the XBLIG version, fingertip controls may actually allow for more accuracy of movement than a controller does.
There is an issue with pinch gestures being detected when they shouldn't be (this turns lasers on and off). This seems to be the one major issue with the current controls and is something I hope can be resolved for the next update.
Simple review process / no jail time Unlike XBLIG which uses a peer review system, WP7 games are reviewed by Microsoft themselves. The review itself was pretty straight forward and took a few days to occur. I failed three times. Each time errors were clearly documented and I could fix them and resubmit immediately. For XBLIG, you must wait 7 days to resubmit and you don't always know why you failed (only if a reviewer is kindly enough to explain it, they always aren't). The same three fails on XBLIG would have meant a minimum 3 weeks before the game was released. Because WP7 imposes no such jail time, I was able to release in under a week and also push out my first update two days later.
What went wrong
Performance issues I experienced a little performance issues / stuttering on my phone but dismissed it as unimportant. Not until I really started playing and competing for high scores did I realize a little stutter here and there could be so painful. This doesn't seem to affect all phones but seems more specific to the HTC models. This has left me scrambling to update the game and resolve these issues. In hindsight I should have spent more time performance testing the game after it was completed and before releasing in order to avoid this problem. The 1.2 version of Hypership should really have been the 1.0 release.
Music and Sound Related to performance issues is playing MP3 files with the MediaPlayer object. No matter what I do, this seems to produce a short pause / stutter in performance. In talking with other developers, it seems there simply is not a way to resolve this. For the upcoming update to Hypership, I've done my best to avoid it. The songs are now lower in quality (less of a stutter) and rather than having two songs to cycle between in-game, the two songs have been combined into one. This means it is one bigger file but also that it has to switch / loop half as often. It is an imperfect fix, really just the best I could do. I'm hoping that on second generations of WP7 devices this issue will resolve itself.
Playing too many sounds at once also caused performance issues on some phones (mainly HTC models). While the phone should technically support 64 concurrent sound effects, there seem to be major performance losses when that number gets past 15. This was a cause of slowdown in Hypership 1.0 and 1.1. I resolved the issue in 1.2 by stopping the oldest sounds when new ones play. In most instances, stopping these old sounds is not noticeable.
Lots of UI Work I underestimated how different Phone to Xbox UI changes would be. Porting the engine itself was fast but pretty much the entire menu UI had to be redone from scratch. A significant portion of the first few weeks of development were spent setting this up.
WP7 for Verizon A big reason I did not port Hypership a lot sooner was because I was waiting for my cellphone carrier Verizon to have WP7 phones. I expected to have a WP7 device in November but found out two weeks before the release that Verizon would not have an initial offering. Rumors stated Verizon would have devices in January, February, March... you get the idea. They should be available by June at the latest but it is still very annoying that I continued to wait and no hard release date was ever given. Ultimately I got a developer device and purchased an Android to replace my everyday phone. The one good thing to come out of this is that I now have an Android device to develop games for too.
What went ???
Ad revenue It is still too early to tell how well the game will do from ad revenue. The game itself is free and hasn't generated much ad revenue so far. It seems at the very least, Hypership for WP7 will be more profitable each month than the XBLIG version currently is. What I'm hearing of the WP7 marketplace is that it takes a few weeks for ad revenue to really pick up though so the jury is still out on if this is a success or not.
Free vs Paid Currently Hypership for WP7 is available in only the free flavor. The download numbers I've seen others report indicate free games get significantly more downloads than paid ones. By making the game free and ad-supported, the hope is to get as many people playing as possible and make more on ads than I would have on sales.
I do intend on releasing a paid version without the ads (playing without ads is much nicer). I have had a few gamers ask for this already and once all the bugs are worked out of the ad supported version, a no-ad version will quickly follow.
It was nice starting and releasing a game in just over a month, even if it was only a port. The game is a lot of fun and is likely available to many gamers that otherwise would not have played it. I believe the online high scores will keep gamers playing much longer than they played the XBLIG version.
Developing for WP7 was pretty easy after having done XBLIG for so long. Whether or not it will have been worth my while, I cannot say just yet. But the risk wasn't high and the learning curve was low. I'd definitely encourage other XBLIG developers to consider WP7 ports of their games.