So I'm developing an indie turn-based game for iOS and, in coding up a Game Center matchmaking class, I'm starting to question whether Game Center is even the best choice for what I want this game to do. I need to figure out whether I need to create my own server, invest in a preexisting client or server service, or if I even need to use a server at all. If I do need to use a ready-made service other than Game Center, which server would accomodate my game's needs best? I have limited resources and funds. Here is the list of features I want my game to support, ideally:
Turn-based gameplay (a la "with Friends" and "with Buddies" games)
Smart matchmaking (matching users up with other players of comparable skill/achievements)
Random matchmaking
Facebook matchmaking
Specific username matchmaking
Contact list matchmaking
A way to select what "type" of match you want to challenge an opponent to. (In random, smart, and Facebook matchmaking, there will be different "wagers" the player can make. [e.g. "I wanna play a random opponent for 1000 points. Now, I wanna play my Facebook buddy for 1,000,000 points."] There will be a predetermined range of amounts you can play for. It won't be customizable.)
Buddies list capability (Game-buddies, as opposed to contacts and Facebook)
A higher concurrent game cap than Game Center offers (which I still can't really find a straight answer on)
Scalability (it should support 2 or 20,000,000 players)
Objective-C compatibility
Flexibility (for all the stuff I haven't thought of yet)
Am I dreaming, here? Is there even a service that can handle all of these features? Do I need to invest months in learning a networking language to build my own? If so, how much would I need to spend on hardware?
I've been looking around all morning and, so far, the only seemingly viable option is SmartFox. Under "Everything and the kitchen sink" section here, it says they support "virtual world with Zones, Rooms and RoomGroups, create complex game challenges, send invitations, manage buddy lists, create custom permission profiles, oversee the security aspects and tons more."
http://www.smartfoxserver.com/overview/platform
Is there an option that Im just overlooking? Thanks for any help anyone can provide. Sorry for the long poast.
One last question: Does anyone know which server Dice with Buddies uses? I was experimenting with how many concurrent games I could get going and my ADHD kicked in at about 80 games. 80 concurrent games would be great for my game, but again, I need the other features I mentioned too. Thanks again.