Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I just had a pretty good idea for a mobile game and I'm having a little trouble selecting what tools or languages to use for the job.

I have experience with flash and AS3 and I know I can put that onto mobile devices via Adobe Air. What I found kind of frustrating was that I have 5 games on my Samsung galaxy tablet and they all look like they were made in flash, but they didn't use Air. The only game that required Air on my tablet was my game that I made in flash. Anyways, how do you guys think/know they are programmed?

A simple game like angry birds... is that programmed in pure java or something or do they use some kind of engine. I've heard of Unity and it looks pretty cool, but now I just found ShiVa and that also looks pretty sick. I'm trying to make a Castle Crashers type game. Side scrolling/2D type of thing. Thanks in advance

share|improve this question
possible duplicate of Cross-platform independent development – bummzack Jan 2 '12 at 8:11

Without knowing which specific platforms you intend to support, I'm going to go out on a limb and say that Unity is probably the easiest and most turnkey solution for getting on a lot of platforms.

Other games (like angry birds) are probably a hand rolled collection of libraries (e.g. Box2D) and custom code, and they probably do the porting from one platform to another themselves.

share|improve this answer

Unity is the easiest platform for such, though I strongly suggest learning (if not known) java, as most (including angry birds) android apps are programmed in Java. In fact I may go out on a limb and say probably more than 90% are since it's the recommended and only (last i checked) officially supported by android language/platform to use. And it's a great language to have experience under your belt with, and even awesome for practical use.

Although as previously stated, we don't know what mobile platform you're trying to support, so it's a pretty open question. For your specific game there are plenty of options, I would NOT go with Unity (personally) because it wasn't originally made for 2D in the first place. I would go with Java or even Flash on this one. There are plenty of articles online about side-scroller development. Worry less about what and more about how though, Java has awesome implementations of networking and tons of libraries that you could use for your features. However, on the down side it would require lots of android specific code for controls and things. Which also has the con of a huge learning experience and the experience itself for future projects.

share|improve this answer
With the release of the Android NDK I would imagine most Android games are likely written in C or C++. – Tetrad Dec 10 '11 at 8:28
Interesting, I'll have a look into it. I hadn't known they had released a C/++ development kit. Definitely my preferred language. – FullyLucid Dec 10 '11 at 17:02

Unity3D has already been suggested and is an amazing tool.

Another option would be MonoGame (an open source implementation of XNA). This might be a bit more advanced then developing for Unity3D, but a good option if you are going for a 2D game (MonoGame is 2D only) and looking to learn something new. There are a lot of tutorials and documentation on the net to help with XNA development, likewise with Unity3D.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.