You stated that all parts of the universe will be instanced with max amount of players being inside of an instance and many instances of that same space can be generated at the same time. How will that work so people and their friends always get into the same instance to work as a team?asked by Killarious Maximillion
TL;DRChris Roberts says the plan is to mesh many servers together dynamically so hundreds or more players can share one instance, with friends and tagged contacts prioritised when clients must cull others, though it will take time.
Right so I touched a little bit of the top of this Ten for the Chairman talking about the fact we are working on getting more and more people into an individual instance or really what it's more about is getting more people into an individual game server.So right now if you play in Crusader on 2.2 they'll be twenty four players that could be in that now that's one game server instance. We actually have that, there's eight of those I believe, yep, the thirty two core server we're running on and we have eight game server instances on that one thirty core server each using four cores. Now the real goal would be not to have eight on that, it would be rather to have one game server on that one thirty two core machine. So then if we have eight people now and you add eight times twenty four, you're getting a much larger number of people around me almost at two hundred people at that point and that would be on one server. That's without us doing more and more optimisations, so that's what we're moving towards.Then on the client side, even though the server could maybe deal with more entities because it doesn't have to render, it doesn't have to move all the memory around from it. It just has deal with the background simulation and updating stuff. The clients may not be able to but then the clients would make sure what's around you, what you can see is what it's drawing and updating and being told from by the server. Then on top of that we're planning to have seamless server transitions and basically mesh the servers together. So instead of 'I'm in Stanton System and I'm on one server or i'm on a second server or a third server in Stanton System'.That's not the way Stanton's going to work. It's going to be very dynamic and we'll actually have, say you start with one server and people fly around it can be anywhere in Stanton just like what you can do right now in Crusader, but then as you go beyond the cap say, just for simplicity's sake, say we can run fifty people on a server right?So thirty people, forty people they're all running around Stanton doing their stuff no problem, AI's are doing their stuff. But now a whole new bunch of people come in and we move from thirty people to sixty people. Well ok that's more than we can fit on one server so at that point we will always have one probably server ticking over ready and you keep one as a buffer. So we'll say "Ok we've got more than we can fit on one server". So we migrate players to whichever server is appropriate and we just arbitrarily go "Ok well there's a clump of players over here so this server will take care of them. There's a clump over here and this server will take care of them". Both these servers have full global view of the whole star system, these servers also talk to each other as well as the clients.The server essentially responsible for say simulating the entities that its authoritative of. But it will also tell the other server if the other server needs to know what the entity that this server did with. So basically that's what edge case is. So it's like 'ok i'm updating these people but there's one guy over here that's coming towards you and you've got a guy over here'. So this server's saying "Oh this is where this guy is". So this server knows and has a copy of him in his memory space and vice versa so you can just basically resolve overlaps between server control areas. So that's kind of the aim. The idea is as more and more people come in you spin up more and more servers and they all mesh together so you can ultimately have hundreds if not thousands of people essentially all in the same instance.Then your real limitation is more about the client and what the client can render and see on its side. That's kind of the plan which is a more dynamic and actually a more advanced than I think ultimately better solution than what we talked before which was much more instance on top of each other and you can only ever see thirty other people or fifty other people or whatever it would be. I think that it's going to be good, so that's what we're working towards. There will probably be some cases where there will just be too many people. I can see in a landing area where there's maybe a thousand people hanging around the landing area. We just won't be able to have a thousand people. A hundred people will get together or five hundred say "Let's go to the courtyard". Well on a client you just can't render five hundred people. It just won't happen. So what we'll probably do besides having aggressive LOD's at some point, you just cull out people beyond a certain area. But they'll all be tagged and known there as you move around as client people will come in and out of your visibility basically. Your sphere of visibility. I think it will seem pretty seamless.On top of that getting down to your friends which is one of the key parts of this question. We will know who are your acquaintances, who you've tagged as your person of interest, who you play, who is on your friends list, stuff like that. So if you're making decisions of who you can see, at some point if there's too many people in the client will think "I just can't render this many people I have to choose some entities or people to not see". It would not be the people you as a player have tagged as your friends or that you're interested in. So they would get preference in terms of the algorithm that determines who you see or who is culled out and who isn't culled out. I think it's going to be pretty cool.So you should be able to hang out and work with your friends. I think the only issues we're going to get, which will happen 'cause we have some pretty massive organisation, there is no way we can possibly have one of those massive thousand people in a space battle setups. But I do think we will probably able to get like quite a few hundred people doing that which will be pretty cool. But i'm sure you guys will figure out ways to break it but you know that's what it is. I think it will be a pretty cool experience.I am actually pretty excited by the tech that we're working for this, it's not going to happen overnight, it's going to take a lot of time because we're building something that's really, we're right on the cutting edge of this kind of stuff, there's a few other projects that are doing similar stuff, using the cloud architecture to dynamically scale and process much more on bigger denser worlds that you could do on a single server or single client which is what we're doing, but I think it's the future and I think it's going to be pretty cool.