(Not logged on) | Register | Log On

You can subscribe to this discussion group using an RSS feed reader. The Joel on Software Discussion Group

A place to discuss Joel on Software

This community works best when people use their real names. Please register for a free account.

Other Groups:
Joel on Software
Business of Software
Design of Software (CLOSED)
.NET Questions (CLOSED)
TechInterview.org
CityDesk
FogBugz
Fog Creek Copilot


The Old Forum


Your hosts:
Albert D. Kallal
Li-Fan Chen
Stephen Jones

stats or setup for MMORPG or FPS deathmatch infrastructure?

AFAIU the amount of data continually streamed back and forth between player and server in FPS or MMORPG should be much larger than what is happening in a typical AJAX website. Well, so can somebody talk about how this kind of infrastructure works? E.g. how would you compute how many users can a single server accommodate in such a setup?

When building something like that from scratch would it make sense to use Google App Engine or some other such allegedly easily scalable cloud framework? Or am being I totally off the mark here? Do people actually build such things on top of some well known open source framework using their own servers?
Michael L Send private email
Tuesday, November 03, 2009
 
 
There's a whole spectrum here.

Multiplayer games typically have all the artwork and maps client-side, so its just a case of sending position, orientation and weapon updates as quickly as possible, so the focus is on latency (and custom UDP and TCP stacks at the extreme end) as much as bandwidth.  Some games do support custom artwork - from the player avatars to whole levels - and these are typically 'provisioned' as they become needed by the player.

Then of course there's the question of scale: the servers that were used to serve the WoW games in China were famously benchmarked as the seventh largest supercomputer in China, or something like that.

If you're interested in making a proper multiplayer game as a hobby, you can do a lot worse than using flash for the client and putting the 'game' on an RTMP server (e.g. RTMPy).  That'll scale to a few hundred players or more using decidedly-average hardware.
Architecture Astronaut Send private email
Tuesday, November 03, 2009
 
 
>Well, so can somebody talk about how this kind of infrastructure works?

Gamasutra is probably the leading game development magazine and has had some articles in the past infrastructure for MMOs. Also important are the postmortems where they discuss things done right and things done wrong. I don't have time today to hunt through 10+ years of magazine archives to find you the links that I think you're looking for.
http://www.gamasutra.com/

>When building something like that from scratch would it make sense to use Google App Engine or some other such allegedly easily scalable cloud framework? Or am being I totally off the mark here?
As far as I know, no one would ever consider surrendering control of their servers to a cloud. Dependablity is critical and will sink your business if you cannot guarantee it. If you had the clout to force Google (or some other provider) to the SLAs you would need, you have the money to provide your own hardware. And if your cloud provider gets into a disagreement with you, then you are out of business. That's not any sort of responsible risk that you'd look at spending for the sort of costs that MMOs tend to run these days.

>EverQuest runs all over the world, Joffe explains. SOE has more than 1,000 servers in its headquarters in San Diego, as well as several hundred servers deployed at six sites in Europe and in Asia. There are more than a hundred switches and routers across this environment, as well as a variety of operating systems and servers that support the business-layer functionality of our online service.
http://findarticles.com/p/articles/mi_m0CMN/is_7_40/ai_105516143/ 

>Do people actually build such things on top of some well known open source framework using their own servers?
World of Warcraft raised the barrier for MMOs, and it will cost somewhere between 40 & 100 megabucks for competitors to get another MMO released. For example, licensing for the Unreal or Crysis game engines will most likely cost your development team a couple megabucks (if you want to avoid paying royalties).
Peter Send private email
Tuesday, November 03, 2009
 
 
Try www.gamedev.net, it's the largest game-development forum/community I am aware of with a load of industry professionals as well as hobbyists.

A warning though, newbie questions about MMORPGS can get some stick because every week several kids will post their intentions to create a MMORPG to rival WoW. So make it clear you're not one of them.
John256 Send private email
Wednesday, November 04, 2009
 
 
Are there any books about what its like to work on a team that develops a game? I'd really like to see what it is like to take a game from concept, funding, development, sound, etc...

It just looks interesting.
Contractor Send private email
Wednesday, November 04, 2009
 
 
Just for those who are interested, this article discusses the scale of WoW.

http://www.gamasutra.com/php-bin/news_index.php?story=25307

Highlights :-

"there are some 30 department leads", "5.5 million lines of code", "1.5 million [art] assets"

"40,000 NPCs"

"Patch 3.1 pushed some 4.7 petabytes of data to the players"

"data centers from Texas to Seoul, and monitor over 13,250 server blades, 75,000 cpu cores, and 112.5 terabytes of blade RAM"

"World of Warcraft utilizes 20,000 computer systems, 1.3 petabytes of storage, and more than 4600 people"
Katie Lucas Send private email
Wednesday, November 04, 2009
 
 
Cloud computing is a really bad fit for MMORPG/FPS games. The games require low latency communication, which is not something that cloud computing's really designed for. Plus, if you're running a MMO, the servers should be part of your core business. You shouldn't be outsourcing them.
Mike Swaim Send private email
Wednesday, November 04, 2009
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz