GameSpy also has an extensive set of software
SDK's which they license to
game developers and
publishers. These range from low end SDKs such as establishing network connections and
http interface, up to more complex systems such as a
peer to peer lobby system, and an
auto-patch updating SDK. Any game which has in-game GameSpy support is probably using the
CEngine SDK, which allows game clients to emulate most of the functionality of the
GameSpy Arcade client. Other SDKs fill in the gaps such as
buddy lists,
pinging,
chatting, etc.
The GameSpy SDKs are well written, frequently updated, and well supported. There are also evaluation versions of the more basic SDKs available for download from GameSpy.
These libraries used to be released for free, but with the recent "discovery" of the near impossibility of making money through free websites alone, they have begun to charge developers and publishers for use of these SDKs. They are quite well worth it, though, if they meet your needs.