Join the Ashes of Creation MMORPG
(Register or log in to remove advertisements - why ads?)

200 People On Screen?. . :S


Started by Kilivin
Post #42289
Contributor

Likes Given: 308
Likes Received: 178
Faction & Race:
Daggerfall Covenant
Imperial
So, this is something that has worried me. .

That is. . how in the world do you get 200 people on screen in a game? From his explanation, when you have 5 people on screen, everything you do gets sent out to 4 people, then those 4 other people's moves get sent back to you & the other people. Which means, basically, every time you add a person to the game you're exponentially increasing the amount of work on the server.

An easy way to look at this is if 3 people are on, person 1's moves get sent to person 2 & 3, person 2's moves get sent to 1 & 3, and person 3's moves get sent to person 1 & 2. This gets way more extreme for every person you add on.

Now, correct me if I'm wrong, but that would mean if 200 people are on screen, then your 1 action gets sent to 199 people, then 199 people's actions get sent to everyone else.. essentially it's around 40,000 things it has to run through.

I'm sure a lot of you might be saying, PLANETSIDE 2! However, when it comes to an FPS game it's waaaaaaaaaay easier to render stuff out. Also, with bullets you only have to know where the person was aiming and when he fired. . with an MMO there's many more things added to it. Not to mention the animations for an attack. This is the same reason you can't have a game like Chivalry run with 200 people on screen because in a game that requires pinpoint precision on where everyone is at every moment of a person's swing, that's just too many orders to send to the server.

So, while I've heard from many interviews they say they can have 200 people on screen. . how? How do they solve the problem of when you add players on you cause an exponential increase to how much the server has to do. Not to mention this is all one server apparently so there's going to be multiples of this all on one huge server. .

Think of WoW, it has SUPER minimal requirements to play so a LOT of people can play the game. You don't need some great amazing computer to play the game. I always wondered why doesn't GW2 have more than 2 million players? While, sure that is a lot, it isn't the amount WoW had. In fact, not many people realize how simple WoW's graphics was/is. People don't like having to pay thousands of dollars in order to play games when they can spend under $500 for a console.

My only complaint with the idea is that there are 2 major problems with it. 1, it requires a really fast internet, and 2 it will probably require a very powerful computer to do. . which people don't have. Planetside 2 went F2P because NOBODY could run the game. . or not near enough people to support the game. While I'm sure a lot of you guys might have high end computers, there are a LOT of people who don't have that. I was able to run skyrim, but I can't run Planetside 2. Idk, I'm just worried that this game's req specs will be something like a Nvidia 690, 8GB of ram, etc etc. . Which honestly will kill any P2P MMO, which I expect this to be.

On a happy note, however, Planetside 2 is working on having the game work on more computers instead of just the high end ones, which even a lot of game media payed a lot of attention to how intensive the game is. I just wouldn't want this game to die out just because they make it too intensive for people to handle. & when you think about it, Skyrim got I believe 7 million sales, but it also was across 3 platforms, and as intensive of a game that it was. . it didn't have even 200 NPCs on screen at one time.
This post was last modified: February 19th 2013, 06:21 PM by Kilivin
Like this post Reply
Post #42422
Member

Likes Given: 0
Likes Received: 7
You are thinking too serially about what actually happens on a server.

200 people are in an area, so they are in the same 'scene' which the server is tracking.

Each person's moves or other actions are sent to the server from each client. The server gathers these as they come in and updates the scene it keeps. This happens in whatever order messages come in (perhaps even overlapping with multi-core/threads/parallel updating). The main point here is that the server has a single scene graph it updates with all these inputs as they come in, whether from 1, 10 or 200 clients.

Periodically (let's say once a second), the server will send a message to any entity it deems needing updated info obtained from its current scene state. it may skip updating clients who it has calculated have no visible affects yet from the scene (like if all movement and actions have occured out-of-clip range of that entity). That's why when you suddenly get into clip range and everyone starts to draw on your screen, you usually get a lag too since now you are in the update loop. Or when you turn to face 100 people, same thing. These messages are as small as possible encoding position and effects necessary for the client to update its own local copy of the scene correcty to match what the server told it.

Having 200 people in the same scene is not much different than having 200 people in nearby-but-different scenes, other than the obvious cross-calculation and correlation for any shared effects that one entity can perform or cause that affects another entity (general combat, etc).

The real trick is dealing with varying latencies of each person's route to the server. Since one person who lags a lot will miss some window(s) of scene updates so they might appear to either not move or move in a straight line until the server can include an update of their info next round.

So in one sense you are right, if all 200 people are staring at each other and moving or doing something, then all 200 will receive compressed messages that encode quite literally a stream of minimal info that indicates the delta of the other 199 entities in terms of x,y,z position change, spell or effect cast by or on them. But these are reduced to small numeric codes and such so it isn't as big as you might think. The fancy drawing and animation is all part of the local client scene drawing driver; at the level of messages, everything is just small numbers and enumeration values.

For example, if some mage (Entity B) moved a little and started casting spell X, all the message tells all the other clients is:

B:dX,dY,dZ;aX (with timing markers where needed to indicate action begin, end or durations)

and if B hit you (Entity A) with that spell 2 seconds later:

A:hp-200 B:maj-120 (sent to both A and B telling both of you that A lost 200 hp and B spent 120 magicka)

with fancy encodings and such, it isn't a stretch to expect a couple 100 bytes sent to each client to encode a lot of info concerning many, many entities (NPCs included).



Btw, you don't think the proliferation of instancing, structured PvP and phasing is solely for our enjoyment do you? :)

It mainly helps the game engine have well-defined (and plentiful) scene pockets to reduce the burden on a single scene tracker. It keeps the maximum variance of what might be put upon the game engine to more predictable levels than a completely open-world layout. And it lets them load balance by running different instances of whatever and all its related scene(s) on another blade.

One more thing, about WoW ...

WoW's simpler graphic style helps with the client updating its own graphical scene, since the number of poly's, texture complexity and a host of other issues are toned down from a more photo-realistic game.

The messaging issues are more or less similar, but the client-side response being faster makes it seem like the server is faster. And of course it is a cyclical thing, since the client has to finish updating its local scene (which may have to wait on the visuals to render due to how some status queries are asked of the GPU data like resolving LOS), to then send the next update back to the server to start the sequence all over sgain. So if it falls behind, it is sort of like someone who is just plain latency-lagged in being late to update the server.
This post was last modified: February 19th 2013, 06:15 PM by RedGiant
Like this post Reply
Post #42450
Contributor

Likes Given: 308
Likes Received: 178
Faction & Race:
Daggerfall Covenant
Imperial
(February 19th 2013, 05:51 PM)RedGiant Wrote: You are thinking too serially about what actually happens on a server.

200 people are in an area, so they are in the same 'scene' which the server is tracking.

Each person's moves or other actions are sent to the server from each client. The server gathers these as they come in and updates the scene it keeps. This happens in whatever order messages come in (perhaps even overlapping with multi-core/threads/parallel updating). The main point here is that the server has a single scene graph it updates with all these inputs as they come in, whether from 1, 10 or 200 clients.

Periodically (let's say once a second), the server will send a message to any entity it deems needing updated info obtained from its current scene state. it may skip updating clients who it has calculated have no visible affects yet from the scene (like if all movement and actions have occured out-of-clip range of that entity). That's why when you suddenly get into clip range and everyone starts to draw on your screen, you usually get a lag too since now you are in the update loop. Or when you turn to face 100 people, same thing. These messages are as small as possible encoding position and effects necessary for the client to update its own local copy of the scene correcty to match what the server told it.

Having 200 people in the same scene is not much different than having 200 people in nearby-but-different scenes, other than the obvious cross-calculation and correlation for any shared effects that one entity can perform or cause that affects another entity (general combat, etc).

The real trick is dealing with varying latencies of each person's route to the server. Since one person who lags a lot will miss some window(s) of scene updates so they might appear to either not move or move in a straight line until the server can include an update of their info next round.

So in one sense you are right, if all 200 people are staring at each other and moving or doing something, then all 200 will receive compressed messages that encode quite literally a stream of minimal info that indicates the delta of the other 199 entities in terms of x,y,z position change, spell or effect cast by or on them. But these are reduced to small numeric codes and such so it isn't as big as you might think. The fancy drawing and animation is all part of the local client scene drawing driver; at the level of messages, everything is just small numbers and enumeration values.

For example, if some mage (Entity B) moved a little and started casting spell X, all the message tells all the other clients is:

B:dX,dY,dZ;aX (with timing markers where needed to indicate action begin, end or durations)

and if B hit you (Entity A) with that spell 2 seconds later:

A:hp-200 B:maj-120 (sent to both A and B telling both of you that A lost 200 hp and B spent 120 magicka)

with fancy encodings and such, it isn't a stretch to expect a couple 100 bytes sent to each client to encode a lot of info concerning many, many entities (NPCs included).



Btw, you don't think the proliferation of instancing, structured PvP and phasing is solely for our enjoyment do you? :)

It mainly helps the game engine have well-defined (and plentiful) scene pockets to reduce the burden on a single scene tracker. It keeps the maximum variance of what might be put upon the game engine to more predictable levels than a completely open-world layout. And it lets them load balance by running different instances of whatever and all its related scene(s) on another blade.

One more thing, about WoW ...

WoW's simpler graphic style helps with the client updating its own graphical scene, since the number of poly's, texture complexity and a host of other issues are toned down from a more photo-realistic game.

The messaging issues are more or less similar, but the client-side response being faster makes it seem like the server is faster. And of course it is a cyclical thing, since the client has to finish updating its local scene (which may have to wait on the visuals to render due to how some status queries are asked of the GPU data like resolving LOS), to then send the next update back to the server to start the sequence all over sgain. So if it falls behind, it is sort of like someone who is just plain latency-lagged in being late to update the server.

I see, but as you say that latency problems can cause problems, how do they hope to have a everything on 1 server with multiple people across the world connecting to it? They'd have to have every running at very low MS otherwise we'll experience a delay, which will cause a lot of trouble in these 200 people scenarios.

I don't doubt that they will test this to death, but my only fear is that it will require a 8gb RAM & a insanely high memory bandwidth on your GPU other wise nobody will be able to render anything fast enough to play. . A.K.A the problem that Planetside 2 has. :(
This post was last modified: February 19th 2013, 06:34 PM by Kilivin
Like this post Reply
Post #42495
Member

Likes Given: 42
Likes Received: 181
Faction & Race:
Ebonheart Pact (Dunmer)
(February 19th 2013, 06:32 PM)Kilivin Wrote: I see, but as you say that latency problems can cause problems, how do they hope to have a everything on 1 server with multiple people across the world connecting to it? They'd have to have every running at very low MS otherwise we'll experience a delay, which will cause a lot of trouble in these 200 people scenarios.

I don't doubt that they will test this to death, but my only fear is that it will require a 8gb RAM & a insanely high memory bandwidth on your GPU other wise nobody will be able to render anything fast enough to play. . A.K.A the problem that Planetside 2 has. :(

The megaserver isn't one server. It's a cluster of connected servers.
The game is super scalable, so you "can" run it on older computers.
Character models are going to be low-detail, so you can see tons of them onscreen.

Not sure how well it's going to work, but that's what they've been saying.
This post was last modified: February 19th 2013, 07:45 PM by Knightmare


Like this post Reply
The following 1 user likes Knightmare's post:
Apocalypso
Post #42498
Contributor

Likes Given: 308
Likes Received: 178
Faction & Race:
Daggerfall Covenant
Imperial
(February 19th 2013, 07:45 PM)Knightmare Wrote:
(February 19th 2013, 06:32 PM)Kilivin Wrote: I see, but as you say that latency problems can cause problems, how do they hope to have a everything on 1 server with multiple people across the world connecting to it? They'd have to have every running at very low MS otherwise we'll experience a delay, which will cause a lot of trouble in these 200 people scenarios.

I don't doubt that they will test this to death, but my only fear is that it will require a 8gb RAM & a insanely high memory bandwidth on your GPU other wise nobody will be able to render anything fast enough to play. . A.K.A the problem that Planetside 2 has. :(

The megaserver isn't one server. It's a cluster of connected servers.
The game is super scalable, so you "can" run it on older computers.
Character models are going to be low-detail, so you can see tons of them onscreen.

Not sure how well it's going to work, but that's what they've been saying.

Haha, don't get me wrong I don't want to make it seem like I have some 15 year old computer, but it's more the memory to my knowledge that comes into play with more people & things going on on screen, which in order to get more of that you need an entirely new motherboard. . which can cost a fair amount. Idk, I just REALLY hope this game will run on my computer & a lot of other people's computers as well. . which is probably the MAIN reason I want to get into beta, or even if they have a stress test/open beta nearer to release. I just wana know if I can run it before buying it is all.
This post was last modified: February 19th 2013, 07:54 PM by Kilivin
Like this post Reply
Post #42500
Member

Likes Given: 0
Likes Received: 7
A single persisted Campaign isn't even one blade (probably).

They have certain points of modularity in their gameworld design that allow isolation insofar as scene tracking goes. For all we know, even down to the granularity of different phases on the same Campaign/same area might be completely independently handled and on different processing blades.

In fact, this is precisely why they want the megaserver concept, so they don't have to worry over aritificial 'server' borders to a degree that was imposed by other MMOs. it just allows them even more latititude to balance loads amongst a horde of clustered blades.

Campaigns are still persistent 'servers' from a players RvR perspective, but to them its just another data point to pivot on when deciding such things as scene load balancing.

Instead of megaserver, read it like this:

"You belong to a specific server called Campaign Server X while in Cyrodil RvR, but when you return to PvE you belong to a different server grouped by questionairre answers and load considerations rather than always seeing exactly the same persistant crowd like in RvR."

While you play, you are hopping amongst God knows how many blades, RvR or PvE.

(February 19th 2013, 07:51 PM)Kilivin Wrote: Haha, don't get me wrong I don't want to make it seem like I have some 15 year old computer, but it's more the memory to my knowledge that comes into play with more people & things going on on screen, which in order to get more of that you need an entirely new motherboard. . which can cost a fair amount. Idk, I just REALLY hope this game will run on my computer & a lot of other people's computers as well. . which is probably the MAIN reason I want to get into beta, or even if they have a stress test/open beta nearer to release. I just wana know if I can run it before buying it is all.

Ah, if it's the GPU <-> CPU bandwidth and interaction you are worried about, that can be a concern depending on what graphics card you have. And what the final reqs of TESO are for playing in crowds.

But at the level of the client dealing with model skeletons, animations, textures, lighting and physics, and how it draws and updates all that with changes, you are certainly at the mercy of your pipeline's capacity to handle that.

The stress of 200 players moving around in Cyrodil is the same as 200 NPC models moving around in town, from that POV. And any modern card can push an awful lot of polys around very fast, so if they keep the count relatively moderate to low, they can have many more models in scene. Also their artists use of textures to both cover up low poly counts and convey a degree of realism that belies the underlying economy of the models will go a long way to making it look and run much better than you would imagine it could.

The only real data will be when we hear from Beta reports about what rig someone had and how it behaved in RvR scenarios.
This post was last modified: February 19th 2013, 08:09 PM by RedGiant
Like this post Reply
The following 1 user likes RedGiant's post:
Kilivin
Post #42669
Member

Likes Given: 7
Likes Received: 34
Faction & Race:
Ebonheart Pact (Nord)
The OP is underestimating the current power on servers, that's all there is to it.


Vokundein
Legend Gaming Website | Join Us
Kristanna - Head of Recruitment
Like this post Reply
Post #42685
Member

Likes Given: 1
Likes Received: 0
Faction & Race:
Aldmeri Dominion (Altmer)
200 ppl fighting in an epic pvp battle to control towns or areas would be freaking epic. Just saying.
Like this post Reply
Post #44474
Member

Likes Given: 0
Likes Received: 1
Faction & Race:
Daggerfall Covenant (Breton)
I think usually the number of people on screen isn't the problem, but what they do, and especially the particle effects they generate. Now, 200 people running around raining AoE spells would be a problem on a normal MMO server, but the cluster server is new technology and designed to handle this.

Think 200 is actually quite a modest number, as the game hasn't been launched into any kind of extensive beta just yet. They just simply don't know how much their server system can handle.
Like this post Reply
Post #44477
Member

Likes Given: 89
Likes Received: 46
Faction & Race:
Daggerfall Covenant (Redguard)
usually games scale down spell effects and then eventually the player models as the number get up there, higher and higher. 200 People on screen doesn't necessarily mean 200 people and every single action they do on screen.


Anyway, I'm not sure I'd know what 200 people on screen even looked like if I saw it.

[Image: aion0069.jpg]
[Image: aion0015q.jpg]

I can't count this shit! Is this 200?
Give me a good 20v20. That will work for me...
This post was last modified: February 24th 2013, 06:34 AM by decoy
Like this post Reply
Post #44506
Member

Likes Given: 135
Likes Received: 297
Faction & Race:
Aldmeri Dominion (Altmer)
I HOPE ITS CODED BETTER THAN TERA BECAUSE NEXUS IS A THING AND IT SUCKS.


@Velaskae on the NA megaserver.
<Glory Seekers> Looking for capable adventurers and people to chat with.
Like this post Reply
Post #44535
Contributor

Likes Given: 140
Likes Received: 175
(February 24th 2013, 07:46 AM)Velaskae Wrote: I HOPE ITS CODED BETTER THAN TERA BECAUSE NEXUS IS A THING AND IT SUCKS.

yeah I know what you mean @Velaskae.
sad but true.

I'm sure TESO will be better! Winking_grinning


Daggerfall Covenant theme Song, Share with everyone and all will know our greatness!


Like this post Reply
Post #44548
Member

Likes Given: 11
Likes Received: 26
Faction & Race:
Daggerfall Covenant
Not Set
@Decoy Now I remember why I did not play Aion very long...

@Velaskae Tera causes serious issues for players with lower - mid grade systems, even with upper end system the game play is not completely smooth because of server side issues. I completely agree with you, a solid game can be dumpster food because of bad programing / servers.

@LGAllastair I agree with you, but I wonder how the game will run with 200 people spamming AOEs. Server design and functionality aside, some people my have serious issues while others are running around saying this *hit is awesome.
This post was last modified: February 24th 2013, 09:07 AM by Thwaite


"I once fought two days with an arrow through my testicle." --Godfrey of Ibelin
...definitely makes the city guard crying about his knee sound like a punk...

Like this post Reply
Post #45188
Member

Likes Given: 2
Likes Received: 0
Faction & Race:
Ebonheart Pact (Nord)
that example of planetside 2, i have a decent computer which can run multiple games at once, BUT i have to play planetside 2 on low or medium settings or my framerate will drop to like 0.5 fps and i hope that is nnot going to be the case with the elder scrolls online.
Like this post Reply
Post #45550
Member

Likes Given: 51
Likes Received: 19
Faction & Race:
Aldmeri Dominion
Bosmer
About lot of poeple at your screen: Check out Planetside 2.

Ooops! Someone already mentioned PS2 here... So I'll try to add something usefull.

I would say same as Joaquimba - Ps2 is a not-instanced open world game... So many effects are visible from a very far range - making the game quite heavy for old-rigs.

The low requirements of PS2 are very fair and run on lot of old-mid-rigs, but they high specs require a powerfull computer.

On war the fps goes way down. Maybe that's why they (zos) choosed some "quasi-cartoonish" artstyle over some realistic set that would require a lot of post effects (and that's the devil, my friend) and many poly processing (what the actual technology don't focus - there are some gpu that do that but they are other than GeForce's core).

I don't know about the "200" but GW2 has quite good graphics (and a good set of customization) and there are several events ending on boss fighting with many players around.

I understand must be really challenging for ZOS making a MMO for those who play MMO and an ES title for those who play TES. I don't like the idea, because recently CAPCOM apologized for the mistake that lead Resident Evil series to a limbo - where the FPS players are tired of the same and the hardcore oldschool fans (people like me) are tired of that not-survival horror crap) - and that happens when you try to change the gameplay/player/gamestyle focus (thinking that fans of the series will play it for the title and the new ones will play it for the gameplay experience - Final Fantasy after X) you get 15 minutes of fame till the "MMO generic fans" move to another new sensation - but I hope they prove me wrong releasing an awesome game.

I hope they improve the "war map" because what've seen is not good at all - but I'm sure they are working on that.
This post was last modified: February 27th 2013, 04:43 AM by nightniix


“There are three things all wise men fear: the sea in storm, a night with no moon, and the anger of a gentle man.”

Patrick Rothfuss, The Wise Man's Fear
Like this post Reply




Users browsing this thread: 1 Guest(s)
(Register or log in to remove advertisements - why ads?)


This fan site is not affiliated with ZeniMax Media Inc. or any of its subsidiaries. Including, but not limited to, Bethesda Game Studios and ZeniMax Online Studios.
The Elder Scrolls® images © ZeniMax Media Inc. / Forum content © TESOF.com