




Scripts and Scaling In Online Games 61
CowboyRobot writes "Jim Waldo of Sun Microsystems has written an article titled Scaling In Games & Virtual Worlds, saying that they 'should be perfect vehicles to show the performance gains possible with multicore chips and groups of cooperating servers. Games and virtual worlds are embarrassingly parallel, in that most of what goes on in them is independent of the other things that are happening. Of the hundreds of thousands of players who are active in World of Warcraft at any one time, only a very small number will be interacting with any particular player.' A group of researchers at Cornell wrote a related piece about improving game development and performance through better scripting."
The Universe is a game... (Score:2)
You can tell its scripting is feature complete because the nerds have gone out and written virtual computers that run on top of the game.
Re: (Score:3, Informative)
Actually you can't. Your brains are also operating within the Universe, and thus bound by any limitation it might have; thus, if there's some important aspect of logic or computability which the Universe lacks, you couldn't conceive it existing, and thus you would mistakenly consider the Universe feature complete.
All that can be said is that the laws of logic within the U
Re:The Universe is a game... (Score:4, Funny)
if there's some important aspect of logic or computability which the Universe lacks, you couldn't conceive it existing
Wrong. Billions of people believe in a non-existant magical man in the sky called "God".
Do you seriously think this universe doesn't have an admin?
Re:The Universe is a game... (Score:5, Funny)
Do you seriously think this universe doesn't have an admin?
Maybe it has a whole bunch of administrators, and God (prime) isn't listening because the log volume is full (or the line printer is out of paper. who knows how often they buy new hardware?)
Re: (Score:2)
Maybe it has a whole bunch of administrators
Or just one admin with three user accounts: root (Father), yeshua (Son), and dove (Holy Spirit). Although if you're willing to understand "administrator" in the Wikipedia sense of a wheel [wikipedia.org] group with over a thousand members, the various levels of angels might count.
Re: (Score:1)
Or he's out to lunch ATM, and when he gets back in, he's going to be pretty pissed at this run away cronjob..
Re: (Score:1)
or the line printer is out of paper. who knows how often they buy new hardware?
PC LOAD LETTER? WTF!
Keyword: "line printer"
The almighty admin's error message: "lp0: Printer on Fire."
Re: (Score:1)
He got the "Lp0 is on Fire" error and gave up
Re: (Score:2)
To me however, the term seems to be a non sequitur, as the brain itself does -not- operate upon logic or computability any more than a banana does, and while a Turing machine does operate upon these principles, general emulations of aspect
Re: (Score:2)
All that's saying that the Universe is "feature complete" really means is that Universe has as many features as it has. If it lacked some feature, how would you know ? You could never demonstrate the missing feature within the Universe since
Re:The game is a Universe... (Score:2)
... if there's some important aspect of logic or computability which the Universe lacks, you couldn't conceive it existing, and thus you would mistakenly consider the Universe feature complete.
The proof is the pudding?
Re: (Score:2)
What do logic and computability have to do with the physical Universe? They are mathematical concepts. There is no "Universe with different rules of logic"; that statement is nonsense.
Re: (Score:2)
Re: (Score:2)
That is highly illogical captain.
Scaling? (Score:1, Funny)
glScaled(GLdouble x, GLdouble y, GLdouble z)
What's so notable about that?
Re: (Score:1)
Re:Less WoW please (Score:4, Funny)
other gamers out there with zero interest in grinding for gear
That's what scripting is for.
Re: (Score:2)
Apparently, scripting is also for posting funny comments to Slashdot after you're dead.
Re: (Score:2, Funny)
Mod parent down, -1 Undead.
Re: (Score:1)
More details, please. (Score:2)
The article is extremely technical in nature
Not really. It just discusses the general nature of the problem, not what they did about it. For that, there's the DarkStar documentation [projectdarkstar.com].
This is a new data storage back end, like the ones from Google and Amazon. This one is specialized for game usage. It's really a transaction engine which links to a transaction-oriented object store. Entire transactions are atomic; either all the objects being changed commit, or none of them do. In a real system, the a
Re: (Score:2)
Did they just put a front-end on Mnesia?
Re: (Score:2)
Re: (Score:1)
Don't blank out as soon as you see those three letters. Doesn't help you in the slightest.
Re: (Score:2, Troll)
Not only did it NOT suggest this, but it was not technical. You randomly ranted about something unrelated to the topic, then implied there must be a more applicable virtual world for a topic on scaling strategies, than the all-time most popular virtual world. You must be retarded. A retard who managed +1 karma
Re: (Score:2)
How you managed "+1 Informative" is beyond me. Did you mod yourself up with one of your other identities?
I admitted in my post that I don't understand the topic, then made a conjecture based on what it seemed to be saying to me. I also made a value judgment that I am sick to death of articles about WoW like it's the only gaming news ever worth reporting on Slashdot. I then invited criticism/correction.
You can call me retarded, say my post was unrelated to the topic, even though it was absolutely related t
Re: (Score:2)
Gotta undo-modding. I hate when fat fingers. =P
Re: (Score:1)
And can we please see some articles in here that aren't somehow connected to WoW?
Yes you can see them, but please do not RTFA. Remember, this is /.
Except that's not the hard problem (Score:2)
Games and virtual worlds are embarrassingly parallel, in that most of what goes on in them is independent of the other things that are happening. Of the hundreds of thousands of players who are active in World of Warcraft at any one time, only a very small number will be interacting with any particular player.
Except that's really not that hard of a problem to solve. It just takes good basic software engineering to divide this problem up. You create zones, and then a little glue to make sure things happen smoothly at the edges.
The hard problem is when you have huge data sets like that, and *everything* interacts with each other, but you still need to divide the problem into discrete pieces to process in parallel.
Re: (Score:2)
Thats exactly what they're saying. "Since most things that happen are independent, and that there's very few "links" at any given time, its very easy to do things in parallel".
So you agree with the article.
Re: (Score:2)
I do, but what I'm saying is it's not that interesting... It's basic good software engineering.
In other news, your car has an annoyingly limited range, but by placing gas stations everywhere, you can design a system where people can drive anywhere. /obcaranalogy
Re: (Score:2)
AFAIK, you will have to do sharding if you want to keep costs down. So once people start piling on, you shunt them into other shards/instances.
Unless of course he has actually said something interesting in the article...
But since it's not in the summary I'm not bothering to RTFA
Another reason why you have to shard (or keep the numbers of interacting humans down) anyway:
Even if the hardware+software can cope, the people wil
Re: (Score:2)
Perhaps they should ask CCP how they do it.
1000 player PvP battles? WoWers can only dream of that...
Re: (Score:2, Interesting)
The people who are planning big (i.e 500+) battles petition the developers with the predicted location before hand, and they move that region onto more powerful hardware that can handle the load.
Geh! (Score:2)
A cool game (Score:1)
Re: (Score:3, Insightful)
Re: (Score:2, Interesting)
I recall playing a game called Goonzu, and people would stand on event NPCs so that no one else could do the event. Sure, they couldn't do the event because they were preventing others from doing it, but they simply didn't care.
There would probably be ways to stop them, like if they decided to play as 'villains' (read: douches), it would be possible to kill them, treating them as bad guys. So, while everyone plants something an
Re: (Score:2)
Make a localized voting system. If a person is being an ass, someone votes to "rate" then negatively. Enough negative ratings and you forbid them from certain cities. You can have the opposite and positive ratings allow people into certain cities. This would have to be localized to alleviate guild/zone griefing. Just vote that a person is being bad and everyone cooperating (having the option turned on) in a certain radius is prompted (politely, off to the side of the screen or something) to vote. If t
Re: (Score:1)
Re: (Score:2)
Unfortunately, the problem becomes one of motivation. Who is more motivated, the griefer who enjoys the frustration of others, or the frustrated person starting to think that it's easier to log off forever than to fight the griefer? If you've ever seen the online trolls, even here on Slashdot, you know the painful answer to that.
I run an online game called Meridian 59 [meridian59.com]. It embraces a less restricted PvP philosophy with the intention that players can solve their own problems. Yeah, it doesn't quite work
Re: (Score:2)
I've been working on solving this. The key is to have the game world react to griefing in ways that make it futile or counterproductive. Buy up all the coal in a mining town? The income causes the town to grow to increase production. Kill a civilian? You get a reputation as a murderer, the authorities will put a bounty on your head, town guards will attack you on sight, and no merchant will do busine
Re: (Score:1)
Re: (Score:2)
Players request data about their surroundings. Index "new" change data on nearest integer coordinate and when a player requests an update, send them what changed near them.
Split the world into cubic environments that are small enough to download in chunks. (If you played Vanguard, or seen it... Think about 100 times smaller than their chunks.) You'd have hundreds of zone chunks nearby a character. If the world changed in one of these chunks and the player is nearby, send them updated chunk data. You ca
Re: (Score:1)
Re: (Score:1)
Re: (Score:2)
You'd have descriptive generation something like the following. You wouldn't send the models and textures for the area, but you'd have pre-made assets locally. You tell the client to draw two triangles with texture 34987 at positions {(x1, y1, z1), (x2, y2, z2), (x3, y3, z3)} Then just tell the client to draw item 5632 at x/y/z/pitch/yaw/roll. You could do grass, trees, houses... In rare occasions (or maybe the first initial "patch") you can have the client download a new asset, dungeon section, tree, e
Re: (Score:1)
This reminds me of Wurm Online [wurmonline.com], a MMORPG in which you can chop down the trees, build buildings, and make your own roads, hills, mines, fences, etcetera. Practically all of the terrain modifications have been made by the players.