Hey there, I'm pretty new to iPhone development, but I'm progressing nicely on the rendering engine for a new little game I'm working on. Anyway, I'm thinking it would be cool to add multiplayer to it, and my plan is to have a central server somewhere where you can find games that other people all-over the world are hosting on their iPhones or the desktop version of the game (it's very lag-tolerant and light on bandwidth so 3G should be adequate if wifi is unavailable). I'm wondering, what kind of support for this is there on iPhone and are there any restrictions I should be aware of? For example, would it be possible to open a standard connection HaravikksGame.com:6193, grab a list of open-games, and get the IP of one to join then connect to that, or am I limited one what ports I can connect-to? Secondly, (and probably more likely to be used) I would like to be able to connect to nearby iPhones and desktops. My thoughts would be that the user hosting a game would have their app broadcast their game somehow (UDP multicast perhaps?) and other players who want to join will receive these broadcasts if they are on the correct network, and can select to join and then play over this connection. Is there a preferred way to do this on the iPhone, and what restrictions am I likely to face? Any help here would be appreciated! Currently the above doesn't affect my development much, but it'd be nice to get an idea of what I'm going to be facing in regards to multiplayer support, so that I can decide how to implement it or whether to even try. Oh, on which note I have one additional question; it'd be nice if the game could download additional content from a web-site, what restrictions exist regarding downloading content into an application on iPhone? The majority of content would just be a simple set of XML files which point to graphics, sounds, etc. bundled with the game, but it'd be cool to be able to include completely new stuff too without having to issue an update to the application. Thanks!