Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I'm currently designing a turn based game for tablets. Initially for Android with porting to iOS later considered in design.

I'm having trouble narrowing down the available technologies to even know where to spend my research time. I am hoping that if I explain what I am trying to achieve someone may be able to suggest a platform and/or engine.

I've looked into some of the open source Engines ( http://www.cuteandroid.com/ten-open-source-android-2d-or-3d-game-engine-for-android-developers ) and some appear to handle much of what I might require - although with a higher focus on graphics than i need. Mages looks interesting although development appears to have ceased.

If I could somehow leverage GoogleApps that would be excellent.

Here is what I am trying to achieve:

PvP turn based strategy game over internet - minimal animation and bandwidth required Players match up online using MetaGame system MatchID created on Resolution Server and Game starts Clients have 30 second countdown to select MoveString Clients sends small secure timestamped and MatchIDed MoveString to Resolution server Resolution server looks up Move String for each player, Resolves and Updates Players status in MatchID on Server Resolution server updates Client Views Repeat until victory conditions met - MatchID Closed, Rewards earned in MetaGame

There will also need to be a full social and account system and metagame backend - but this could be running on separate system(s)

Tablet in Offline mode would be catalog browsing and perhaps single player AI - bum I'm focusing on the Resolution Server at this point

I'm not even certain if I would be looking at an Android App or a WebApp at this stage! I want a custom GUI so I guess an app - but maybe as I have little animation a WebApp might also work. Probably some combination of both.

There will be very small overhead in data between client server - essentially a small text string every 30 seconds sent to the Resolution server which looks up the Effect and applies it to the Opponents string and determines some results to apply to the match. The client view is updated minimally with the results (only 5 in game Integers tracked) - perhaps triggering small animations/popups on the client to show the end result. e.g Explosion.

If you have suggestions for a good technology or platform to best achieving the Resolution Server I'd love to hear.

Also if you have experience with open source Engines - and could narrow down which (if any ) might be most suitable that would be a big help.

Thanks in advance

share|improve this question

closed as not constructive by Nicol Bolas, Tetrad Jan 21 '12 at 20:50

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

2  
-1 for 'Best' and "and Game starts Clients have 30 second countdown to select MoveString Clients sends small secure timestamped and MatchIDed MoveString to Resolution server Resolution server looks up Move String for each player, Resolves and Updates Players status in MatchID on Server Resolution server updates Client Views Repeat until victory conditions met - MatchID Closed, Rewards earned in MetaGame". –  Jonathan Dickinson Nov 22 '11 at 10:17
    
Another asking for a "best"? I think this can be improved -1 –  Gustavo Maciel Jan 20 '12 at 16:43

3 Answers 3

Also if you have experience with open source Engines - and could narrow down which (if any ) might be most suitable that would be a big help.

I currently work with libGDX, an engine which abstracts the difference of android and PC, so you can test and develop with the PC. Testing with the emulator of android is not recommended, since it is very slow and would therefore slow down development. This is also the main reason why I do not recommend AndEngine.

You said you need a little animation. Even for this "little" you should use OpenGL ES (which is used by libGDX too ;) ). A GUI is basically nothing except image rendering and click/tap resolving, so writing your own little framework should outperform the pain which may be linked with adjusting the default android GUI to your needs.

Since it is Java, you can't simply put the game on the iOS market. I know a game (Legends of Yore) by Kevin Glass (cokeandcode.com) which is ported to iOS and written in Java, but I don't know how he has achieved this.

A last word on the server: I am not a professional there, but if you only need to request and push a state every 30 seconds, I would just make a very simple server or even just an URL backed with some PHP (simple, but slow), Java (fast, but complicated and not always available), C, Go (If you want to have simplicity and speed, but not very developed yet) or whatever.

share|improve this answer

Have a look at http://www.airplaysdk.com/ It lets you write native C++ for several platforms at the same time.

share|improve this answer

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