I'm working on a basic first person shooter. I would eventually also like to publish it on Xbox Live.

If I do this, will I still have access to parties (invite and chat)? Does Microsoft provide servers for multiplayer, or do I have to provide my own? Am I free to connect my own server IP from the Xbox system within game? Can I charge people on a web page outside of Xbox for things like microtransactions or to maintain the cost of the servers?


2 Answers 2



The typical model for multiplayer FPS in AAA titles these days is peer-to-peer multiplayer (where one player is chosen to be the server, and all others are peers relying on that player for synchronized updates). You can use this model in an XNA game for the XBOX 360.

You can get started at the networking architecture for XBOX XNA samples.

There are numerous examples including this one that demonstrates the type of network architecture used in AAA FPS titles like Halo and Call of Duty (where there is no dedicated server, except for the server(s) that handle the matchmaking).

One thing that you will be missing is the ability to query a dedicated server when matchmaking players. However, if you get to a point where you have so many players that you would benefit significantly from having a dedicated server for a matchmaking lobby, it's not unreasonable to go to microsoft to get a Live Arcade agreement, in which case you will have access to the microsoft storage servers and potentially access to your own server. Until you get that kind of (pretty large) userbase, peer-to-peer matchmaking will suit your purposes just fine.


XNA games cannot talk to a server, or anything other than other copies of the game in a peer-to-peer manner. It is possible to build an FPS like this, though latency might be an issue if you are trying to send a lot of data. As far as I know XBLIG are not permitted the use of the Marketplace, and any billing done outside the XBox "system" will land you with a nice lawsuit.

  • \$\begingroup\$ They can't use the marketplace, but they can still find other players. Latency is always an issue in all multiplayer games, more so in FPS games, and even more so without a dedicated server. However, this is how the big boys like Halo and CoD do it, so it's reasonable to do it this way on the XBOX ourselves. \$\endgroup\$
    – Olhovsky
    Commented Apr 3, 2011 at 18:47
  • \$\begingroup\$ This is true, XNA does have a lobby system that you can use though it is a lot more limited than most FPS lobbies. As for Halo and friends, they are using xnet directly, not the XNA wrappers. \$\endgroup\$
    – coderanger
    Commented Apr 3, 2011 at 18:55
  • \$\begingroup\$ Of course they don't use an XNA wrappers for anything. The point is that the XNA API provides everything you need to implement FPS multiplayer networking (except for a dedicated lobby server, which is not a big deal if you only have a couple hundred people in the lobby). \$\endgroup\$
    – Olhovsky
    Commented Apr 3, 2011 at 19:15
  • \$\begingroup\$ XNet offers much nicer low-level networking API as compared to XNA. Still not as nice as the PS3, but every little bit helps when trying to shave off that last few ms of latency. \$\endgroup\$
    – coderanger
    Commented Apr 3, 2011 at 23:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .