Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

How will the game handle the huge amount of data for changing world?

UlorikUlorik Member UncommonPosts: 179

Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

 

This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

«1

Comments

  • PhryPhry Member LegendaryPosts: 11,004
    It sounds like their introducing a lot of instancing, based on area population. Not a bad idea, and pretty much in keeping with EQ2 where zones were instanced based on population, or even on a per party basis. image
  • ApraxisApraxis Member UncommonPosts: 1,518
    Originally posted by Phry
    It sounds like their introducing a lot of instancing, based on area population. Not a bad idea, and pretty much in keeping with EQ2 where zones were instanced based on population, or even on a per party basis. image

    Speculation. And nothing the developer acutally said point to that.. even more the contrary. Every contintent is one seamless zone.

    How do they manage it. As Picard pointed partly out. The base terrain is a prodecurally generated with a noise function. With other words they only have to save a noise function for a very large area. Every change of that base terrain can then be safed and is overall a lot less as you would safe all the terrain itself. So basicly you have for every area the noise function and all modifications on top of that. Those modifications are from the game designer himself as they designed the area(the prodecural generated is just the beginning.. and if you look all the terraforming vids you can get a very good picture of that), or from the players afterwards if they add stuff to the world, although this will be limited to areas the player has access to modify. Like the land he owns in Landmark or EQN.

    And a lot of destruction stuff is just temporary and will withit just safed temporary. Another way to safe destruction rather easy and with less extra data, if you don't safe the modification itself, but just the vector of destruction, and the effects of it could be generated out of it.. but that is speculation on my part, it would be just a simple way to safe the data of a effect with almost no data to safe.. but instead more cpu power to calculate the destruction out of a vector.

  • KyllienKyllien Member UncommonPosts: 315

    The overall land will be procedurally generated then "smoothed over" by the SOE artistic team and saved as a now static world (nobody is in the world to change it) then they fill up the world.  All of this will be in the initial download or Game DVD.   You client will already know how to render all of the animations so all the server needs to send to your client is "player_tag_302345 ex ani 54 ^ 55.4 el +10"  or basically the servers tells your client to render the animation.  The animation itself would not be transmitted over the network.  For moveable objects (MOBs, NPCs, other players) a similar thing happens the server sends you the tag for the object and the grid location or only what you can see anyway their vector related to you.

    To sum this up the only thing the server needs to send is location infomation.  Everything else can be rendered by the client.

    Edit: You may have a larger initial download when you connect to the game server after a break while your client updates to the point the server is at.

  • NitthNitth Member UncommonPosts: 3,904


    Originally posted by Ulorik
    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's


    The best way to minimize workload is to separate into smaller "Pieces".
    For example skyrim has its world subdivided into zones, Zones that will stream or pre-load as you adventure towards them.

    Now, we can summarize that eqn will utilize a 'hex grid' because its already a system within the light forge engine. within each hex, data can be handled more efficiently.

    How data throughput between the client and the server works using such a system i do not know.

    edit if i were to guess:

    Each client in "Hex A_35" would get the relevant data to what is happening around them, which would be completely encapsulated from all the events that are happening in "Hex Z_15".

    image
    TSW - AoC - Aion - WOW - EVE - Fallen Earth - Co - Rift - || XNA C# Java Development

  • NadiaNadia Member UncommonPosts: 11,798
    Originally posted by donpopuki
    Here's a good start.

    http://en.m.wikipedia.org/wiki/Procedural_generation

    related blog

    http://procworld.blogspot.com/

  • MendelMendel Member LegendaryPosts: 5,609

    And, in addition to the other fine answers on this thread, let me ask this question.  If a destructive activity occurs in an area that will self-repair, is it even necessary for everyone to see the destruction?  Everyone could see the unspoiled natural terrain (or destruction caused only by grouped players) and it wouldn't really make a difference.  And it would reduce the need to upload that nifty crater you just whacked in the ground with your hammer.

    And even if the damage is broadcast back to the server and distributed, wouldn't that deprive another player from seeing the nifty Hammer-creates-crater animation on their own system?  That could even be considered a form of griefing, if carried to an extreme (and we all know it will).

    But, realistically, I expect damage to be passed around like spell animations in EQ1 or EQ2.  There will be a 'canned' animation played, centered on a character location and targeted at (X,Y,Z) and the client will compute and display the damage.  So, I'd go with the procedurally generated answer.

     

    Logic, my dear, merely enables one to be wrong with great authority.

  • nisraknisrak Member Posts: 70

    I think the difficulties with destructibility are addressed by the voxelfarm engine that they are using:

    http://voxelfarm.com/vfweb/index.html

    From what I have seen about it, using voxels is actually quite efficient and can be more easily transformed than traditional polygons. 

    Most everything else has already been done by previous MMOs (seamless world, high population density, spell animations, etc.).  If you look at WoW, it performed pretty well with rather large populations and included a seamless world from launch in 2004.  Since then, both server and client hardware have improved dramatically, so I don't think performance will be too much of an issue.

  • KyllienKyllien Member UncommonPosts: 315

    The biggest point here is that the images are not transmitted. When you happen upon another character, MOB or NPC your computer already knows how to display those on your screen.  The only thing that needs to be transmitted is the location information, what direction a movable object is facing, and what action is being performed.  Also stuff that is so far away that you can't see it anyway doesn't need to be downloaded until you need it. 

    As far as the crater scenario.  Wouldn't it look weird to see people standing below ground level in the crater while you see a smooth healed surface?

  • TheocritusTheocritus Member LegendaryPosts: 9,751
    I still play EQ1...It still (after 14 years) has tons of issues......If they cant figure out simpler things how are they going to handle more complex things?......People are expecting EQN to be like rocket science while SOE barely struggles to launch one of those premade rocket models you can buy in the store.
  • grimfallgrimfall Member UncommonPosts: 1,153
    Originally posted by Jean-Luc_Picard

    It's most likely procedural too. E.g. a spell impact at a specific point will have a specific effect. The landscape will change on the server, but only the impact is transmitted to the client which will also know what has been destroyed and display it properly.

    Collisions of course will still be handled server side (to avoid client side exploits).

    That's simplified of course, but you get the idea I think.

    I don't think that's accurate, but SOE has already explained it for the most part.

     

    https://www.youtube.com/watch?v=DR3NEsJzP_o

    from Minute 21.

  • grimfallgrimfall Member UncommonPosts: 1,153
    Originally posted by Theocritus
    I still play EQ1...It still (after 14 years) has tons of issues......If they cant figure out simpler things how are they going to handle more complex things?......People are expecting EQN to be like rocket science while SOE barely struggles to launch one of those premade rocket models you can buy in the store.

    Umm... go get yourself the RealmCrafter software.  Make a couple of areas in it, then get Blender and make some of your own models, and place them in there (texture, rig and animate them too, don't worry about AI or anything).

    Now, get Unity, and replicate what you have done inside the RealmCrafter game.  You can use the same assets, just make it look the same.

    Come back to us and tell us how long that took.

    Now, imagine doing that much work about 1000 times more.  That's how much work it would take just to move EQ1 art assets into a new client.  It would be a huge undertaking.

    You have no idea how complex it is to make changes to a system that is approaching 20 years in age. 

    All that aside, the people who are working on EQ1 are not the same staff that works on EQN, so... what was  your point again?

  • SnarlingWolfSnarlingWolf Member Posts: 2,697
    Originally posted by Ulorik

    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

    I personally think people are over thinking marketing hype speech.

     

    I would bet most of it will be state changing, not actually world changing. This means that there will be set states an area can be changed to through actions, not a freedom to change it how you want. So if enough people do this one thing, this part of the area changes to State 2 from State 1. Not you run in and dig a giant hole in the ground somewhere and watch things fall into it.

     

    So a bridge will have two states. Built and destroyed. The game just swaps between the two. The physics are easy enough as the built model has different physics from the destroyed. That part really is not complicated at all.

  • grimfallgrimfall Member UncommonPosts: 1,153
    Originally posted by nisrak

    I think the difficulties with destructibility are addressed by the voxelfarm engine that they are using:

    http://voxelfarm.com/vfweb/index.html

    From what I have seen about it, using voxels is actually quite efficient and can be more easily transformed than traditional polygons. 

    Most everything else has already been done by previous MMOs (seamless world, high population density, spell animations, etc.).  If you look at WoW, it performed pretty well with rather large populations and included a seamless world from launch in 2004.  Since then, both server and client hardware have improved dramatically, so I don't think performance will be too much of an issue.

    Just a point of correction here,  WoW did not have a seamless (ie zoneless world).  It just did a really good job of  hiding the seams. 

  • nisraknisrak Member Posts: 70
    Originally posted by grimfall
    Originally posted by nisrak

    I think the difficulties with destructibility are addressed by the voxelfarm engine that they are using:

    http://voxelfarm.com/vfweb/index.html

    From what I have seen about it, using voxels is actually quite efficient and can be more easily transformed than traditional polygons. 

    Most everything else has already been done by previous MMOs (seamless world, high population density, spell animations, etc.).  If you look at WoW, it performed pretty well with rather large populations and included a seamless world from launch in 2004.  Since then, both server and client hardware have improved dramatically, so I don't think performance will be too much of an issue.

    Just a point of correction here,  WoW did not have a seamless (ie zoneless world).  It just did a really good job of  hiding the seams. 

    Right.  WoW accomplished this by pre-loading adjacent zones.  Regardless, that was nearly 10 years ago...

  • dandurindandurin Member UncommonPosts: 498
    Originally posted by grimfall

    ...

    Just a point of correction here,  WoW did not have a seamless (ie zoneless world).  It just did a really good job of  hiding the seams. 

     

    I disagree with your semantics on the basis of linguistic flexbility.  If WoW isn't seamless, then no game is seamless, making the term "seamless" itself useless.

     

    I would label a world "seamless" if you never get "LOADING PLEASE WAIT" when crossing non-instanced terrain.

     

    Sure, you may not be able to view "Terrain style A" in "Region B" but if the user never has to care, does it really matter?

  • AntariousAntarious Member UncommonPosts: 2,834

    Well this is why they keep talking about all the work they are doing to handle it... (they mention all the data they will be pushing in a few video's.)

     

    The main problem with a game that can change isn't what the server can handle... its the fact that you don't have a static "map" on your (the users) computer anymore... To some extent you can look to a product like Second Life where every "sim" might be hand made.

     

    The result is a lot of bandwidth used on your end because all that changing data has to come to you...  to me in the end that is going to be the biggest "problem" for people with capped bandwidth.   I had a friend up in Canada that was a builder in SL and it used a ton of their monthly allotment due to all the data they had to receive...

  • UtinniUtinni Member EpicPosts: 2,209
    Originally posted by Theocritus
    I still play EQ1...It still (after 14 years) has tons of issues......If they cant figure out simpler things how are they going to handle more complex things?......People are expecting EQN to be like rocket science while SOE barely struggles to launch one of those premade rocket models you can buy in the store.

    ^^^this

    There are Berserker AA's that didn't work day one of GoD launch (feb 2004) that still haven't been fixed, among many many other things. EQ2 launched without loot tables on final raid bosses LOL. 

     

    SOE has a tendency to forget about the past and just keep trying to make content that costs money. That attitude got by in and before 2004, but now we all expect you to have your shit together. The same people are still in charge.

  • MardyMardy Member Posts: 2,213

    How will the game handle it?  Through lag of course :)

     

    Planetside 2 is free to play, go download it, and head to the nearest hot spot.  You'll see how your computer will handle Forge Light engine.  

    EQ1-AC1-DAOC-FFXI-L2-EQ2-WoW-DDO-GW-LoTR-VG-WAR-GW2-ESO

  • UlorikUlorik Member UncommonPosts: 179
    Originally posted by SnarlingWolf
    Originally posted by Ulorik

    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

    I personally think people are over thinking marketing hype speech.

     

    I would bet most of it will be state changing, not actually world changing. This means that there will be set states an area can be changed to through actions, not a freedom to change it how you want. So if enough people do this one thing, this part of the area changes to State 2 from State 1. Not you run in and dig a giant hole in the ground somewhere and watch things fall into it.

     

    So a bridge will have two states. Built and destroyed. The game just swaps between the two. The physics are easy enough as the built model has different physics from the destroyed. That part really is not complicated at all.

    Yes, thanks for all the answers. I think the above answer is hitting the spot. I had understood the Voxel engine really in that way that people would be in-game manipulating Voxels that make up the Landscape...hence my bewilderment about data loads. If you think about different states just to be sent to the client it of course is manageable.

  • drbaltazardrbaltazar Member UncommonPosts: 7,856
    There is a game using this technology (rush if I recall)limitless world almost.)but it aint an mom.the main issue anmmo face is concurrent amount of player on a small square.like me in ff14 I walk around nothing in sight?my ms go from 14 to 20 .I meet people it drop to 40 to 60 ms!This is why I hope ms enabled a version of donnybrook for Xbox one!
  • tom_goretom_gore Member UncommonPosts: 2,001
    Originally posted by SnarlingWolf
    Originally posted by Ulorik

    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

    I personally think people are over thinking marketing hype speech.

     

    I would bet most of it will be state changing, not actually world changing. This means that there will be set states an area can be changed to through actions, not a freedom to change it how you want. So if enough people do this one thing, this part of the area changes to State 2 from State 1. Not you run in and dig a giant hole in the ground somewhere and watch things fall into it.

     

    So a bridge will have two states. Built and destroyed. The game just swaps between the two. The physics are easy enough as the built model has different physics from the destroyed. That part really is not complicated at all.

    They are using a voxel engine, which allows much more detailed destruction and terraforming. Minecraft is a good example of a voxel based game (mostly because everyone knows it).

    Your example is related to traditional 3D engines and not applicable here.

    The biggest problem with voxels is that making moving voxel structures is practically impossible unless the SoE codewizards have figured out some really awesome stuff.

     

  • KyllienKyllien Member UncommonPosts: 315
    Originally posted by tom_gore
    Originally posted by SnarlingWolf
    Originally posted by Ulorik

    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

    I personally think people are over thinking marketing hype speech.

     

    I would bet most of it will be state changing, not actually world changing. This means that there will be set states an area can be changed to through actions, not a freedom to change it how you want. So if enough people do this one thing, this part of the area changes to State 2 from State 1. Not you run in and dig a giant hole in the ground somewhere and watch things fall into it.

     

    So a bridge will have two states. Built and destroyed. The game just swaps between the two. The physics are easy enough as the built model has different physics from the destroyed. That part really is not complicated at all.

    They are using a voxel engine, which allows much more detailed destruction and terraforming. Minecraft is a good example of a voxel based game (mostly because everyone knows it).

    Your example is related to traditional 3D engines and not applicable here.

    The biggest problem with voxels is that making moving voxel structures is practically impossible unless the SoE codewizards have figured out some really awesome stuff.

     

    The magic will be in procedural generation on the client, compression, and pre-stored image data on the client.

    Only the voxels on the surface need to be rendered on the client computer. The interior of the object can be procedurally generated on the client. 

    There will likely be an insane amount of repetition, the more repition the smaller the compressed data is. 

    Since your client will be able to build the exact same thing as any other player; likely your client already has all the data it needs to be able to render the image on the client.  The trick is in figuring out how to put it together.

  • Electro057Electro057 Member UncommonPosts: 683

    With magical theoretical fairies, goofer dust, cyber bunnies, and spriggans! 

    Though I do firmly believe, like everything in reality compared to fairytales...It will disappoint without fail. I mean Second Life allows users to create and update and upload content, meshes, textures and build land....And it's still horribly laggy, demanding of computer and network resources....

    Though this game won't let us import anything new and fresh, it'll already all be on the client, no new textures or meshes that we create from a 3D design program....So in that aspect it just needs to tell the client to arrange resources it already has readily available, which is much less complicated. 

    --Custom Rig: Pyraxis---
    NZXT Phantom 410 Case
    Intel Core i5-4690 Processor - Quad Core, 6MB Smart Cache, 3.5GHz
    Asus Sabertooth Z87 Motherboard
    Asus GeForce GTX 760 Video Card - 2GB GDDR5, PCI-Express 3.0
    Kingston HyperX Fury Blue 16GB

  • tom_goretom_gore Member UncommonPosts: 2,001
    Originally posted by Kyllien
    Originally posted by tom_gore
    Originally posted by SnarlingWolf
    Originally posted by Ulorik

    Tech noob here. Someone might have a very easy to understand answer, but I'm scratching my head at this:

    A changing buildable and desctructible  world sound really exciting, however I was wondering. How will the huge amount of data be handled that you need to get to each player if you want to experience in realtime all these changes around you,  crumbling walls, detroyed bridges, dungeons being dug, houses and villages being erected and destroyed. That on top of your mob movement and fighting, possibly PvP etc, etc.

     

    This sound like a huge step up in data quantity to be moved around compared to "traditional" MMO's

    I personally think people are over thinking marketing hype speech.

     

    I would bet most of it will be state changing, not actually world changing. This means that there will be set states an area can be changed to through actions, not a freedom to change it how you want. So if enough people do this one thing, this part of the area changes to State 2 from State 1. Not you run in and dig a giant hole in the ground somewhere and watch things fall into it.

     

    So a bridge will have two states. Built and destroyed. The game just swaps between the two. The physics are easy enough as the built model has different physics from the destroyed. That part really is not complicated at all.

    They are using a voxel engine, which allows much more detailed destruction and terraforming. Minecraft is a good example of a voxel based game (mostly because everyone knows it).

    Your example is related to traditional 3D engines and not applicable here.

    The biggest problem with voxels is that making moving voxel structures is practically impossible unless the SoE codewizards have figured out some really awesome stuff.

     

    The magic will be in procedural generation on the client, compression, and pre-stored image data on the client.

    Only the voxels on the surface need to be rendered on the client computer. The interior of the object can be procedurally generated on the client. 

    There will likely be an insane amount of repetition, the more repition the smaller the compressed data is. 

    Since your client will be able to build the exact same thing as any other player; likely your client already has all the data it needs to be able to render the image on the client.  The trick is in figuring out how to put it together.

    The compression won't work very well outside the release when people start changing the landscape. Myself I'm guessing they are using some clever recursion on the voxels - in effect having another voxel space inside each "master voxel", etc. where it's needed. In fact, that is probably the only way they can have different size voxels without the memory requirements for mapping the whole world from exploding. Basically, most structures would be comprised of X number of big blocks and then a smaller number of those would contain a sub-voxel space, of which a number would contain a third level of sub-voxels, etc.

    In effect, the more detailed a structure would be, the more memory it would require to load. Now, I'm also guessing their smoothing algorithm does a ton of this procedurally within the client so that the server doesn't need to hold all that data.

    What you would see when entering inside a detailed structure is first a very rough scetch that will then (de)form into the final structure real-time. We will probably be watching a loading screen at that point, though. The trick to stop this happening while in-game is to load the space near the player as far as he can see and then some, and unload it as he moves away from those areas. In effect we would only get loading screens when teleporting from one spot to another, and even then if the system is smart enough it could pre-load the teleport destination as we get close to the portal (or w/e).

    What I'm wondering is that how they plan to implement moving structure parts, such as windmill wings, into the voxel-based structures so that they will look to be part of it and will behave realistically once the voxel structure gets destroyed.

     

Sign In or Register to comment.