Slashdot Mirror


On the Feasibility of Single-Server MMOs

GameSetWatch takes a look at the issues involved in creating an MMO that does not split its users among many different servers. They suggest that running a single "shard" is the next step in the evolution of MMOs, since it better allows player choices to have a meaningful impact on the game world; supporting different outcomes across multiple shards is a technical nightmare. They estimate, from the hip, that the cost to develop the technology required to support a massive amount of players (i.e. far more than EVE Online) on a single server to be roughly $100 million. Another recommendation is the strong reliance on procedural and user-generated content creation to fill a necessarily enormous game world.

8 of 316 comments (clear)

  1. Re:Lag. by Canazza · · Score: 4, Informative

    Warcraft has this problem, especially in towns. It can take between 30 seconds to two minutes to fully load Dalaran the first time you log in as it has to not only download everyones armour, but then read/decompress that off your disk. My friend - who has 48Gb of RAM - created a RAM Disk and loaded WoW's game files onto it (WoW's game files come to around 13Gb). It loads fast, and I mean lightning fast, since the RAM has a faster throughput than the HDD.
    Most of the 'lag' in Warcraft comes from the user end, as opposed to any server creaking.

    This has led to some humorous bugs in the game. For example, "The Naked Bug" - which tends to happen either in Cities or when going into an instance (25 man instances mainly) Where characters armour fails to load and your buddies are all running around in the nip. Anyone already in the instance is naked to you, and anyone joining after is normally fully clothed. And the only way to fix it is for you to exit and re-enter the instance, or for each naked person to exit and re-enter (for example, by dying).

    --
    It pays to be obvious, especially if you have a reputation for being subtle.
  2. Re:Lag. by Canazza · · Score: 4, Informative

    What i'm saying is that a single server, or multiple servers, can't do anything for over-zealous reading from the users disk. That the Lag problem isn't solely related to the server.

    --
    It pays to be obvious, especially if you have a reputation for being subtle.
  3. Re:Impact? by Bored+Grammar+Nazi · · Score: 3, Informative

    Not, like the article implied (it's a general public article, after all) WoW with a single shard, but something different. EvE shows it's possible[...]

    It's possible on EvE because the place is basically empty. A space station here, an asteroid belt or two there, a couple planets... In the end, it's just a bunch of generic models thrown around in what otherwise is a lot of empty space.

    Now imagine doing the same on a WoW-style game. You would have to do a huge work of world design. Surely there are algorithms that can generate assloads of terrain, cities, etc, but your designers still have to tweak things in the gameworld to make it interesting.

    Not to mention the amount of disk space that would be required for the data files making up this non-empty gameworld.

  4. Re:Impact? by montyzooooma · · Score: 3, Informative

    Technically they have 300k user accounts, and probably about half that many players. Multi-accounting is encouraged on Eve.

  5. Re:Impact? by Sobrique · · Score: 3, Informative

    Actually I think that's one thing that EVE does quite well - because of the 'nature of the game' the annoying wombats don't tend to get all that far - skill training being real time for example, is one of the best things ever - because it means you _have_ to be patient, you cannot grind level 60 in 2 weeks.
    It also means that there isn't really 'levelling up' - anything you choose to do, doesn't mean you fall behind said 15 year olds. And also, in EVE, the other players are targets, resources and obstacles, which means having more annoying idiots, just gives you that much more of a warming glow when you exploit them mercilessly.

  6. Re:EVE ONLINE IS NOT SINGLE SERVER! by Sobrique · · Score: 3, Informative

    Marketing hype? That EVE is a single universe, with a peak concurrent user count of >50k? How's that 'hype' - it's true. Yes, they do multiprocess by switching you onto different servers when you jump system (sometimes). They also multi-process by having a proxy tier, a solar system tier, and a database tier. But that's not 'sharding' either.
    When most MMOs have too many users, they end up firing up a new copy of the code on a standalone server, and let there be another 'copy' of the universe, for someone else to be 'king' of.
    The only place that's happened with EVE, is the China implementation, and that was solely because China has rules regarding MMOs that ... would have been generally negative to implement on the Tranquility (original) cluster.

  7. Re:Actually, I see an even bigger problem by Xelios · · Score: 4, Informative

    EVE solved this problem by creating a big world to start with then artificially cordoning off certain regions. You literally couldn't go there, even though the regions existed in the database and showed up on the galaxy map. As the population density grew they gradually started to open up more regions to the players.

    --
    Murphey's fighting Occam, and we're in the stands.
  8. Re:Lag. by N1ck0 · · Score: 3, Informative

    Fracturing a game based on location is not that difficult design wise. The main problem is cost effectiveness I hate pulling out business models and cost benefit analysis, but unfortunately centralized systems usually take either large centralized shared storage, RDBMS, schedulers, resource allocation management, etc; or the proper development of a distributed data server farm. This ends up costing a lot of money and a decent amount of development & operations manpower...in the MMO world your profits are not that high to begin with.

    Even on some of the grids that I've built that have gone google-style (map-reduce, column based DB, true distributed file system, on cheap hardware) the costs quickly hit a few million per location. On our larger GPFS, oracle, vmware, on HP based clusters the software site licenses alone will eat most game companies.

    Your best bet these days would be to try to develop something that uses Amazon's elastic compute cloud, apache's messaging system, run something like greenplum to distribute the DB load, and don't skimp on developers...cheap ones usually don't understand that in a distributed environment that every little chunk of code from the network/disk/etc up has to scale and be massively efficient cause you can't afford to 'just throw faster hardware at it'