Aug 5

Network Architecture 101 – Expert Knowledge Series from Citizen Academy

In this Citizen Academy video, you will learn about the exciting world of Instances, Servers, Physics Grids, and Zones!  This is a rather complex topic, but CA found a way to make it fun and educational as well.  He discusses how an Instance works, the function of the Galaxy Server, and the Generic Instance Manager.  Best of all, this is presented in very simple to understand language!  Then he provides a real world example of how all this fits together.  Finally, CA explains the concept of Physics Grids and Zones, and then discuss Levels of Detail (LOD) for space ships.

About the Author:

A dedicated gamer and high school student, Legorobotdude is currently studying to become an engineer.

1 comment

  1. Oliver Smith

    Your WoW comparison is badly flawed. Firstly, you spoke to how WoW worked 3-5 years ago, and seemingly to the watered-down end-user-friendly/myth of what the architecture is. Which is unfortunate because the end-user-friendly you present of SC is basically a significantly less well developed model of the same architecture (FD: former Blizzard employee). Hint: Is the “www.google.com” server a single http application? A single process? A single machine? Or is it a collection of numerous server processes?

    But that’s just the obvious technical problem. Question: Why did WoW, the 10+ year reigning king of MMO games, wait nearly 8 years to remove sharding? Hardware, naturally, but more importantly: game play. “Single Universe” ultimately have to provide players their space by providing a vast playspace as we did in WWII Online 14 years ago, as Eve does, as Elite Dangerous does.

    If you’re going to provide playspace for N players, you need to have partitioning so that you can have server, network and client tolerance for the most dense encounters. WoW used shards, Eve uses “slow-time” and a large universe, ED just has a big universe.

    Here’s a hint: In both models, you generally need the ability to transfer players between processes, servers, machines and even regions. In WoW you transfer from your shard to instance servers, battlegrounds, arenas, etc. In a partitioned universe you can use that same tech to provide opt-in partitioning.

    But single universe games need *serial* content to provide space for all the places players will ultimately expand out to. Instead of providing 100 well built “zones” you have to build or generate hundreds of thousands of systems for people to expand out into. You replace “I’m on a different shard than my friend” with “I’m 25,000ly from my friend”.

    Another risk of single player universe is entropy. Players are going to expand out to claim their niches, and there is going to be a hefty burden on the developer to produce the right combinations of systems to guide that growth or you will get lots of vacuum. As we’ve seen in Elite Dangerous: Players fly out 30,000 light years and then quit because there’s essentially > 1 player/100 light years, they didn’t build anything to guide the players’ decision making about where they would go and building enough content to spread out around 400,000,000,000 systems mean’t that there’s actually not a lot of content at all to help guide or engage players.

    Consider: The universe of the first and second X:BTF games was hugely more interesting than that in the subsequent games. Why? Because “generic content”.

    Plenty of sharded MMO games have provided easy mechanisms for shard hopping – Conan, LOTRO, etc. Your “server” provides a background to your gameplay experience, but you’re left with the option of joining your buddies or even having your own private instance. Good use of shared memory and a solid RPC and threading model.

Leave a Reply

*