New Technologies Attack the One-World Problem 157
Hugh Pickens writes "An MIT Technology Review article has new details on the challenges of a 'one world design' in Massively Multiplayer Online Games. Most games shard their servers, putting up artificial barriers between friends and family members. Technologies are now being developed to keep lots of players within a single world, some of them based off of the unique PvP-heavy title EVE Online. The best part - the technologies don't just apply to gaming. 'NASDAQ, for example, can be thought of as a very large MMO, supporting very large numbers of 'players' performing billions of transactions daily in a graphically intense environment, all within a single shard. Technologies that solve this problem effectively, says George Dolbier, technical lead for games and interactive entertainment at IBM, will have applications in any industry that requires spotting and reacting to trends, or "anything where behavior is dynamic and you need to move resources around rapidly."'"
Wrong (Score:3, Insightful)
To illustrate what I mean: in WoW I can for example take a treck from Anvilmar to Ironforge to Stormwind to Goldshire (see for example the funny video with the 40 level 1 gnomes raid on Hogger for a group doing just that) and meet a few thousand players playing in the same world. _That_ is WoW's "world". And going "one world" would mean essentially all 9 million players literally running around in the same world. Not in instanced versions of it.
Does any part of GW have that? No, I don't think so, everyone who isn't in your instanced game, just doesn't exist in your "world".
Technically speaking, GW has lots of smaller shards, not one big world for everyone. It just invented a way to spawn new shards as needed, that's all.
This isn't to say that GW is bad or that WoW is better. I can see the point in instanced content. But let's not go redefining terms for "my game can beat yours" willy-waving. Just having basically a lobby from which you can start an instanced game or join one, does not make a "one world game" in the sense discussed here. It's just not the same kind of "one world", so making the claim that it did it before WoW is meaningless. It's like saying that cats invented leatherworking because your cat has white "shoes".
Wake me up when you can have 36,000 people in your GW game running around independently and actually randomly seeing or meeting each other. That's currently the average population per server in WoW. _That_ is the point at which you can claim with a straight face that GW even does the same thing in that aspect. Do it all in all world? Well, wake me up when it supports 9 million players in the same game, running around and whacking NPCs independently.
And here's another thought, and what the guys in the summary missed:
Chances are you don't even have enough geography for that. If you parked one player per square metre, you'd need a 3 km by 3 km world just to have the players stand there. If you want them to actually have some space to move around and hunt without stepping on each other's toes, you end up needing a world as big as TES Arena. Except at that point you also need a hell of a lot more quests (people won't be happy if they have to run an hour just to get to the next quest giver), and other problems start to creep in too. _That_ is why noone, WoW and GW included, ever tried doing that.
So people coming up with ideas like "hey, look, it's technically possible" have just missed the point.
Re:Gamers Changing the world... (Score:3, Insightful)
God bless you, gamers. Without you, we wouldn't have a space program, a Hubble telescope, high impact plastics, modern medicine...oh, wait.
But, after Halo, I think we have enough fodder for the cannons.
Because of gamers, we have a bunch of dorks running around with kanji tatoos without knowing the meanings, but their favorite character has one.
One of our genious coders at work was a die-hard gamer. Used to have his own hours and would work 3 to 4 hours a day, but then he turned out 12 hours worth of code each day. But his entire life was gaming. When he had an online wedding with one of his characters, and nobody from work showed up, he got really ticked and went off the deep end.
We had an intervention.
Now, he's on an 8 hour clock at work, doesn't watch TV and doesn't game. And, we can actually have conversations with him, he doesn't smell, his code is more readable, and we all understand what he's doing, therefor, the entire organization is turning out more and better code.
There's a lesson in there, somewhere.
(Oh, and no, we aren't in South Korea.)
RTA carefully (Score:3, Insightful)
First, this George Dolbier says that MMOs and massively distributed financial systems share the same problems, and that the financial systems have gone a long way to address them. He says MMOs should adopt solutions applied to the finance sector.
The second thing to note is that he talks about predicting and reallocating server computing resources. He's from IBM, who hawks services and products in this very area.
Re:Guild Wars has had "one world" for 2+ years (Score:3, Insightful)
If you take some basic principles, such as level of detail that you expect to see or not see:
* In a 1000 person match it's highly unlikely that it would be structured so that you could see all 1000 people at any one time. So the server only sends updates about stuff the client needs to see.
* It's highly unlikely that you'd need to have 60fps updates for people or objects that are bearly visible and very far away (hence, fogging or blurring far away objects). Maybe we cut this down to 320 bytes per second per person/object (16fps, 20 bytes of minimal movement info).
* The closer something is - the more granular the updates are, going upto maybe 10kb/s for clients & objects around you.
Sure this takes a lot of processing on the server side; calculating the visibility of every object before sending updates, but I think the payoff for doing it would be worth it.
Secondly - I have a 20mbit cable connection at home, and reguarly get 1.5-1.8mb/s downloads to servers in the same country, so the speeds you're talking about aren't too unrealistic - the technology and bandwidth is there but a lot of the time game developers just aren't using it.
You can apply the same principles to any message routing architecture (like stock markets, realtime weather, datacentre monitoring etc.) - providing average values or no information about targets or sources which are of no interest, and progressively more information about things that the client needs to know about or are most important (e.g. realtime graphing of the critical database servers, and less detailed information about everything else).
Couple this with p2p connections (e.g. the servers connect directly to you to provide realtime information) and it can scale very well
Just some food for thought,
Dr.
Re:Worst. Pun. Ever. (Score:3, Insightful)
Not a technology problem! (Score:4, Insightful)
It's actually a content production problem. If you're going to put 8,000,000 people into a single virtual world, you have to have places for them all to go and not be horribly overcrowded. Ideally you want all those places to be unique, interesting, and compelling to play. The fundamental problem is that we simply don't know how to create that much content. Hand-crafted content is far too slow and expensive to produce at that scale, and auto-generated content is repetitive and boring. Eve Online manages to hold 200,000 players in a single server cluster environment only because all of its environments are the same random-generated solar systems. Once you've seen four or five systems in Eve, you've seen them all. Fortunately Eve's strength doesn't rely on the environments, it relies on PVP action. WoW couldn't get away with that.
Re:Guild Wars has had "one world" for 2+ years (Score:3, Insightful)
The real problem that EVE has is the server. It just chokes on keeping track of all those ships, and then once shooting starts and it has to do calculations for all of that, and people are jumping in and whatnot, things are generally unstable and the whole game is liable to crash.
It's certainly not an easy problem, the servers have to not only keep track of where all those ships are and what they're doing, it also needs to send a bunch of that information to each and every other player in range. The amount of data that needs to move back and forth pretty much scales exponentially, so I'm not sure if the hardware can every really keep up with what we wish was possible.