Three years ago I wrote about one of the first full-featured casual games built in Silverlight (at the time Silverlight 1.1) which we called Zero Gravity. It was a game featuring Lt. Bennett a character who was lost in space and your job was to navigate him through simple puzzle boards back to his space ship. It is a fun little game that can keep you busy for a while and even get you frustrated on some of the harder mazes.
The project was done in concert with Terralever, an agency who has great experience in building great online casual experiences for some of the top brands in the world. It was really fun to come up with various concepts on a casual game proof of concept in the VERY early days of Silverlight (they actually created the first Silverlight 1.0 game that was published to Miniclip.com and as well another Silverlight 2 game that was published as well). Those early days of Silverlight were tough when you didn’t have a lot of the infrastructure we do now with the core runtime. There is no multi-player Halo-style shooting or 3D here, and is representative of what was available at the time.
Two weeks ago I reached out to Terralever and mentioned that we kind of let that project get stale (my fault) as we both wanted to release the source code but it never turned up as a priority for me (sorry about that). In that discussion, they had some cycles to spare and their lead developer, Ryan Plemons, released the source code for Zero Gravity, updated for use in current Silverlight. But not only that, he also ported the code to Silverlight for Windows Phone!!! I love this gem of a statement from Ryan:
“I for one was very shocked that the transition went as smoothly as it did.”
Ryan has a blog post where he goes into some detail about the port, where there were things he needed to change (and got some benefit) like using the XNA sound libraries and the GestureHelper library from the Silverlight Toolkit.
Now before you start pointing out all the obvious things that “shouldn’t be in the phone version” we’ll concede that there are some things that don’t match what a mobile experience should be. The part of this exercise was to see how easy it would be to port something Silverlight 2/3 wholesale and still run. I think it’s pretty cool to see a huge amount of codebase running as-is. The introduction of the sound/gesture APIs weren’t required, but just added benefit to trimming some areas of code.
Congratulations and THANK YOU to Ryan and Terralever for doing this effort and publishing the source code for both projects. Read more: