3 ms·
Great write up! I really appreciate the clear structure you provided in detailing the various components of your project, as well as the detail in describing th
by lusr 15y ago
Great write up! I really appreciate the clear structure you provided in detailing the various components of your project, as well as the detail in describing the choices you faced and your rationale for the choices you made. I will be using this as a template for my own project :) Good luck!
As a C# developer myself it's also comforting to see you successfully used C#/MVC3 for your back-end, though I'm curious why you didn't use something like MonoTouch for the front-end? Was it to avoid exceeding the 20MB 3G limit (I'm not sure how large MonoTouch apps end up being)? What about PhoneGap or Appcelerator?
- plasma 15y agoBefore we started coding, we considered the (pretty cool!) PhoneGap system, but not Appcelerator (which we just reasoned as being similar to PhoneGap) or MonoTouch for that matter. PhoneGap was considered initially because of course it would be cross platform (write the mobile game once, let it work on both Android and iPhone, plus Windows phone, etc), but we didn't want a less-than-optimal game play experience from a UI perspective. We felt that it would be less than ideal to play due to the transition animations between screens not performing perfectly (like native apps do) on iPhone, and Android at the time seemed similar (not every phone we tried had perfect HTML5 CSS support etc for animations/rotations). We then thought that you could tell (from little things like scrolling the window) that the app wasn't native, and it distracted slightly from the game play experience. It's probably a silly reason, but I'm glad we decided to just write the game native on both platforms after-all, because I got to learn Objective-C and write an iPhone app (and play with Android development), while my friend got to hone his Android app skills. Considering the game play logic was in the web server, a lot of the heavy lifting was done for us. Had we decided to put the game play code on the mobile client itself, I'm sure we would have had to re-visit PhoneGap (and implement the game in JavaScript), as we'd certainly not want to write the game play logic twice.
- lusr 15y agoThanks for the detailed answer :) I had similar concerns about performance and compatibility. I'm not too keen on learning and maintaining code for two separate platforms, though, so I may end up just sucking up the differences so that I can get something launched!
- plasma 15y agoI'd probably be doing Phone Gap myself too. I may even give it a go for the next product, just to see how well it works.