in reply to Re^2: What's a good alternative to browser-webapp-webserver for remote apps?
in thread What's a good alternative to browser-webapp-webserver for remote apps?

Network protocols for actions games are going to be heavily affected by the demands of the game environment in a way that makes them poor choices for other applications. For example, action games are very concerned about latency and about minimizing network traffic in general. That will lead to very compact binary protocols that are difficult to write and torture to debug.

For other network applications -- a shared spreadsheet, a turn-based strategy game, etc. -- those issues are less of a concern, so an easy and widely-used approach like XML over HTTP makes a lot of sense.

Although I've never written one, I'd guess that modern MMORPGs are commonly written as multi-threaded daemons in a low-level language like C++ with some kind of higher level "scripting" language built in for implementing most of the game functionality. This is very similar to a mod_perl or FastCGI setup where you have a daemon (the web server) handling all of the tricky network stuff and you build the high-level functionality in perl.

If you specifically want to know about certain games, I bet you can find details about their implementation and protocols with a little Googling. The developers usually give interviews with at least general information.

  • Comment on Re^3: What's a good alternative to browser-webapp-webserver for remote apps?

Replies are listed 'Best First'.
Re^4: What's a good alternative to browser-webapp-webserver for remote apps?
by rudder (Scribe) on Mar 30, 2008 at 16:03 UTC
    For example, action games are very concerned about latency and about minimizing network traffic in general. That will lead to very compact binary protocols that are difficult to write and torture to debug.

    Ah. Ok. You're ringing a bell for me. I bet these sorts of games would use UDP (rather than TCP) also. So for these, you're looking at using Socket or IO::Socket.

    Also, your observation about modern MMORPG's with scripting being similar to apache/mod_perl/perl sounds right on. Thanks.