Neuro-Reckoning May Reduce MMOG Time Lag
Hugh Pickens writes "Time lag can cause some very strange behavior in massively multiplayer online games when players' actions onscreen become slow and jerky. New techniques are on the way to reduce the problem of lag time in MMOGs when a player's computer can't keep up with changes in a shared online world. Games like Quake use a technique called dead reckoning and while traditional dead-reckoning systems that assume that a game character will maintain the velocity and direction that it has at the moment an update is sent to all other participating computers; dead reckoning works best for movement and shooting and less well for erratic actions such as interacting with objects or with other players. Read the abstract of new technique called 'neuro-reckoning' that may improve the predictive process by installing a neural network in each player's computer to predict fast, jerky actions."
Since MMOs involve lots of repetitive actions that can easily be automated it shouldn't be too hard to predict what the player will do. OTOH this is kind of an admission that MMOs are so dumb that players are pretty predictable. I guess that's why I'm not playing an MMO currently...
(cue the Eve spam)
Justice is the sheep getting arrested while an impartial judge declares the vote void.
...to predict fast, jerky actions. Sorry, but that has to be the QOTD, made me ROFL.threadeds blog
But then again, the CPU's are so fast today, that it might not be an issue at all.
Seems to ignore the possibility of people hacking their "neural reckoner" to get an unfair advantage ingame.
... if the Neural net can predict my next move, just let it make it for me. Send my bot out to farm Karazhan for me while I watch the hockey game. Oh wait...
...MMOs? Massive Masturbating Online?
I remember when MOD was an audio format, and DOS wasn't a network attack....
To control the automatic weapons firing at aircraft in south africa!
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
OK, so shooting games, where you traditionally need to move as erratically and unpredictably as possible to stay alive and kill effectively, are well predicted by dead reckoning; MMOs, where you generally move directly from one beast to the next waiting for your skills to kick in, are not?
If I had to guess, the real problem is probably that commercial, hugely-trafficked MMO servers don't want to send as much data to each client as some guy's dedicated server in his basement that's only visited by thirty-two clients at a time. This probably results in the player and server updating each other less frequently.
Still, since in the MMO there are usually pretty predictable things the player will be going to next (the item on the ground, the nearby mob, the NPC in his path), maybe this will work well after all.
Would it be akin to Quake's lag or to the later versions of Quake? I never cared for how lag was "felt" following Quake I. QW through Q3 (I haven't played any others) all would make you feel like you weren't lagged at all but then suddenly you would show up dead as you caught up to real time. At least with Quake I you could "feel" the lag and make the proper adjustments.
I kinda doubt that it works that well.
For starters, let's look at the plain old interpolation. I see it kicking in all the time in MMOs (e.g., WoW), and players seem to run ahead for half a mile until the game gives up and disconnects them. Or spend the next 5 minutes running in place against a fence.
Let's take just that one simple action: running. How do you know where I'm going to interpolate it right past a second or two. If I arrived at, say, Westfall (to give a low level example that anyone who's ever played WoW will have seen), coming from the north. Will I:
1. keep running towards the Deadmines?
2. turn left into Duskwood? (It is right west of Sven and the cemetery, after all.)
3. turn right and go into the town? And then what? Do I go there to take the gryphon to somewhere else? Or to the inn, so I can set my hearthstone and/or log off in an inn? Go up the tower to talk to the ancestor cow for that event? Or what?
4. Stop and use the vendors on the east side of the road? (It is a convenient spot to repair my equipment, stock up on arrows and/or do some cooking, after all.)
Really, it's not even a large town. In fact, it can't even be called a village, since it has no actual houses. It's just an inn, a tower, a lumber mill, and a gryphon master. Even outpost sounds too much for that thing. But the possibilities already branch considerably.
Now think PvP combat. It tends to be fast and furious, compared to PvE, and there'll be much jumping around and quick reflexes needed.
How does your client predict when my Warlock or Priest will fire off their fear spell? What if my Priest just shields and bandages himself instead at that moment? If your client guessed wrong, you'll have wasted some slow-recharging skill (e.g., Will Of The Forsaken) for nothing, and get kicked right in the nuts when it wears off. In fact, you'll be worse off if your client guesses "you're feared now" at the wrong spot, than if it didn't interpolate anything whatsoever.
Or did my druid use a bleed-effect DOT finishing move, _or_ maybe aimed for the lower damage instant-damage one? The answer there determines, for example, if your dwarf should use its stone form or not. If you guessed wrong or too early, I'm going to use the other one. Or maybe I'll shift back to humanoid and kite you to death.
And that's just scratching the tip of the iceberg.
Now don't get me wrong, I'm not saying that they're uber-complex ultra-intellectual games. At the bottom of it, there _is_ some repetition involved. At a very over-simplified level, you attack, you defend, you jump around if you're in PvP, and occasionally hit your shield or healing (potion), or whatever you have. But that's only the undetailed big picture. The order and exact details will vary a _lot_. Now maybe not enough to make the game interesting to you, if you weren't interested in the game in the first place. But it might just be too many possibilities to predict right.
A polar bear is a cartesian bear after a coordinate transform.
If they're adding a neural network to help them predict actions. If it works, couldn't the system be used to enhance reflexes on the player's side?
Everyone's had an incident when they said "Every time X happens, I want to instantly do y.". Or something more complicated like moving in such a way as to not get flanked. Speeding up repetitive trading or moving activities and so on. Of course, this level of automation might seem too much like giving an unfair advantage. But personally I'd really love a game that helps me play better.
How do you kill that which has no life?
The results: "First post!" "Step 1: Teach neural network to farm gold. Step 2: ??? Step 3: Profit!" "In Soviet Russia, you predict the actions of neural networks!" "I for one welcome our neural network overlords" "But does it run Linux?" "Imagine a Beowulf cluster of these!"
node-def: a tactical hacking sim. Now in open beta.
If the computer is going to predict my next move, I might as well let the computer play the game. If the algorithm is using a neural network, the computer will become just like me as time passes. The main difference between a good player and a normal one, is the difference from the nominal behaviour. Thus making this method of uterly useless.
If you are lagging the server will switch you to a NPC until you packets get in. It is funny how academics like making things seems more complex then they actually are. Verses other way which generally keep you on your current path, which is easier to program.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
The article is not talking about that kind of intelligence. They are talking about split second intelligence. They are talking about being about 500 msec of packets being the main scene...
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
They could put some work into the technology used to actually CONNECT to said servers. Increased compression, lowering latency all around, smarter load-balancing, making ISPs keep up with the times... Why not actually fix something instead of just putting a band-aid on it?
I'm waiting for a "-1 somepeoplejustshouldn'tgetmodprivileges" meta-moderation.
See: http://www.xnagamefest.com/talk_abstracts.htm, and scroll down to the abstract for Donnybrook.
Details are a bit skimpy in the abstract, but if you do a bit of searching, you can find the presentation material. At the conference they showed a demo with 32 bots crammed in a pretty small map in Quake. On one screen they were running the original version, where it was really jerky with that many bots. On the other screen they were running their modified version, where the motion was perfect.
Please oh please let this be prior art to Microsoft.
So, let me get this straight: there is a problem with slow computing systems in these MMORPG-things. Like "...when a player's computer can't keep up with changes in a shared online world..."
And the proposed solution here is to ADD MORE CODE TO THE CLIENT SYSTEM?
ie: "...improve the predictive process by installing a neural network in each player's computer..."
Maybe I missed something here, but this looks like a solution that searched for a problem, and found one, but maybe not the right one yet.
- setting your hearthstone
- cooking
- killing rabbits
- levelling your Priest to be able to cast Will of the Forsaken
It will gain some basic understanding of your general on-line gaming habits and decide that the best course of action that it could take on your behalf would be to "do a Leroy Jenkins" repeatedly, send threatening, abusive e-mails to admins, Blizzard employees and their family members and PM female players with lewd references to elven sexual practices, in an attempt to get you banned so you can experience the real world.Weren't we just reading about the beta test yesterday? Robotic Cannon Loses Control, Kills 9
Duly noted, but still... if in those 500 ms it guessed that my Priest hit his psychic scream (i.e., fear) spell and he didn't, you're at a disadvantage. In fact, you're at a bigger disadvantage than if I _had_ used that spell and you wouldn't know it for half a second. In the latter scenariom you'd run around for half a second without knowing it, and _then_ hit your Will Of The Forsaken. My next spell wouldn't even be available in those 500ms, so you wouldn't even be hurt yet by that delay. But hit your fear protection prematurely because of a mis-guess, and you've put yourself at somewhat of a disadvantage when it wears off.
Well, I suppose I can concede that it might work for the daily PvE grind. It's not like those critters do much unexpected stuff, so interpolating 500ms is probably feasible. I just don't see a good PvP player as being that predictable, though, and the consequences of taking a decision based on a bad guess can be more dire.
A polar bear is a cartesian bear after a coordinate transform.
You know, the only real solution of the problem is to make your network latency 100ms. No other solution will work. Maybe the neural prediction thing works better than dead reckoning in some situtions, but it never will be anywhere near as good as playing on a fast network
Just do what Valve did with HL2. Remove prediction altogether by time-shifting all clients back by 2-3 server updates. That way everything the client renders has already happened, and there is no possibility of making a mistake.
Games like DAoC and Planet Side can already support hundreds (100 - 300) people at the same time with sides trying to fight each other. (Limit is no longer video cards)
Other MMOs have failed miserably and have added something called "instancing" where they even instance peaceful zones. These type of crappy games with crappy programmers will not benefit from anything.
Pure first person shooters (Battlefield, quake) tend to limit it to 64 or 32, because they want to be more precise and send more detailed packets to show what the character is doing. They also register hits differently, as there are primarily ranged attacks, instead of hand to hand (Planetside followed the MMO model here and no the FPS model, though it could be classified as an FPS no problem).
In short, I believe an MMO that already has good networking support (i.e. smart networking coders) can utilize this and gain benefit.
this could help keep some of the 'tubes from clogging. Sadly, this will hurt sales of my Intarweb Plunger(tm). See, those Net Neutrality folks were wrong! Games like World of Warskills and the eventual WarBallpeen Online will innovate and improve anything to keep the ISP's from making them charge an extra $.25 per month.
The benefit if instances is that different groups can be going after the same objective at the same time. It eliminates camping for high level gear. I wouldn't play a game that didn't have control to prevent that kind of camping.
In that same game I could also participate in a 300+ world event.
"because they want to be more precise and send more detailed packets to show what the character is doing.
ah, your an idiot. For confirmation, I looked at some of your other posts.
The Kruger Dunning explains most post on
It won't. (Aside: But if it ever does, then it would mean the server decided you should have done it, and it did it for you without your consent.)
These predictive models are for data compression, where the cost of encoding a given bit is based on the log of the probability of that bit occurring. For example, if it's 50:50, then it costs you 1 bit either way. However, if you can guess with 87.5% certainty that event X will happen, you can get away with transmitting only ~0.2 bits, but if you're wrong it costs you 3 bits. In this example, you only have to transmit 0.875 * ~0.193 + 0.125 * 3 = ~0.544 bits per bit on average (that's >45% reduction in cost).
If the server knows your enemy's client guessed right (or close enough to it), then it may not need to send the enemy an update for your character at all. But if your behavior over this 1/2 second is radically different from your past play, then it may need to assign your character more bandwidth on the next packet (at the cost of imprecision on something else). Consider the "model is right" payload of "1", vs the "model is wrong" payload of "0; elf31337 moved to 21679.8943, 7843.8934 and executed maneuver 216, for great justice."
The problem with MMO's are they often try and predict what the player is going to be doing. You often find yourself somewhere you are not expecting. In World of Warcraft this can bee seen by other players as rubber banding, you character moves forward and backwards erratically or in Dark Age of Camelot where players produce artificial lag which causes the same effect but the game allows you to do actions while you are lagged such as casting, changing directions and others.
All predictions in MMO's save on bandwidth needed to actually play the game at the expense of player enjoyment.
The only question left for the consumer is this behavior acceptable to you?
Now where this new "neural network in each player's computer to predict fast, jerky actions." Is interesting but flawed. You can't have this stuff on the client computer. If you have never played a MMO, it my regret to inform you that, everything client side can be and will be hacked and taken to pieces to gain any advantage against fellow players.
QQ
I wonder how smart this "neural network" would actually be.
For instance, say I'm playing a game of (Popular FPS A) with a bunch of people online, and I understand how the neural network works. Couldn't I just repeatedly move left to right in a jerky fasion for a bit, and then run straight toward my enemy? If they lag, the neural network computations will show me as moving left to right, where I'm actually just running straight...
Yes and no.
First of all, if you talk about something that actively takes control of my character for me, to do all that stuff, you're talking a bot. Which is against the TOS on any MMO, and can get you banned on the spot. I very much doubt that anyone will implement one right in the client, as some next great feature.
Second, those exist already. See, WoW Glider.
(Note that I'm not actually advertising using it, and if anyone gets banned using it, I'll cheer for the Blizzard employee that banned them. Just using it as an example that they exist.)
Third, well, if you want your character to go level himself up without your help, you probably couldn't care less how. So there is no particular reason to want it to find quests, group with people (or other bots) in a meaningful way, and solve clever puzzles (though there are only a couple of quests on WoW which involve any kind of puzzle solving anyway). If it goes and stabs rabbits for 8 hours, who cares.
Quests and stories are for humans who actually want to be told a story. They don't do jack squat for either the bot, or the kind of human who only cares about XP and levels enough to use a bot. That kind of human will just want his bot to go grind whatever NPCs offer the quickest rewards. A bot that travels between Gadgetzan and Darnassus repeatedly to follow a FedEx quest line for a for a few thousand XP a pop is all around bad bang-per-buck, or rather xp-per-hour. Grinding whatever NPCs are around your own level is much better xp-per-hour. It only makes sense to do those if you're the kind that gets bored of just stabbing rabbits for hours, and bots don't get bored easily anyway.
So automatizing my character to go pick and hand in quests while I'm AFK sounds... well, I'm sorry if it sounds offensive, but like a poorly thought out idea. If I'm the kind of guy who actually gives a damn about quests and stories, why would I want a bot to go do that for me? It would be a bit like using a robot to watch the next Star Wars for me. Either I still care enough about it to watch it personally, or I might as well not bother at all. At any rate, that's not the kind of bot that people use.
Fifth, for the kinds of bots actually in use, building a clever neural network just to make an even better bot seems a bit... overkill. On SWG people were making that kind of bots even with the game's own script language, which wasn't even that great a script language in the first place. I'm saying that just to illustrate how little is really needed to have a working bot. You just need a loop and a few ifs, really.
Sixth, I was under the impression that they're talking about interpolating/predicting what other characters do, rather than being a bot for one's own character. Hence, the answer was about that.
A polar bear is a cartesian bear after a coordinate transform.
Please, RTFA people. It's not about MMOs. The article talks about how it's going to affect FPSs. MMOs are already a lot more forgiving with lag; the 150-500MS lag that this new stuff is supposed to help with is not generally that big a deal in an MMO. For some anecdotal evidence, my latency in WoW is usually about 100-200MS higher than any online FPS, and still perfectly playable.
There is no -1 Disagree mod. Slashdot.org/faq defines mod options. USE IT.
*NP*
Manager
Of
Movement
MOM always knows what you're doing before you even start to think about it.
Wanna fight ? Bend over, stick your head up your ass, and fight for air.
The only time such reckoning really matters is in PVP, and most PVP players who know what they're doing jitter about like caffeine addled monkeys. Either the latency is low enough to get an accurate postion, or it's not and my largely random hammering of WASD as I try to move in and out of you viewing (casting, swing, etc.) arc isn't going to provide that much predictive information.
That surely wasn't mean.
This is what I said:
"Other MMOs have failed miserably and have added something called "instancing" where they even instance peaceful zones."
You said:
"The benefit if instances is that different groups can be going after the same objective at the same time. It eliminates camping for high level gear."
I'm guessing that's a non peaceful zone? Where you're trying to kill something?
Don't take my word for it, sniff the packets, you'll see a distinct difference between MMOs that support 300 people and first person shooters. FPS's send more detailed information (read : more).