Server

* See also Game_Mechanisms
* See also Client_Asset_Cache
* See also Client
* See also Strategic_Level_Interface
* See also Game_of_this_type_-_Difficulties
* See also Server World
* See also Server_Bubbles
Test_Servers
 "Server" is a term referring to a central computer (or computers) to which the Player's machine (Client) is connected thru the Internet, and which is running the game simulation.
--- --- --- --- ---
The Central Server Farm of Company-run computer Servers which runs the game :
* Network Interface ( user-session Front Ends - linking to other Servers )
* Simulation Processing
* Database
* AI Units (to control NPCs)
* Game Data Caching ( "Dictionary" access sending data to Client machines )
* Login System ( with proper security) 
* Player Community Websites ( Email/Forums/Tool Downloads/Tutorials/Documentation )
* Player_Created_Assets servers system (coordinates Asset creation)
* Web Servers ( to handle the web based interfaces (ie- Mini_Games) tied into the Main Game )
* TEST SERVERS to facilitate testing in the Player Creation process
--- --- --- --- ---
Game Server Architecture - Offloading Processing Loads to Client machines (when appropriate) :
Situations like at your 'Team base', where there generally is not alot of battle going on, and likely there are a large number of objects ( all the accumulated materials/components and tools/equipment which wont be allowed to be crammed into Magical Infinite-capacity 'Chests' or some Fantastical 'Bank' ).  There are many and various (hopefully-amusing) interactive items to be 'played with', OR EVEN BETTER prove to have real utility value (all requiring graphics scripting for all the animations and effects). Those are things which could likely be locally handled optimally by the Client machine's Graphics. 
It would effectively be a local/private Server Node rendering of stuff other Players rarely see, but Players will interact with constantly.   'Bookkeeping' validation is still done thru the Server ( to block any cheats ), but only has to be abstracted for that ( and upline data transiting only when something of significance happens ). That could possibly leaves a majority of the high-detailed simulations/presentation/interactions to run with great savings on the Player's Client computer.
-
Such savings come MOSTLY when there are NO other Players around to see all the fancy/detailed things going on locally. With Multiple-Players present, interacting factors complicate things and add delays, and then coordinating at a central point becomes more effective. NOTE - Much of the player's game will be played in a solo situation, so having an optimization available for that could be worthwhile in this more complicated world environment. 
Elsewhere mentioned : Having Team NPCs AI ( Artificial Intelligence behavior ) run locally on the Client could be a huge chunk of processing power being off-loaded from the Servers/Network.
I've actually seen a rudimentary version of this done on LOTRO Lord Of The Rings Online, where certain Mission/Quest NPCs and Objects only appear to the person running that Quest. They are not visible to other people in their 'Fellowship' ( party group ) who don't share the specific Mission/Quest.   THAT would be something to avoid in this MMORPG -- IF something s there, and another Player is present, all things should be visible.
--- --- ---
Pseudo Cloud Processing of AI.
No, NOT The Thinker ( though that may end up the Nickname for the MMORPGs Server AI System ).
This proposed MMORPG game has all these NPCs running about living their 'lives' semi-realistically ( and the behavior programming eating alot of CPU on the Servers -- meaning MORE Servers $$$$ -- that the company might not like ).
It is possible that most Player Client machines are mostly GPU bound running the Player's '3D' rendering, and would have several free CPU cores ( most have LOTS of available memory these days ).  MOST clients could then help run part of the world simulation (NPCs) within the immediate area of the Player ( and thus reuse the game state feed ALREADY being sent to the Client -- so extra Network Traffic wouldn't be needed for the NPC's situational environment ).
Wimpy computer machines would be excluded, of course, as you don't want to load them down when they have enough trouble running the Basic game Client -- the AI would be Farmed out only if the machine had sufficient extra CPU capacity.
This would of course take second priority to AI for the Players 'team' of NPCs in hazardous areas.
The 'cheat' security aspect probably wouldn't matter as the NPC data being processed wouldn't be tied to any known Player ( no benefit to cheat ) and AI tasks get shuffled quite frequently.  The city NPCs are pretty much nerfed, and can't do much harmful stuff anyway.  Money/trade related behavior might be run *server-only* to avoid any use to hacking this off-loaded AI.   Alot of background/routine activities could be handled, and as soon as anything significant starts taking place then the involved NPCs could be shifted back to the 'safe' server processing
The thing I mentioned elsewhere, which has Players leave their game machines on to 'help' the Servers, could still be done.  It is just that active Clients will be a bigger pool of more reliable/regular processing resources to be counted upon.
--- --- ---
The Worlds of Rapture :
A problem of 'design by committee' is differences of Vision.  But who says that commonly created Assets cannot be recombined/used/applied different ways.  There would be more than one Server 'World', and each one's tone/theme might be significantly different -- Not just varied by what the Players do to shape them, but dedicated to different 'themed' environments to offer wider possibilities to the Players.  Variations of difficulty, emphasis, history, even time period could be made with such a modular system.  Players would have the ability to visit different 'alternate' Worlds ( but not be able to effect/significant change much outside their one 'Home Rapture' Server World ).
Note that if Game Mechanics are adjusted differently in these alternate Server Worlds there may need to be customized BALANCING for each 
I could even see one 'World' being Rapture BEFORE its Fall ( boring as it might be, it would probably be of interest to see, just to contrast to what it became later ).  Other themed Worlds might take place in the BS1 times %27civil war%27 period and the BS2 crazy Sofia Lamb era.
--- --- ---
Overpopulation in Rapture - Player Server Counts :
So what happens when there are MORE people playing the MMORPG than ever were supposed to be IN Rapture  ( 20K - 40K ) ?   The Max population also has to include the NPCs present ( the drudges who do all the boring/tedious stuff ).   Obviously there were more Survivors than was portrayed in the few disturbed/disrupted/wrecked  places we visited in the Solo games - and the total might have remained largely stable during Rapture's Chaos period ( except in Lamb's little commune, where there was a marked decline ),  and potentially even made up for some of the 'civil war' losses.
But will it simply look wrong if every other Player has a business/residence, and the New Rapture area  cluster is choked with more of those than the Original Rapture itself could have had ???   How quickly would the rest of the City be explored and salvaged ( losing the adventuring part of the game ) ?  SO there would NEED TO BE multiple Worlds to have somewhere for the Player multitudes to inhabit without overpopulating the setting.  Usually separate Servers are also needed if there are foreign languages supported ( It might be weird to see Rapture with all the signs and NPCs speech in Spanish/French/German/Russian/Mandarin/etc ...  -- HMMMMMM, may need tourist rights to once-in-a-while go visit those other Servers ).
So what limit on how many customers ( Player Characters ) per Server World is reasonable ?
Many Players are not on at the same time, others may only be ONLINE using the 'tablet'/'smartphone'  interface, which can use alot less Server resources ( and with no Player Avatar walking about ).
Many Players will be off doing the 'interesting' things across the Rapture World map. Many MMORPG game 'Cities' are virtually ghost towns, with little Player interaction anyway (these days). Whereas in the BioShock MMORPG, that game aspect ( Player-Player interaction ) would be much more important/prevalent. 
But when large(r) numbers are on the Servers at the same locations, the Server processing has to be able to handle it.  In this MMORPG, the local situations around each Player has high complexity/activity ( smart NPCs, prop interactions ), so that having them overlap the same areas may not require so much more Server processing as compared to spreading Players out does.
Regional Servers to minimize Internet 'distances' -- it means you can't load level Server resources as  much - by shifting Server Farm machine usage with assignments from worlds of low Player usage to the 'Worlds' with more Players on at that time of day.
---
Ideas :   
With multiple 'Worlds' ( copies of the game simulations ) running simultaneously, they might be coordinated to use SOME of the NPC filler actions/behaviors ( scripting simply to be generated once and then replicated on all the Worlds ) -- particularly if the Players do not directly interact with them (background activities).  But only some high-use locations will have Players present constantly enough to warrant that. It might be unworkable if there is too much varying between local world 'environments' and  behavior flavoring (due to local Player-caused changes and customizations).  (( One of those things that is 'more trouble than it is worth' to implement. ))
The Player Asset Creation process has its own Servers, and some activities also require some significant Server resources, but those are not high-powered instant-response/timely-processing oriented ( except on the small game Testing Servers ).
--- --- ---
Massive Streaming Content Updates (A Server Thing) :
Needed for the constant MMORPG game Terrain and Asset updates ( most of this game World is not static like other MMORPG games ).   IF some Player changes their little part of Rapture, or changes things by their actions ( resulting in that part of the Terrain being modified ) - Those changes need to be transmitted eventually to other Players - definitely by the time they get in proximity to that area.   The previously Saved ( at the [[Client]'s disk ) Terrain and Assets belonging to that area would then need to have all changes updated/corrections made to them before the Player sees them. ( Any Avatar equipment visible likewise might be new and needing to be downloaded. )
Player connection bandwidth can limit Game World data update speed transmission ( even with data maximally compressed ). Connection Speeds are getting better, but still the median capacity for most Players needs to be pretty high.
The Most important data can go first ( can include default/simplified 'Filler Data' to patch in place of eventually-loaded 'Detailed Data' ). Terrain/Objects seen from a distance, where fine levels of data are not visible, can be represented for a while in their simpler form. If the Player never gets any closer, that is sufficient, though it is better to preload the higher/fine detail in case the Player DOES suddenly move close enough to see/interact.   Doing this will always have some measure of compromise.
The MMORPG may need some (clever) delaying tactic for Missions WHEN complex/large unique Assets are known to be soon required ( to have them be preloaded BEFORE the Player reaches the location - when they NEED to be seen by the Player ).  This is what happens in existing games when you enter a new level ( and even then most comes from your disk and not the network ).  Many of this MMORPG's Missions run in Server Bubbles that are largely created/generated on-the-fly, and thus have ALOT of custom content.   A Mission scenario would be loaded in order, with the data for further progress being loaded while the  Player is busy playing an earlier section.
The Players Gaming Machine (PC) can update certain data while the Player is offline ( with a background feed prioritized for places the Player frequently visits - to be immediately ready when they are playing ).
New Assets to be added to their local Disk-based 'Encyclopedia/Dictionary' would be frequent.
Once downloaded, Asset data is saved to disk into a Library File, so that it only needs to be loaded across the network once, or subsequently only the parts of it which have been changed in-game ( Download limits for Internet service are NOT going away - so lets save on unneeded resending of the same data, and  disk space is always getting cheaper ). 
Templates are a major feature which helps with all this.   Faster Disks ( SSD SSD - Solid State Disk drives mass storage) will help faster reloading of data subsets ( Templates and map Objects ) which have already been archived/locally-saved ( which had previously been downloaded ).       
(( Are You Bored To Tears, Yet ?? Describing such things, even this simply, requires volumes of text. ))
--- --- ---
The MMORPG Server Farm :
Virtual Machine (VM) 'farm' for handling the Game Server Processing Load - for certain processing uses. 
Example - NPC AI and for 'Mission' Bubble Sims ( These processing Loads shift, and it can require ALOT more Server processing where Players are located online in the Game World. This includes load balancing across multiple 'World' images - putting the processing power were and when it is needed ).
--- --- ---
Worlds of Rapture (Multiple Worlds on the Servers :
Proper Design - "Measure twice, Cut once".  Proper design of the Server Worlds in this proposed MMORPG is desirable.
Idea - A 'Golden Age' World coexisting, which Players can visit - since Player Asset Creators will be creating the pieces of the expanded City, then why not reuse those assets in their 'like new' state ( before Rapture hit the Fan ) ??  The game's modular/mutation mechanism allows using the same base Assets/Object/NPCs/Terrain, and simply NOT applying the synthetic 'grungification' that results in the Post-Ruin appearance, props and population.  It may take a while for a sufficient mass of the Old City to take shape, as the Asset Creation is to be a continuous incremental activity and new potential sections would be added with time.
The 'Golden Age' effectively would be a continuous Flashback situation ( and it no doubt would be used in many Quest/Mission related Flashback background storyline components ( so why not do it systematically ... ).  Interactions could be as detailed as in the primary game to give the player a true feel of what the City had been.
-
Each Player Account only gets ONE FULL Character in only ONE Server World, and each World is supposed to reflect the choices made by its resident Players.   Varying by how much of the Server World is explored/auto-expanded/developed, and by activities like fixing things up ( City Center appearance ) and by the created businesses/developments.  They may vary quite a bit by the resident Player's preferences and priorities/decisions -- from Server World to Server World.  Likewise, Server Worlds will start operating at different dates and may vary significantly by total progress/development effort achieved to move that New Rapture forward.
Idea - Tourist mode for players to visit other Server Worlds just to see what other people (possibly friends) have built up.  They would not really be able to effect things much during their 'visits' ( assuming they can walk around as an Avatar, a 'Spy-Eye with no physical presence/effect would be even simpler ).   A major element of this game IS to utilize Player's imaginations, which will generate interesting experiences/activity for many other Players to see.  Tourist mode could also serve the purpose to help new players to pick their permanent 'One' Server World for their character to reside in permanently -- to look around thru the existing Server Worlds before their final selection.
-
An interesting aspect of a conglomerated server system can be that the Server's computer machines themselves can be shared, and busy Worlds can get dynamically assigned more generic capacity when needed.  The databases are separate, but the computing resources for active World areas can shift when required.  An important thing when Server Farm resources are a major expense for the MMORPG Company and this type of MMORPG has high resource operating requirements.
-
It comes to mind that a Player's characters/avatars might effectively become NPCs when they Quit ( or could act on automatic when the Player isn't playing for extended periods of time ).  This might have some Players attempt some manipulation by playing and setting up some distinctive in-game entity, pass resources to another player, quit and then startup again with a different character on the same Server ( to impact its contents in some artificial manner ).  This may not be too plausible to do as new Players are not 'handed the keys to the City'.  First, starting from scratch would be enforced.  Players have to earn/work their way forward in influence and possessions ( and especially skills which enable advanced abilities/skills and activities ).  Less developed game characters would not be able to use many resources handed to them by 'quitting players' or 'gold miners'.
.
This MMORPG game relies on Mission 'Instancing' ( isolating the Player in a uniquely copied/operating area ) to eliminate interference from other Players - when such is not desired.  The whole system actually would operates via non-'Baked' ( now dynamic/Built-on-the-Fly ) Terrain/Props/PCs, and with Instanced variation/customization Quests -- ALL via Auto-Generation scripting.
--- --- --- --- ---
.
.