views:

51

answers:

2

Hi all ,

I am asking this question as a small part of my question series regarding game programming .

Refer this question as the main one .

Now suppose I want to develop one small board game on iphone that is multiplayer . so how it will handle how many users are online and displaying them .

Suppose it is an online multiplayer casino game .

Then suppose it have to show currently playing tables and users on them .

So what can we do in iphone to do this sort of thing .

Thanks .

+2  A: 

You're essentially asking what is referred to as 'matchmaking' in PC and console games.

The notion of displaying all currently online players or active matches is an early one in online multiplayer gaming, and I think it's seen its time. Instead, try and offer your players two options: Play with your friends or play against people of your skill level.

Showing someone a complete list of tens/hundreds or even thousands of games/players is just going to overwhelm them. People are much more comfortable knowing they're playing against people they know (and trust not to be unsportsmanlike) or at least that they're playing against someone of comparable skill level. These 2 concepts are often called 'buddy based matchmaking' (or friend lists) and 'automatch' or skill based matchmaking.

Unfortunately, from what I've seen in the GameKit framework, neither are fully supported, at least as far as playing on non LAN connections. You're going to have to either develop that yourself (and very few iPhone developers are going to have the resources to create and host it), or see if someone like OpenFeint, ngmoco (plusplus), Chillingo (Crystal) etc match your needs. OpenFeint seem to be talking about matchmaking on their site and plusplus offer buddy based challenges. The OpenFeint signup process is the easiest and you get access to their SDK right away for development without prior approval.

Now here's one final thing to consider: smaller games aren't going to have the player base to have enough concurrent players around so that everyone will always find a suitable match at any time of the day/week. Unless you have promotion and publisher backing, or a breakaway hit, picking an automatch based solution is not your best bet and shouldn't be your only mode of matchmaking. Ideally your game should allow for some turn based form of game play, so you can play asynchronously. That model has worked great for games like Words With Friends.

Joost Schuur
+1  A: 

You need a server, you gameclient will contact it to get assigned to a partner. This is call matchmaking (google it to learn more).

I think there are OpenSource solutions (or at least frameworks) for this. But I don't know them. I know however Exit Games Neutron and Photon and I think there are free licenses for private / educational use.

Hinek