Thanks very much to jmarkiewicz on IRC today for answering a lot of networking questions, but I of course had 20 more as soon as he left which I forgot to ask.
Does anyone know:
Can the server run more than one “level” at a time? Ie. lets say Player A is running around in level 1 and I want him to only communicate movement updates to other players in level 1. At the same time there are 5 players running around in level 2, and I just want to sync their updates to other players in level 2. Do I need two separate server for this?
Sort of related to #1, is there any builtin area of interest culling based on distance within the same level? Ie. Player 2 is > 100 meters away, he doesn’t need any info about Player 2 so don’t bother replicating until he gets closer.
Also I did get some of these questions answered shortly after I posted this, but I will leave the question up in case a dev wants to put something more persistent in place for others who are curious.
I was told that levels are handled by level streaming so yes you can have multiple players in different levels running around on the same server. Also there is a fancy area of interest culling system builtin already which you can tweak based on distance, teams, line of sight, etc.
All in all, color me impressed, these are features I have difficulty finding in most networking frameworks out of the box.