Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Neuro-Reckoning May Reduce MMOG Time Lag

Zonk posted more than 6 years ago | from the would-probably-help-in-karazahn dept.

Networking 88

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."

cancel ×

88 comments

Sorry! There are no comments related to the filter you selected.

hi (-1)

Anonymous Coward | more than 6 years ago | (#21039857)

Interesting

If I was aJew (-1, Offtopic)

Anonymous Coward | more than 6 years ago | (#21039859)

I would thousads of dark skinned people because I am one of God's chosen people.

I would be a Judeo-Nazi.

Sounds feasible (4, Funny)

KDR_11k (778916) | more than 6 years ago | (#21039967)

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)

Re:Sounds feasible (2, Funny)

machinecraig (657304) | more than 6 years ago | (#21040109)

I can see it now, lag hits - and in the interim you watch astonished as your character kills another rabbit and harvests it's spleen for sale back at town. The next gen of this technology will have your character spamming group channels for heals.

Re:Sounds feasible (1)

Udderdude (257795) | more than 6 years ago | (#21040157)

Hey, they can even use it to detect bots! .. oh wait.

I kinda doubt it (2, Interesting)

Moraelin (679338) | more than 6 years ago | (#21040193)

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.

Not that kind of intelligence (4, Informative)

SerpentMage (13390) | more than 6 years ago | (#21040633)

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...

Duly noted, but still... (1)

Moraelin (679338) | more than 6 years ago | (#21041573)

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.

Re: prediction (3, Informative)

Anonymous Coward | more than 6 years ago | (#21042137)

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

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 [wikipedia.org] , 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."

Mod parent up - Informative (0)

Anonymous Coward | more than 6 years ago | (#21045765)

*NP*

Re:Not that kind of intelligence (1)

ILuvRamen (1026668) | more than 6 years ago | (#21043693)

500 milliseconds?! Hey I've got an idea, if they can't get the data of what they're going to the server in 500 seconds, boot them lol. Predicting actions just makes them look like they're doing something they're not and then you're shooting at the wrong location and laggy ppl get an advantage. If I made a shooter MMOG, I'd constantly boot everyone with a ping time over 200 ms from the game, and that's being generous. Then everyone can download their porn in the background later and turn off their p2p programs and remove all their spyware and we can all live happily ever after. If someone actually has a connection THAT slow with nothing else using their connection then they can all call up their ISP or switch and see if the ISPs get the message and speed up their network.

Re:Not that kind of intelligence (1)

Sigma 7 (266129) | more than 6 years ago | (#21052071)

If I made a shooter MMOG, I'd constantly boot everyone with a ping time over 200 ms from the game, and that's being generous.
If you constantly kick anyone with a ping of 200ms, might as well make it automated. The direct result is your server will auto-kick players whenever there's a higher-than-normal load. Don't say this won't happen - players were known to protest on MMOGs by going in large numbers to a specific place, which causes that area to experience significant latency. A spike of users playing at once may also cause this kind of problem.

Then everyone can download their porn in the background later and turn off their p2p programs and remove all their spyware and we can all live happily ever after.
Configure your server to send out IP packets that Minimize delay, Maximize Reliability or Maximize Throughput. Problem solved, as any complient router/client would take those packets over whatever is downloading in the background (as Minimize Monetary cost). See the Tyoe of Service [networksorcery.com] field for more information concerning this 1-byte field.

If a person has spyware, his system wouldn't be usable enough to connect to your server - and even if he was, it's to a degree where the server isn't going to rewind 2 seconds in order to handle a late instruction.

I know very little about WoW and IANAAIR but... (0)

Anonymous Coward | more than 6 years ago | (#21041273)

IANAAIR (I am not an AI researcher) but...it's a neural-net. So, eventually, after hundreds of hours of watching you play on-line:
  • 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. :o)

Re:I kinda doubt it (0)

Anonymous Coward | more than 6 years ago | (#21041317)

First of all, the term "iterpolate" is wrong in this context. Second of all, the assumption that is being made is that the game will predict where you are going to be and what you are going to be doing minutes later. What we are really discussing is more about where you will be in seconds.

If you wanted the state of the MMO and your computer to exactly match, you would need infinite bandwidth and zero lag. Since that is not feasible, the question becomes how much state information do we share and how often. The more state information, the more time required to transmit it which automatically means more lag. If the neuro-network could predict your next location more accurately and trade neuro-network parameters in less bandwidth than the conventional state information, then you would see an effective improvement. It will not be predicting combat maneuvers or the like.

Having said all of that, I have significant doubts. The neuro-network will probably need to be an extremely large matrix to have a beneficial effect. A smaller matrix would tend to leave the characters in a situation similar to dead reckoning. To be fair, dead reckoning is basically a first order approximation of position. The neural network would be calculating higher-order solutions. It turns out, though, that the first order solution is remarkably accurate in general. I say this while acknowledging the shortcomings in it.

Re:I kinda doubt it (3, Funny)

rickwood (450707) | more than 6 years ago | (#21041713)

If I arrived at, say, Westfall (to give a low level example that anyone who's ever played WoW will have seen)
For the Horde, you insensitive clod!

Re:I kinda doubt it (1)

geekoid (135745) | more than 6 years ago | (#21042113)

First, predictive computing will be THE next big thing.

Second, it will actually be forecasting, not predicting, but nobody will know the difference.

Third, I will rant about the difference for two years, then give it the hell up.
The are some thing that could help:
If you land in westfall, maybe it will go to the closest place you have a quest for, or to the nearest people who have quests you can get.

Your caster will do what it has done most of the time in similar situations.

Because there are, at this time, too many variable to take into account is why it would be forecasting actions and not predicting
them.

What we learn from predictive computing will lay the ground work for the next major step in AI.

Yes and no (2, Interesting)

Moraelin (679338) | more than 6 years ago | (#21043951)

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.

Re:I kinda doubt it (1)

dp_wiz (954921) | more than 6 years ago | (#21045529)

That reminds me about tachyon duel [sheol.org] stuff..

Re:Sounds feasible (2, Funny)

brunascle (994197) | more than 6 years ago | (#21040277)

i can see it now:

"the neural net has figured out that i'm a gold farmer, so all i have to do is unplug my net connection and it continues smacking down elves even while i'm at work!"

I reckon (1, Funny)

Anonymous Coward | more than 6 years ago | (#21041837)

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.

Re:Sounds feasible (1)

B3ryllium (571199) | more than 6 years ago | (#21042795)

I just don't see how this technology helps. At some point, the player models will have to be integrated with what's actually going on in the game, despite having been operating on lag time/neural net behaviours. I can't imagine that being much less jumpy than it is now. This technology could even aggravate the problem, by choosing the wrong path and being even more out of whack than it would be if it had done nothing while waiting for updated movement information.

Re:Sounds feasible (0)

Anonymous Coward | more than 6 years ago | (#21053023)

The trick would be to simulate reponses on the player machine too and send [more] data when deviations occur. I did this in a game with some success but that was just using a physics simulation (it was still modelling against the player though - just not using this extra idea of some sort of control input prediction).

Re:Sounds feasible (0)

Anonymous Coward | more than 6 years ago | (#21044243)

Sounds like you need to start PvPing. Computers and thus NPCs are fucking moronic. Humans on the other hand innovate.

Misleading title, as usual (1)

Endo13 (1000782) | more than 6 years ago | (#21045263)

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.

They need a neural network for what exactly? (3, Funny)

threaded (89367) | more than 6 years ago | (#21039973)

...to predict fast, jerky actions.
Sorry, but that has to be the QOTD, made me ROFL.

Re:They need a neural network for what exactly? (1, Funny)

dintech (998802) | more than 6 years ago | (#21040643)

Sorry, but that has to be the QOTD, made me ROFL.

Good. Be sure to fill out a TPS report.

Neural nets (2, Interesting)

dk90406 (797452) | more than 6 years ago | (#21039979)

Looks interesting, but using Neural nets would require massive amounts of computing power, compared to the more simple dead reckoning. Or at least that was the case when I worked with neural nets 12 years ago - better/faster algorithms might have been made since then.

But then again, the CPU's are so fast today, that it might not be an issue at all.

Re:Neural nets (2, Insightful)

etymxris (121288) | more than 6 years ago | (#21040309)

According to the abstract anyway, "Our proposed neuro-reckoning framework exhibits low computational resource overhead for real-time use..."

Twelve years ago I had a Pentium 60Mhz that could barely play MP3s without skipping. CPU architecture improvement and especially multi-core processing would probably leave plenty of room for short scale neural network movement prediction.

Re:Neural nets (0)

Anonymous Coward | more than 6 years ago | (#21040871)

Well, the article also says it would help people whose computers are having a hard time keeping up with the data from the MMO world, so I doubt they're running multi-core cpus...

because if they were, well, would they really need said neuro-reckoning framework ?

Re:Neural nets (1)

Dahamma (304068) | more than 6 years ago | (#21045477)

I think that was just bad journalism. The vast majority of lag is network loss/latency to the server, not client CPU issues. As you poing out, if the problem is just not enough CPU available, the answer would be LESS prediction, not more :)

Re:Neural nets (1)

NeutronCowboy (896098) | more than 6 years ago | (#21046587)

Neural Nets: require little computational power, but lots of memory. Expert systems (pre-built rule sets): require lots of computational power, but little memory.

Algorithmic requirements for these two classes really haven't changed much since the dark ages of AI (the sixties). What has changed is exactly how they're implemented. They're generally not faster, just different.

Re:Neural nets (1)

pseudochaos (1014063) | more than 6 years ago | (#21067255)

And if you read the article it's not even using a neural network; they're just dropping the term to hype up their approach. A neural net in terms of MMORPs would mean that every node (computer) would be involved in rendering everybody's avatar's position (et al.), but according to their article all they're rendering (as in the case of WoW) is their character's actions. One node processing its own specific data does not a neural network make.

Hacks (0)

Anonymous Coward | more than 6 years ago | (#21040003)

Seems to ignore the possibility of people hacking their "neural reckoner" to get an unfair advantage ingame.

Re:Hacks (1)

yincrash (854885) | more than 6 years ago | (#21040163)

I would imagine that it can't be any easier than hacking the current dead reckoning implementations.

Re:Hacks (1)

klngarthur (1114085) | more than 6 years ago | (#21041025)

how could you possibly get an unfair advantage? all the actual calculations are still done server side. Most mmo clients are nothing more than a glorified chat program, the servers do most of the work.

Re:Hacks (1)

Faylone (880739) | more than 6 years ago | (#21041687)

Actually, no, that's one of the reasons Blizzard uses the Warden software.

Re:Hacks (1)

klngarthur (1114085) | more than 6 years ago | (#21042221)

most: -adjective, superl. of much or many with more as compar. 1. in the greatest quantity, amount, measure, degree, or number: to win the most votes. 2. in the majority of instances: Most operations are successful. 3. greatest, as in size or extent: the most talent. http://dictionary.reference.com/browse/most [reference.com] Blizzard does not make 'most' mmos. Most mmo clients are glorified chat programs. They preform minimal calculations, such as collision detection, but very rarely anything more. The final decision almost always lies with the server, especially in the case of things like players being in range and the actually damage they do to each other. You can even see this in wow. When you run towards someone your client will mark an action as in range, but using the action will return an out of range error. This is because the server waits to synch you and your opponent before allowing the action to proceed, even though the client is telling it otherwise. The primary reason that wow has warden is to detect programs snooping wow's memory space. Wow's major vulnerability is that collision detection is done almost entirely client side. In the case of predicting other player's actions (ie, the point of TFA) you couldn't gain an advantage by hacking the neural network. The player would actually still have to be a valid target(in range, hostile, flagged, etc) according to the server for you to do anything to them

Re:Hacks (0)

Anonymous Coward | more than 6 years ago | (#21050845)

Not sure about the other up-and-coming or current MMOs, but from what I've seen of the private server implementations of WoW, it isn't even a chat program. It is, however, a very pretty MySQL query. Strange...

So the logical next step is... (2, Insightful)

icyslush (1162497) | more than 6 years ago | (#21040059)

... 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...

Fast Jerky Actions? (0)

mmullings (1142559) | more than 6 years ago | (#21040077)

...MMOs? Massive Masturbating Online?

They already use it! (3, Funny)

140Mandak262Jamuna (970587) | more than 6 years ago | (#21040093)

To control the automatic weapons firing at aircraft in south africa!

Re:They already use it! (2, Funny)

Rogerborg (306625) | more than 6 years ago | (#21040731)

Hahahahaha, nine people died! Rate me +1 Funny!

Re:They already use it! (1)

cromar (1103585) | more than 6 years ago | (#21042005)

So, is he/she joking or not?

Uh. (2, Informative)

Wilson_6500 (896824) | more than 6 years ago | (#21040097)

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.

Re:Uh. (0)

Anonymous Coward | more than 6 years ago | (#21040243)

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?

This. I'm still trying to understand what the poster was getting at in the blurb, maybe he had it backwards?

Second Life is anything but erratic. You just walk someplace slowly, stop, and then dance.

Re:Uh. (1)

Rogerborg (306625) | more than 6 years ago | (#21040705)

Indeed; one day soon, Chinese goldfarmers will be freed from the slavish burden of even running their own scripts. Instead, the server will simply predict what speeds hacks they would have run, and award them the gold without the tiresome necessity of actually having to receive packets from them.

Ultimately, our own machines will be able to predict the actions of everyone else, and we will be able to play multiplayer games together completely on our own. The circle will be complete.

Re:Uh. (1)

omfglearntoplay (1163771) | more than 6 years ago | (#21040723)

Yeah, that made pretty much no sense. Shooters are about unpredictability... wtf.

Re:Uh. (1)

Tim C (15259) | more than 6 years ago | (#21040839)

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?

That's exactly what I was thinking. Nice, predictable, straight-line movement is a sure-fire way to get yourself killed in an FPS, if you'll pardon the pun. If the guy you're after doesn't get you, one of his team mates probably will - especially in a game that includes a sniper weapon and open areas of some sort.

Re:Uh. (1)

Hyperspite (980252) | more than 6 years ago | (#21048509)

Wow, you guys are REALLY missing the point.

Suppose I'm in a firefight. I want to serpentine to get under cover. All the sudden, one of my packets goes into the great bit bucket in the sky. What should my character do without any data to the server for that .1 sec? Stop? Move in a straight line? Or more ideally, continue to serpentine to cover. The slight difference in reaction is the difference between *cough* life and death. The point is for the server to correctly predict your motion in the absence of explicit instructions. If it does, the game goes smoothly, if it doesn't, the server has to resynch the game state. If the server can guess correctly based on a few bits of data, then it removes some clog from the tubes. Note that you are still controlling the character because if the server guesses wrong, it has to resynch the gamestate. The server is essentially guessing interpret one instruction fd as fd X4 based on prior knowledge of similar situations when you have no packet data.

What's important is that if you can get an algorithm that guesses 99% of the time what the next step is based on something like the last 5 steps or so, then you have just made available a 1/6 reduction in bandwidth usage as you can have the client only send those 5 steps and skip the 6th, which is HUGE. What remains to be seen is what happens when it guesses wrong, how long does it take to reconstruct the previous events and how much extra bandwidth. If you're still saving bandwidth, and the game stays synched in realtime, it's all good.

Re:Uh. (0)

Anonymous Coward | more than 6 years ago | (#21045675)

I think you forget that there's a good number of PvP oriented mmos out there. Not everyone runs around grinding mobs. There is no lag issue for PvE anyway, it's the pvp when you have 100+ players in the same area fighting each other when the real lag happens.

The issue is calculations need to be done for your bot interacting with all the rest of them. This needs to be done for every player and it's quite a bit of processing and tracking for a server to handle. The amount of relationships being tracked is a square of the number of players.

at 100 players in the same area you need to track 1000 relationships and send data to each player about what the other 99 players are doing in relation to them, at 200 it becomes 4000 relationships being tracked. That's a lot of server work! Predictive analysis will make it worse not better because it's a lot more work to manage.

Example.
I'm in a battle with 99 other players and I fire a weapon. I send this message to the server. The server has to forward this information on to the other 99 players, as well as calculate and send the result (the damage happening to whoever I'm shooting) to everyone. There's my network latency to the server, the latency of the other players etc, so they might not even see me fire for 1-2 seconds after I pull the trigger. Once it reaches a point where the server cpu can't catch up, all this stuff needs to be in the cache to be processed, which causes even more overhead (the cache management) and the server melts down if the activity doesn't drop. It's a slippery slope once the cpu is at 100% utilization.

That's when you see the massive lag we all love to hate. In eve (when I used to play) in a 180 person alliance battle, I've had 2 minutes go by from when I hit the button, til it actually fired in the game. They've gotten better but no matter how good they get, once you hit a threshold, it's massive lag city. It's a fundamental problem that can't easily be solved except with faster CPUs, networking, and systems.

-AC

Quake's Lag (2, Interesting)

garcia (6573) | more than 6 years ago | (#21040099)

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.

Re:Quake's Lag (4, Interesting)

ejito (700826) | more than 6 years ago | (#21040477)

That actually has more to do with latency than number of updates. Latency determines how long until you feel an action from that was updated to the server. If everyone has 200ms ping, then someone shoots you, and that shot is updated to the server 100ms later, then you feel the hit 100ms after that, for a total of 200ms. Within that 200ms, you'd have ample time to hide behind a box or the corner of a wall, but the server would still say you were hit (because 200ms ago you weren't behind that box or wall on your enemies computer). This retroactive update is how modern systems work, and it reduces apparent shooting lag.

Sidenote: This began the misconception that lag time benefited the lagger, or that laggy players lag the whole server, neither of which is true. The quicker your ping time, the faster your shots or actions will register on the server. If a high ping bastard and low ping bastard shoot each other at the same exact moment, the LPB will have his shot register first, and the HPB will die.

Originally, shots and hits were always done actively at the time it reached the server. So if you had 400ms ping, you'd see your gun shoot 400ms after you fired it. This made lag almost unbearable for most high ping players, because if they shot at you, they'd almost always miss, because by the time their shot registered, you would've moved out of the spot you were standing a split second ago.

As for the article, it's dealing solely with player movement on MMORPGS, which is determined by the rate of updates (how many packets get sent out per second). Player action updates are always triggered at the time of action (such as casting a spell), however, movement is an ongoing process. Basically your client updates the server around a dozen times a second with position and velocity information, because of your movement. However, it always assumes you'll stick to that velocity (moving forward? dead reckoning predicts you move forward some more) in between updates. If you deviate from your predicted movement along a velocity, you need to send an update to the server. This new method will predict what movement you'll take, rather than always assuming a straight line from your current movement.

My student ACM account doesn't have subscription to access the article, so I'm not entirely sure, but this is my take on what it does:
For instance, if you're moving forward, and there's something in front of you, the neural net will attempt to determine that you'll probably move in a different direction, and send that as your predicted velocity. If it turns out you don't move that direction, you'll simply have to send another update. If you do move that direction (which statistically you should), then there will be no need for an update, thereby saving bandwidth. These predictions and updates happen at a rate which makes it seem like your player is moving smoothly, when in reality, there's a bunch of micro deviations and stuttering.

Re:Quake's Lag (1)

ultranova (717540) | more than 6 years ago | (#21041679)

These predictions and updates happen at a rate which makes it seem like your player is moving smoothly, when in reality, there's a bunch of micro deviations and stuttering.

In small enough timescales, what looks like smooth movement becomes subject to random deviations and stuttering. That sounds like... quantum physics ! And of course, in a quantum mechanical computer, the player could move at all directions at once, taking all possible routes to his destination.

In the World of Quarkcraft, the uncertainty is on you !

Re:Quake's Lag (1)

Random_Goblin (781985) | more than 6 years ago | (#21043703)

In the World of Quarkcraft, the uncertainty is on you !
I don't understand... do i get the xp from the cat i just killed or not?

Re:Quake's Lag (1)

mOdQuArK! (87332) | more than 6 years ago | (#21048439)

You won't know until you've checked your stats.

Re:Quake's Lag (1)

pseudochaos (1014063) | more than 6 years ago | (#21067339)

and checking your stats changes them, so you can never really know what your stats are. It's best to apply Occam's Razor and just assume you don't have any stats, the cat never existed in the first place, and all of life is just something you dreamed up.

Re:Quake's Lag (1)

TuringTest (533084) | more than 6 years ago | (#21043033)

If a high ping bastard and low ping bastard shoot each other at the same exact moment, the LPB will have his shot register first, and the HPB will die.
So, what you're saying is...

HAN HAD LOW LAG!!!!!!

(Sorry, couldn't resist)

Re:Quake's Lag (1)

illumin8 (148082) | more than 6 years ago | (#21044845)

Sidenote: This began the misconception that lag time benefited the lagger, or that laggy players lag the whole server, neither of which is true. The quicker your ping time, the faster your shots or actions will register on the server. If a high ping bastard and low ping bastard shoot each other at the same exact moment, the LPB will have his shot register first, and the HPB will die.
What they really need to implement in order to have a "fair" online PvP experience is some kind of time synchronization between the clients and servers. If everyone is following the same time code (synchronized via NTP or some similar method), then clients can digitally sign their packets and embed the timestamp in the action. Then, in the scenario you mentioned above, the server receives both "shoot" requests at different times, verifies a valid digital signature (in order to prevent cheaters that would fudge timecodes or alter the packets in transit), and whoever really shot first wins.

There are probably a lot of problems with this scenario (how do you get the clients to sync up and avoid drift in their timecode) but I believe it is the only way to fairly run a PvP type of online game like WoW or Guild Wars.

Re:Quake's Lag (1)

BagMan2 (112243) | more than 6 years ago | (#21049425)

The only way they can accomplish this without having both sides running the neural simulation for all characters is to have the client send a packet saying not only what they are doing right now, but what they expect to do in the future. If the client doesn't actually do those steps, then the client sends out a new packet with what they actually did, along with a the series of steps the nueral algorithm expects them to do from there. The steps you expect to take have to be sent as data since the other side would have to be running the nueral simulation on your character in order to predict those steps.

I don't see how sending the steps I am going to take in advance saves bandwidth over just sending the steps I am doing as I am doing them. Now, if you are willing to have the other side try to maintain a synchronized neural network state, then you could avoid sending future steps and only send data when you are doing something different than predicted. But that isn't what the article is claiming.

Having done a lot of this type of programming in the past, I can tell you that there is usually a lot of lower hanging fruit than this when it comes to network optimization.

Re:Quake's Lag (1)

ToasterMonkey (467067) | more than 6 years ago | (#21042467)

I believe that effect was due to 300+ ms ping times that modem players usually had. The whole jump to cover, then dying a moment later due to lag was annoying, but without client side prediction it's nearly impossible to do something simple like run and jump at the same time with high latencies. It would have been nice if Quake displayed a ghost image or something so you could see your real position.

Could be helpful in other ways (1)

rastilin (752802) | more than 6 years ago | (#21040195)

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.

Re:Could be helpful in other ways (1)

DivineGod (1160361) | more than 6 years ago | (#21040385)

The neural net will only be used to predict the actions of anybody else ingame as a measure to counter any possible lag.

Instead of the given lagging player running straight ahead the neural net might have come to the conclusion that the movement will stop or do something along the way. That way when the lag disappears the player wont "jump" location from the predicted to the actual one.

Re:Could be helpful in other ways (1)

rastilin (752802) | more than 6 years ago | (#21040465)

Yes, but my point is that if you have the technology to predict the actions of other players in a given situation. Is it possible to expand this so that it picks up the slack when you're caught by surprise or not paying attention? In essence, predicting what you would do if you could be bothered to do it.

Re:Could be helpful in other ways (1)

DivineGod (1160361) | more than 6 years ago | (#21041345)

That might be true. But the predictable nature of the algorithm is (although I haven't looked into it) very shortsighted, thus not making any huge decisions for you. It might be used to create bots, but it would require you to write a piece of software to interface with the neural network code, thus gaining access to the results of the computations of your "enemy" and then create input in reaction to those results. Although possible it's not a trivial problem to solve.

Re:Could be helpful in other ways (2, Interesting)

etymxris (121288) | more than 6 years ago | (#21040473)

Well it's a short step between what you propose and things like aim-bots. The advantage I see for this type of research is not improving my play, but improving bot play. I haven't played recent games, but in UT2004 the bots can hit you with a hit-scan weapon from across the map (assuming their difficulty is high enough), but they are tactically stupid. But even besides this, there are very short term predictions of human movement that the bots don't pick up on. An opponent that has been hit a few times will try to maneuver his way to a health pack during a strafe battle, and so often I will blindly fire where the health pack is if the opponent is bunny hopping all over. There are also feints you can perform, such as firing a shock ball that can be subsequently exploded for a massive blast. An opponent seeing such a shock ball will often dodge one way or the other, and by forcing their movement, you can use your second shot not to explode the shock ball, but to hit where they will dodge to. Bots utterly fail at these types of strategies. By using neural networks to make their short term strategies more "human", practicing against bots will be a better play experience and better preparation for online play.

Re:Could be helpful in other ways (1)

caluml (551744) | more than 6 years ago | (#21041591)

I haven't played recent games, ... snip ... hit where they will dodge to. I see I've played you on UT 2004 before. :(

I tried letting it predict Slashdot... (2, Funny)

Soulshift (1044432) | more than 6 years ago | (#21040271)

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!"

all about prediction (1)

sendorm (843943) | more than 6 years ago | (#21040333)

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.

Re:all about prediction (1)

RallyNick (577728) | more than 6 years ago | (#21040621)

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.
Your computer doesn't predict what YOU do because it can see it in real time and has no need at all to know what you're going to do in the future. Your computer, however, has to predict what THE OTHER players do when your server connection is bad and the information about what others do around you is coming too slow or not at all. Thus, not exactly useless.

So in other words... (1)

jellomizer (103300) | more than 6 years ago | (#21040497)

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.

Re:So in other words... (1)

The_reformant (777653) | more than 6 years ago | (#21041409)

From the abstract it looks like they are using neural nets simply as higher level approximations of the curve. Essentially just calculating higher order derivitives of position rather than using neural nets in a classification kind of way which what I would initially think of when it comes to neural nets.

Alternatively... (1)

JK_the_Slacker (1175625) | more than 6 years ago | (#21040673)

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?

Re:Alternatively... (1)

servognome (738846) | more than 6 years ago | (#21044309)

you forgot to mention "increase the speed of light"

Re:Alternatively... (1)

JK_the_Slacker (1175625) | more than 6 years ago | (#21051733)

Already been done. [scienceblog.com] Other suggestions?

looks like this was cribbed from Microsoft (1, Informative)

Anonymous Coward | more than 6 years ago | (#21040699)

See: http://www.xnagamefest.com/talk_abstracts.htm [xnagamefest.com] , 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.

Did I read that right? (0)

Anonymous Coward | more than 6 years ago | (#21040825)

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.

Insolvable problem (1)

edxwelch (600979) | more than 6 years ago | (#21041581)

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

No need (1)

p0tat03 (985078) | more than 6 years ago | (#21041675)

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.

Re:No need (1)

IdeaMan (216340) | more than 6 years ago | (#21049537)

I thought TF2 felt slow, now I know why.
On another note, MMO's battles typically aren't based on player position. You hit a key for engage enemy, and wait for them (or you) to die: dodging will not help you. Whether or not you get hit is based on statistics, not on player position (well, unless you get far enough away to be out of range or behind a door).
That's what was so fun about Diablo 2: It had FPS style dodging accompanied with team based questing/gameplay.
Battles in D2 aren't just about your equipment, they're based on your equipment + how well you play, and there is MUCH more variation in play style when positioning of the player matters.

I think this would help if implemented properly... (1)

Boomer_Zz (548219) | more than 6 years ago | (#21041775)

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.

Re:I think this would help if implemented properly (1)

geekoid (135745) | more than 6 years ago | (#21041965)

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.

Re:I think this would help if implemented properly (1)

Boomer_Zz (548219) | more than 6 years ago | (#21075351)

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).

Lag and all (1)

setrops (101212) | more than 6 years ago | (#21042585)

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

Data corruption (1)

rehtonAesoohC (954490) | more than 6 years ago | (#21043179)

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...

yuo fail It (-1, Flamebait)

Anonymous Coward | more than 6 years ago | (#21044641)

MOM (1)

Joebert (946227) | more than 6 years ago | (#21047327)

Manager
Of
Movement

MOM always knows what you're doing before you even start to think about it.

This is ridiculous (1)

isoteareth (321937) | more than 6 years ago | (#21051381)

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.
Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>